@charset "UTF-8";
@media screen and (min-width:769px) {

  /* ========================================================
  ベース設定
  =========================================================*/
  :root {
    --Contents_size: 1160px;
  }

  .forPC {
    display: block;
  }

  .forPC-inline {
    display: inline-block;
  }

  .forSP {
    display: none;
  }

  a {
    transition: all ease 0.3s;
  }

  a:hover {
    opacity: 0.6;
  }

  s {
    font-size: 16px;
  }

  /* 広告 */
  .adTxt {
    text-align: right;
    max-width: 1160px;
    /* 横幅 LPに合わせて調整 */
    padding: 0;
    margin: 8px auto;
  }

  .adTxt span {
    font-size: 18px;
    font-weight: bold;
    border: 1px solid var(--Text);
    /* 枠色 変数名がTextでない場合は変更 */
    padding: 2px 14px;
  }

  /* ========================================================
  共通
  =========================================================*/
  .pankuz ul a {
    padding-right: 5px;
  }

  /* CTAボタン */
  .cta-btn {
    padding: 12px 30px;
    font-size: 14px;
    line-height: calc(22.5 / 15);
  }

  .cta-btn::after {
    right: 28px;
    width: 24px;
    height: 24px;
  }

  /* ========================================================
  トップページ
  =========================================================*/
  .header__inner,
  .topSection__inner {
    width: var(--Contents_size);
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
  }

  .topSection__ttl {
    margin: 0 auto;
  }

  .header__top {
    padding-block: 8px;
  }

  .header__logo {
    width: 194px;
    height: 42px;
  }

  .header__top .adTxt {
    align-self: flex-end;
    padding: 0 5px 5px 0;
  }

  .header__inner img {
    display: block;
    margin: 0 auto;
    width: 100%;
    height: auto;
  }

  /* ========================================================
  キャンペーン
  =========================================================*/

  .topCampaign {
    margin-top: 32px;
  }

  .topCampaign__inner {
    padding: 0;
  }

  .topCampaign__date-text {
    font-size: 14px;
    line-height: calc(24 / 14);
  }

  .topCampaign__ttl p {
    font-size: 26px;
  }

  .topCampaign__ttl div {
    background: linear-gradient(180deg, #fff 0%, #fff 6%, #2e265b 6%, #2e265b 100%);
  }

  .topCampaign__ttl img {
    width: 750px;
  }

  .topCampaign__closing {
    margin-top: 0;
    padding: 14px 16px;
    font-size: 20px;
    line-height: calc(20 / 20);
  }

  .topCampaign__closing span {
    /* font-size: 16px; */
    line-height: calc(20 / 16);
  }

  .topCampaign__closing--img img {
    height: 146px;
    object-fit: cover;
  }

  .topCampaign__main {
    max-width: 900px;
    width: 100%;
    margin: auto;
    padding: 30px;
  }

  .topCampaign__cards {
    gap: 15px;
  }

  .topCampaign-card {
    padding: 20px;
  }

  .topCampaign-card__img img {
    aspect-ratio: 59 / 40;
  }

  .topCampaign-card__name {
    font-size: 16px;
    line-height: calc(25 / 16);
  }

  .topCampaign-card__price {
    font-size: 20px;
    line-height: calc(20 / 20);
  }

  .topCampaign-card__price-after {
    margin-top: 4px;
  }

  .topCampaign__note {
    margin-top: 20px;
    font-size: 12px;
    line-height: calc(19 / 12);
  }

  .topCampaign-coupon {
    margin-top: 20px;
  }

  .topCampaign-coupon__inner {
    max-width: 700px;
  }

  .topCampaign-coupon__txt {
    font-size: 18px;
  }

  .topCampaign-coupon__code {
    margin: auto;
    max-width: 282px;
    padding: 5px 10px;
    margin-top: 4px;
    font-size: 16px;
    line-height: calc(20 / 16);
  }

  .topCampaign-coupon__link {
    margin-top: 10px;
  }

  .topCampaign-coupon__link img {
    aspect-ratio: 400 / 167;
  }

  /* ========================================================
  SEC01
  =========================================================*/
  .topSection01 {
    margin-top: 30px;
  }

  .topSection01__table-scroll {
    overflow-x: auto;
  }

  .topSection01__table {
    margin: 20px auto;
    border: 1px solid var(--Main);
    background-color: #fff;
    width: 1022px;
    border-collapse: collapse;
  }

  .sticky_th {
    width: 15.75757576%;
    position: static;
    border-left: 1px solid var(--Main);
    background-color: #fff;
  }

  .topSection01__box-copy {
    width: 512px;
    border-radius: 4px;
    background-color: var(--Main);
    color: #fff;
    line-height: 58px;
    padding: 0 30px;
    box-sizing: border-box;
    margin: 30px auto;
    position: relative;
  }

  .topSection01__box-copy li {
    display: inline-block;
    margin-right: 12px;
  }

  .topSection01__box-mess {
    display: block;
    width: 300px;
    margin: 30px auto 0;
    color: var(--Main);
    text-align: center;
  }

  .topSection01__box-bnr {
    width: 800px;
    margin: 10px auto 0;
  }

  .topSection01__box-bnr-ttl {
    top: 4rem;
    right: 8rem;
    width: fit-content;
    font-size: 2rem;
    line-height: calc(26 / 20);
  }

  .topSection01__box-bnr-max {
    top: 11.5rem;
    right: 7rem;
    font-size: 2rem;
  }

  .topSection01__box-bnr-sale {
    top: 14.5rem;
    right: 6rem;
  }

  .topSection01__box-bnr-num {
    font-size: 100px;
    line-height: 1;
  }

  .topSection01__box-bnr-num span {
    font-size: 6rem;
  }

  .topSection01__box-bnr-off {
    font-size: 6rem;
  }

  .topSection01__box-btn {
    margin: 20px auto 0px;
    border-radius: 50px;
    width: 400px;
    padding: 17px 60px;
  }

  .topSection01__box-btn::after {
    right: 28px;
    width: 31px;
    height: 31px;
  }

  .topSection01__table thead th:nth-of-type(1) {
    width: 180px;
  }

  .topSection01__table thead td:nth-of-type(1) {
    width: 280px;
  }

  .topSection01__table thead td:nth-of-type(2) {
    width: 280px;
  }

  .topSection01__table thead td:nth-of-type(3) {
    width: 280px;
  }

  .topSection01__table tbody td s {
    font-size: 12px;
  }

  .topSection01__table tbody td span {
    font-size: 16px;
  }

  .topSection01__table-link span {
    font-size: 16px;
  }

  .topSection01__table-btn {
    border-radius: 50px;
    padding: 12px;
  }

  .topSection01__table-btn::after {
    right: 23px;
    width: 24px;
    height: 24px;
  }

  /* ========================================================
  SEC02
  =========================================================*/
  .topSection02__scroll {
    overflow-x: auto;
    margin-left: 0px;
  }

  .topSection02__list {
    display: flex;
    gap: 30px;
    overflow-x: auto;
    margin: 20px auto 30px;
    justify-content: center;
  }

  /* ========================================================
  SEC03 form
  =========================================================*/

  .topSection03 .topSection__inner {
    background-color: var(--Sub);
    padding: 0 0 30px;
  }

  .refineSearch__reset {
    width: 80px;
    line-height: 50px;
    border: 1px solid var(--Main);
    border-bottom: 3px solid var(--Main);
    background-color: #fff;
    color: #333;
    text-align: center;
    font-size: 1.6rem;
    border-radius: 4px;
    font-weight: bold;
  }

  .refineSearch__noSubmit,
  .refineSearch__submit {
    width: 300px;
    position: absolute;
    left: 50%;
    margin-left: -150px;
    color: #fff;
    text-align: center;
    font-size: 1.6rem;
    font-weight: bold;
  }

  .refineSearch__reset:hover,
  .refineSearch__submit:hover {
    cursor: pointer;
    opacity: 0.8;
  }

  .refineSearch__noSubmit {
    opacity: 0.4;
  }

  .refineSearch__count {
    width: 50px;
    line-height: 53px;
    color: #333;
    text-align: center;
    font-size: 1.6rem;
    font-weight: normal;
    display: inline-block;
  }


  .nayami__list {}

  .nayami__list .refineSearch__input {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .price__list {}

  .price__list .refineSearch__input {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .kodawari__list {}

  .kodawari__list .refineSearch__input {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }


  .nayami__list .refineSearch__input label:nth-child(1),
  .nayami__list .refineSearch__input label:nth-child(2),
  .nayami__list .refineSearch__input label:nth-child(3),
  .kodawari__list .refineSearch__input label:nth-child(1),
  .kodawari__list .refineSearch__input label:nth-child(3),
  .nayami__list .refineSearch__input label,
  .kodawari__list .refineSearch__input label {
    line-height: 36px;
  }

  .nayami__list .refineSearch__input label br,
  .kodawari__list .refineSearch__input label br {
    display: none;
  }

  /* 20250305 検索改修 */
  .topSection03 .topSection__ttl img {
    display: block;
    width: auto;
    margin: 0 auto;
  }
  .radiobtn_text,
  .checkbox_text {
    padding: 10px;
    font-size: 15px;
  }

  .size__list .form_icon {
    height: 120px;
  }

  .size__list .refineSearch__input {
    gap: 10px;
  }

  .size__list .refineSearch__input label:nth-child(-n+3) {
    flex-basis: auto;
  }

  .size__list .refineSearch__input label:nth-child(n+4) {
    flex-basis: auto;
  }

  .price__list .refineSearch__input {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    gap: 10px;
  }

  .kodawari__list02 .refineSearch__input {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 10px;
  }


  /* ========================================================
  SEC04
  =========================================================*/


  .refineSearch__box {
    width: 960px;
    padding: 0 0 30px;
    margin: 0 auto;
  }


  .rankbox {
    border-radius: 4px;
    border: 1px solid var(--Main);
    padding: 34px;
    box-sizing: border-box;
    background-color: #fff;
    margin: 30px auto 0;
  }

  .rankbox__header {
    position: relative;
    padding-left: 132px;
    min-height: 80px;
  }

  .rank1 .rankbox__header,
  .rank2 .rankbox__header,
  .rank3 .rankbox__header {
    padding-left: 155px;
  }

  .rankbox__header--result {
    padding-left: 0;
  }

  .rank1 .rankbox__header--result,
  .rank2 .rankbox__header--result,
  .rank3 .rankbox__header--result {
    padding-left: 0;
  }

  .rank {
    background-image: url(../img/cm_rank00.svg);
    width: 80px;
    height: 80px;
    background-size: 80px;
    font-size: 4.5rem;
    line-height: 76px;
    box-sizing: border-box;
    padding-left: 15px;
  }

  .rank.rank_1,
  .rank.rank_2,
  .rank.rank_3 {
    width: 120px;
    height: 80px;
    background-size: 120px 80px;
  }

  .rank.rank_10.rank,
  .rank.rank_11.rank,
  .rank.rank_12.rank,
  .rank.rank_13.rank,
  .rank.rank_14.rank,
  .rank.rank_15.rank {
    font-size: 3.25rem;
    padding-left: 8px;
  }

  .rankbox__header-copy {
    background-color: var(--Main);
    color: #fff;
    font-size: 1.6rem;
    padding: 4px 10px;
    border-radius: 4px;
    position: relative;
    display: inline-block;
  }

  .rankbox__header a {
    display: block;
    font-size: 2.8rem;
    font-weight: bold;
    margin-top: 7px;
  }

  .rankbox__body-bnr {
    width: 800px;
    margin: 20px auto 0;
  }

  .rankbox__body-bnr img {
    vertical-align: bottom;
  }

  .rankbox__body-copyArea {
    width: 800px;
    margin: 0 auto;
    background-color: var(--Main);
    position: relative;
    line-height: 50px;
    padding: 0 10px;
    font-size: 1.4rem;
    color: #fff;
    box-sizing: border-box;
  }

  .rankbox__body-copyArea br {
    display: none;
  }

  .rankbox__body-copyArea a {
    display: inline-block;
    position: absolute;
    top: 10px;
    right: 10px;
    border-radius: 40px;
    padding: 0px 20px 0px 10px;
    background-color: #FB3043;
    color: #fff;
    font-size: 1.2rem;
    box-sizing: border-box;
    text-decoration: none;
  }

  .rankbox__campaign {
    width: 660px;
    margin: 50px auto 0;
    padding: 30px 15px;
    box-sizing: border-box;
    border: 2px solid var(--Main);
    position: relative;
    background-color: #fff;
  }

  .rankbox__campaign-ttl {
    width: 400px;
    height: 42px;
    color: #fff;
    background-image: url("../img/ct_rankbox_campaign.png");
    background-size: 400px 42px;
    position: absolute;
    top: -21px;
    left: 50%;
    margin-left: -200px;
    text-align: center;
    padding: 7px 0 0;
    box-sizing: border-box;
    font-weight: bold;
  }

  .rankbox__cta {
    width: 400px;
    margin: 30px auto 0;
  }

  .rankbox__body-table {
    margin: 30px auto 0;
  }

  .rankbox__body-table th {
    background-color: var(--Sub);
    color: var(--Main);
    font-weight: bold;
    padding: 10px;
    text-align: center;
    width: 160px;
    box-sizing: border-box;
    vertical-align: middle;
    font-size: 1.4rem;
  }

  .rankbox__body-table td {
    background-color: #fff;
    text-align: left;
    color: #333;
    font-weight: normal;
    padding: 10px 15px;
    font-size: 1.4rem;
  }

  .rankbox__body-list {
    margin: 30px auto 0;
  }

  .rankbox__body-term {
    background-color: var(--Sub);
    font-size: 1.4rem;
  }

  .rankbox__body-desc {
    padding: 10px 15px;
    font-size: 1.4rem;
  }

  a.rankbox__cta-btn {
    padding: 20px 40px 20px 20px;
  }

  a.rankbox__cta-btn::after {
    right: 28px;
    width: 31px;
    height: 31px;
  }

  .rankbox.rank1 a.rankbox__cta-btn {
    margin: 10px auto 0;
  }

  /* ========================================================
  SEC05
  =========================================================*/
  .topSection05__table-scroll {
    overflow-x: auto;
  }


  /* ========================================================
  SEC06
  =========================================================*/
  .topSection06 .topSection__inner {}

  .topSection06__copy {}

  .topSection06__txt {
    width: 800px;
  }

  .topSection06__bnr a {
    width: 800px;
  }

  /* ========================================================
  検索結果ページ
  =========================================================*/

  .result__cnt {
    padding-left: 100px;
  }

  .searchConditions {
    width: 660px;
    padding: 20px;
    position: relative;
    box-sizing: border-box;
    border-radius: 4px;
    background-color: #fff;
    border: 2px solid var(--Main);
    margin: 0 auto;
    top: -160px;
    z-index: 30;
  }

  .imgttl_searchresult::after {
    content: "";
    display: inline-block;
    background-image: url("../img/ct_earchresult_bg.png");
    width: 628px;
    height: 398px;
    background-size: 628px;
    height: 398px;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -314px;
    z-index: 1;
  }

  body.result_page .rankbox {
    width: 960px;
  }

  body.result_page .refinesearch_ttl img {
    margin: 0 auto;
    width: 100%;
    max-width: 100% !important;
  }

  body.result_page .topSection03 .topSection__inner {
    background-color: #fff;
    margin-bottom: -70px;
  }


  /* ========================================================
  記事ページ
  =========================================================*/
  .page-lower .inner {
    width: 960px;
    padding: 0 15px;
    margin-left: auto;
    margin-right: auto;
  }

  .page-lower h1 {
    font-size: 2.4rem;
  }

  .page-lower h1::before,
  .page-lower h1::after {
    width: 26.25rem;
    height: 3.625rem;
    background-image: url(../img/icon_dot_pc.svg);
  }

  .page-lower h1::before {
    left: 0;
  }

  .page-lower h1::after {
    right: 0;
  }

  .page-lower h2 {
    font-size: 1.8rem;
  }

  .page-lower .cmn__table {
    flex-wrap: nowrap;
  }

  .page-lower .cmn__table dl {
    flex: 1;
  }

  .page-lower .cm__point__list {
    padding: 1.875rem 1.25rem 1.5625rem;
  }

  /* ========================================================
  FOOTER
  =========================================================*/
  .footer__link {
    display: flex;
    gap: 60px;
  }

  .footer__link-group {
    display: inline-block;
  }


  /* ========================================================
  20230407 追加
  =========================================================*/
  .topSection06 {
    margin-top: 30px;
  }

  /* ========================================================
20240201 追加
=========================================================*/
  .coupon__copy__wrap {
    padding: 10px 10px 0;
  }

  .coupon__copy__container {
    max-width: 350px;
    margin-inline: auto;
    grid-template-columns: 61% 1fr;
  }

  .copyButton {
    padding: 8px 10px;
    font-size: 16px;
  }

  .copyText {
    padding: 10px 4px;
    font-size: 16px;
  }

  .topSection01__box .coupon__copy__wrap {
    margin: 10px auto;
    max-width: 788px;
  }

  .rankbox__cta .coupon__copy__wrap {
    margin-top: 10px;
  }

  .topSection05__table .coupon__copy__wrap {
    padding: 0px;
  }

  .topSection05__table .copyButton,
  .topSection05__table .copyText {
    font-size: 12px;
    padding: 6px 10px;
  }

  .topSection05__table .copyText {
    width: 78%;
  }

  /* ========================================================
  20230602 予算別おすすめマットレス
  =========================================================*/
  .rankbox__body-recommend {
    margin-top: 26px;
  }

  .rankbox__body-recommend-ttl {
    display: block;
    width: 750px;
    margin: 0 auto;
  }

  .rankbox__body-recommend-list {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 15px;
    margin-top: 18px;
  }

  .rankbox__body-recommend-item {
    width: calc(100% / 3);
  }

  .rankbox__body-recommend-item:nth-of-type(n+2) {
    margin-top: 0;
  }

  .rankbox__body-recommend-item-ttl {
    /* font-size: 2.4rem; */
  }

  .rankbox__body-recommend-item-catch {
    font-size: 1.8rem;
    line-height: 1.33;
    margin-top: 4px;
  }

  .rankbox__body-recommend-item-name {
    font-size: 1.5rem;
  }

  .rankbox__body-recommend-item-price-after {
    font-size: 1.6rem;
  }

  .rankbox__body-recommend-note {
    padding-right: 94px;
  }

  .rankbox__body-recommend-item-btn {
    margin-top: 0;
  }

  .rankbox__body-recommend-item-btn::after {
    right: 28px;
    width: 24px;
    height: 24px;
  }

  .result_page .rankbox__body-recommend-note {
    padding-right: 0;
  }

  /* ========================================================
20240409 limne1位に変更
=========================================================*/
  .topCampaign-limne .topCampaign-coupon__inner img {
    max-width: 700px;
    height: auto;
    display: block;
    margin: 0 auto;
  }

  .topCampaign-limne .topCampaign-card__btn {
    padding: 10px;
  }

  .topSection01__table thead th:nth-of-type(7) {
    width: 134px;
  }

  .topSection01__table .topCampaign-coupon__code {
    padding: 0px;
  }

  .topSection01__table .copyText {
    font-size: 12px;
  }

  .topSection01__table .copyButton {
    font-size: 12px;
  }

  .topSection01__table thead th:nth-of-type(2) {
    width: 170px;
  }

  .topSection01__table thead th:nth-of-type(4) {
    width: 105px;
  }

  /* .rankbox__body-recommend-limne .rankbox__body-recommend-item-inner{
    display: flex;
    padding: 10px;
  }
  .rankbox__body-recommend-limne .rankbox__body-recommend-item{
    max-width: 660px;
    width: 100%;
    margin: 0 auto;
  }
  .rankbox__body-recommend-limne .rankbox__body-recommend-item img{
    max-width: 360px;
    width: 100%;
    height: auto;
    object-fit: cover;
  }
  .rankbox__body-recommend-limne > ul > li > div > div:nth-child(2){
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
  } */

  /* ========================================================
20240628 CTAボタン調整
=========================================================*/
  .topCampaign-card__btn {
    padding: 12px;
    font-size: 16px;
  }
  .topCampaign-card__btn::after {
    right: 23px;
    width: 24px;
    height: 24px;
}

  .topCampaign-limne .topCampaign-card__btn {
    max-width: 600px;
  }

  /* ========================================================
20240705 emma キャンペーンC
=========================================================*/
  .C .topCampaign__cards {
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
  }

  .C .topCampaign-card {
    padding: 5px;
  }

  .C .topCampaign__main {
    padding: 0;
  }

  .rankbox__body-recommend-list {
    gap: 10px;
  }

  .footer__linkList {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  /* ========================================================
20240813 口コミ追加
=========================================================*/
  .rankbox__kuchikomi-ttl span {
    font-size: 12px;
    display: block;
    text-align: right;
  }

  .rankbox__kuchikomi-wrap {
    display: flex;
    align-items: flex-start;
  }

  .rankbox__kuchikomi-wrap img {
    width: 362px;
    margin: 0 auto;
    object-fit: contain;
  }

  .result_page .limne .rankbox__kuchikomi-wrap img {
    width: 295px;
    margin: 0 auto;
    object-fit: contain;
  }

  .emma.rankbox__kuchikomi {
    width: 800px;
    margin: 0 auto;
  }

  /* 20240830 追記 */
  .topSection01__table thead th:nth-of-type(4) {
    width: 120px;
  }

  .topCampaign__main {
    padding: 0;
  }

  .topCampaign-coupon {
    margin-top: 0;
  }

  .topCampaign__txt {
    font-size: 18px;
  }

  /* 20241202 追記 */
  .blink span {
    font-size: 20px;
  }

  /* ========================================================
20250206 追尾クーポン追加
=========================================================*/
  .sticky-coupon {
    max-width: 1160px;
    margin: 0 auto;
  }

  /* ========================================================
20250218 体型に合わせて選ぶセクション
=========================================================*/
  .topSectionHardness {
    padding-top: 16px;
  }

  .topSectionHardness .topSection__inner {
    margin-inline: auto;
    max-width: 960px;
    width: 100%;
  }

  .topSectionHardness .topSection__ttl {
    width: 750px;
    margin-inline: auto;
  }

  .topSectionHardness__img {
    margin-inline: auto;
  }

  .topSectionHardness__txt {
    margin-top: 0;
    font-size: 14px;
    line-height: 1.5;
  }

  .topSectionHardness__scroll {
    overflow-x: visible;
  }

  .topSectionHardness__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 26px;
    width: 100%;
    overflow-x: visible;
    padding: 24px 4px 30px 4px;
  }

  .topSectionHardness__item {
    display: flex;
    flex-direction: column;
    width: 100%;
    border-radius: 4px;
    padding: 12px 10px 10px 10px;
    background-color: #fff;
    box-shadow: 0 0 8px rgba(60, 65, 145, 0.2);
    box-sizing: border-box;
  }

  .topSectionHardness__item:first-child {
    border: 2px solid var(--Main);
    background-color: var(--yellow);
  }

  .topSectionHardness__item-logo {
    height: 72px;
  }

  .topSectionHardness__item-logo img {
    display: block;
    margin-inline: auto;
    height: 100%;
    object-fit: contain;
  }

  .topSectionHardness__sub-list {
    display: grid;
    grid-template-columns: 1fr;
    padding-inline: 20px;
  }

  .topSectionHardness__sub-item {
    display: grid;
    grid-template-columns: 72px 1fr;
    gap: 12px;
    align-items: center;
    border-bottom: 1px solid #EDEEF2;
    padding-block: 26px 12px;
  }

  .topSectionHardness__item:first-child .topSectionHardness__sub-item {
    border-bottom: 1px solid var(--Main);
  }

  .topSectionHardness__sub-item-ttl {
    padding: 5px;
    font-size: 16px;
  }

  .topSectionHardness__sub-item-txt {
    font-size: 16px;
  }

  .topSectionHardness__bottom {
    margin-top: 18px;
  }

  .topSectionHardness__btn {
    display: block;
    position: relative;
    margin: 0 auto;
    border-radius: 50px;
    width: 100%;
    padding: 12px 40px;
    background-color: #FB3043;
    color: #fff;
    line-height: calc(22.5 / 15);
    text-align: center;
    box-sizing: border-box;
    text-decoration: none;
    box-shadow: 0 2px 4px rgba(60, 65, 145, 0.4);
  }

  .topSectionHardness__btn::after {
    right: 23px;
    width: 24px;
    height: 24px;
  }

  /* ========================================================
20250221 素材セクション
=========================================================*/
  .topSectionSozai__container {
    padding: 32px 100px;
  }

  .topSectionSozai__ttl {
    width: 750px;
    margin-inline: auto;
  }

  .topSectionSozai__txt {
    padding-inline: 0;
  }

  .topSectionSozai__wrap {
    margin: 24px auto 0;
  }

  .topSectionSozai__tabs {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
  }

  .topSectionSozai__tab {
    font-size: 16px;
    line-height: calc(24 / 16);
    cursor: pointer;
  }

  .topSectionSozai__tab.is-active::after {
    bottom: -17px;
    height: 6px;
  }

  .topSectionSozai__tab span {
    font-size: 14px;
    line-height: calc(21 / 16);
  }

  .topSectionSozai__contents {
    padding: 25px;
  }

  /* ========================================================
20250226 素材セクション下比較表CTA
=========================================================*/
  .sozai__table-inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 0 30px;
  }

  .sozai__table-inner .arrow__down {
    margin: 0 auto;
  }

  .sozai__table-scroll {
    overflow-x: hidden;
    margin: 32px 100px 0;
  }

  .sozai__table {
    width: 100%;
    font-size: 14px;
  }

  .sozai__table td {
    padding: 15px 10px;
  }

  .sozai__table>tbody>tr:nth-child(1)>td {
    display: table-cell;
    vertical-align: middle;
  }

  .sozai__table img {
    width: 100%;
    max-width: 230px;
    margin: 0 auto;
    display: block;
  }

  /* ========================================================
20250307 検索ジャンプボタン
=========================================================*/
  .searchJump-btn a {
    width: 80px;
    height: 80px;
  }
/* ========================================================
20250307 腰痛 硬さコンテンツ
=========================================================*/
  .hardness__waist__arrow{
    width: 239px;
    height: auto;
    margin: 50px auto 40px;
    display: block;
  }
  .hardness__waist__ttl{
    width: 700px;
    display: block;
    margin: 0 auto;
  }
  .topSectionHardness__scroll__waist__bnr{
    width: 750px;
    margin-inline: auto;
    display: block;
    margin: 0 auto;
  }
}