﻿html {
    scroll-behavior: smooth;
}

body {
    background-color: #eda88e;
}

.haruyamaturi_bg {
    background-color: #eda88e;
    padding-top: 0;
}

.haruyamaturi_bg::before {
    opacity: 1;
}

.switch-tab-active .switch-tab-subtitle {
    color: #B81C22;
}

.switch-tab-active .switch-tab-title {
    color: #B81C22;
}

.switch-tab {
    background-color: #B81C22;
    border: 2px solid #B81C22;
}

.switch-tab-active {
    background-color: #eda88e;
    position: relative;
}

.switch-tab-active::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #eda88e;
    z-index: 4;
}

.switch-tab-subtitle {
    color: #eda88e;
}

.switch-tab-title {
    color: #eda88e;
}

.switch-bar::after {
    background-color: #B81C22;
}

.anchorWrap li {
    background-color: #fff;
}

.anchorWrap li a {
    border-color: #fff;
    color: #C8001B;
}

.anchorWrap li a:hover,
.anchorWrap li a:active {
    color: #C8001B;
    background: #e4dbdb;
}

.maturi_wrap {
    background-color: #fff;
    border-radius: 10px;
    color: #111;
    margin: 24px auto;
}

.maturi_title {
    font-size: 40px;
    color: #C8001B
}

.maturi_subtitle .discount {
    color: #C8001B;
}

.btn_area {
    margin-bottom: 56px;
}

.btnLink {
    margin-bottom: 16px;
}

.btnLink .btn-flat-simple-haruyama {
    background-color: #F8B62D;
    color: #810011;
}

.btnLink .btn-flat-simple-haruyama::after {
    border-color: transparent transparent transparent #810011;
}

.sale_title_area {
    text-align: center;
    color: #680000;
    font-size: 48px;
    font-weight: bold;
    margin-bottom: 40px;
}

.sale_title_area .yellow {
    margin-bottom: 56px;
    color: #111;
}

.yellow .sale_title {
    color: #111;
    margin-bottom: 0;
}

.maturi_title_text {
    color: #111;
    margin-bottom: 56px;
    font-size: 40px;
}


.sale_title {
    display: inline-flex;
    align-items: center;
    gap: 0.4em;
}

.sale_title::before {
    content: '\\';
    font-weight: 300;
    opacity: 0.8;
}

.sale_title::after {
    content: '/';
    font-weight: 300;
    opacity: 0.8;
}

.kessan_sale_bg_yellow {
    position: relative;
    padding: 160px 0;
    background-color: #FFE03A;
}

.kessan_sale_bg_yellow::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(../images/img_bg_red.png);
    background-size: 100% auto;
    background-position: top center;
    background-repeat: repeat-y;
    pointer-events: none;
    z-index: 0;
}

.kessan_sale_bg_yellow>* {
    position: relative;
    z-index: 1;
}

.web_limited {
    background: none;
    background-color: #C8001B;
    border: none;
    margin-bottom: 56px;
    padding: 56px 34px;
}

.web_limited_item {
    background-color: #FF8C9B;
}

.web_limited_title,
.web_limited_subtitle,
.sale_price_original,
.web_limited_price {
    color: #810011;
}

.recovery {
    color: #111;
}

.web_limited .maturi_title2 {
    margin-bottom: 42px;
}

.web_limited_list {
    margin-bottom: 42px;
}

.web_limited .btnLink .btn-flat-simple-haruyama {
    background-color: #810011;
    color: #fff;
}

.web_limited_item,
.value {
    padding: 20px 25px;
}

.value .web_limited_title {
    margin-bottom: 0;
}

.outlet {
    margin-bottom: 56px;
}

.notes {
    text-align: center;
}

.recommend {
    margin: 160px 0;
}

.recommend_banner img {
    background-color: #fff;
}

.contents {
    margin-bottom: 80px;
}

/* レスポンシブ対応 */
@media screen and (max-width: 767px) {
    .sale_title_area {
        font-size: 24px;
        margin-bottom: 32px;
    }

    .maturi_title {
        font-size: 30px;
    }

    .contents {
        margin: 32px 0;
    }

    .kessan_sale_bg_yellow {
        padding: 80px 0;
    }

    .maturi_title_text {
        font-size: 16px;
        margin-bottom: 32px;
    }

    .web_limited {
        margin-bottom: 32px;
        padding: 32px 8px;
    }

    .web_limited .maturi_title2 {
        margin-bottom: 24px;
    }

    .web_limited_list {
        margin-bottom: 24px;
    }

    .web_limited_item {
        padding: 16px 5px;
    }

    .web_limited_season_icon {
        width: 32px;
    }

    .recommend {
        margin: 80px 0;
    }

    .haruyamaturi_timesale {
        font-size: 22px;
    }

    .intro_naiyo {
        line-height: 33px;
    }
}

/* 商品画像上のシーズンアイコン */
.web_limited_img_wrap {
    position: relative;
    display: block;
}

.web_limited_img_wrap img {
    display: block;
}

.web_limited_season_icon {
    position: absolute;
    top: 0;
    left: 0;
    height: auto;
    pointer-events: none;
}

/* 価格別に探す */
.price_range {
    margin-bottom: 42px;
}

.price_range_list {
    display: flex;
    gap: 16px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.price_range_item {
    flex: 1;
    background-color: #FF8C9B;
    border-radius: 6px;
}

.price_range_item a {
    display: block;
    padding: 20px 12px;
    color: #810011;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    text-decoration: none;
    line-height: 1.5;
}

.price_range_num {
    display: block;
    font-size: 24px;
}

@media screen and (max-width: 767px) {
    .price_range_list {
        flex-direction: column;
        gap: 8px;
    }

    .price_range_item a {
        font-size: 14px;
        padding: 14px 8px;
    }
}

/* リカバリーウェア価格 縁取り文字 */
.recovery {
    color: #FFE03A;
    /* 上下左右と斜めに少しずつドロップシャドウを配置して太い縁取りを作る */
    filter:
        drop-shadow(1px 0 0 #810011) drop-shadow(-1px 0 0 #810011) drop-shadow(0 1px 0 #810011) drop-shadow(0 -1px 0 #810011) drop-shadow(1px 1px 0 #810011) drop-shadow(-1px -1px 0 #810011) drop-shadow(1px -1px 0 #810011) drop-shadow(-1px 1px 0 #810011);
}

.haruyamaturi_timesale_area {
    color: #fff;
    background-color: #B81C22;
}

/* couponList内のカラー上書き */
.section_content_cp .isMens dl.coupon {
    border-color: #B81C22;
    background-color: #B81C22;
}

.section_content_cp .couponList .isMens {
    background: #fff;
}

.intro_naiyo {
    color: #680000;
    line-height: 41px;
}

.haruyamaturiobon_coupon_li {
    color: #680000;
}

/* ---- special-price-banner ---- */
.special-price-banner {
    max-width: 1000px;
    margin: 0 auto 16px;
}

.special-price-banner img {
    width: 100%;
    height: auto;
}



/* ---- maturi_subtitle (Figmaデザイン実装) ---- */
.maturi_subtitle {
    font-size: 44px;
    font-weight: bold;
    color: #111;
    line-height: 40px;
    text-align: center;
    margin-bottom: 0;
    word-break: break-word;
    padding-top: 16px;
}

.maturi_subtitle__price {
    font-size: 80px;
    font-weight: bold;
    color: #B81C22;
}

.maturi_subtitle__unit {
    font-size: 40px;
    font-weight: bold;
    color: #B81C22;
}

@media screen and (max-width: 767px) {
    .maturi_subtitle {
        font-size: 22px;
        line-height: 32px;
        padding-top: 12px;
    }

    .maturi_subtitle__price {
        font-size: 40px;
    }

    .maturi_subtitle__unit {
        font-size: 20px;
    }
}

/* nav_03 パンツ maturi_subtitleの行間調整 */
@media screen and (max-width: 767px) {
    #nav_03 .maturi_subtitle {
        line-height: 1.1;
        margin-bottom: 16px;
    }

    #nav_03 .maturi_subtitle__price {
        line-height: 1.1;
    }

    #nav_03 .maturi_subtitle__unit {
        line-height: 1.1;
    }
}

.section_content_cp .isMens .marker {
    background: linear-gradient(transparent 80%, #F8B62D 0%);
}

/* ---- maturi_example (Figmaデザイン実装) ---- */
.maturi_example {
    font-size: 20px;
    font-weight: bold;
    color: #111;
    text-align: center;
    line-height: 1.71;
    word-break: break-word;
}

.maturi_example__num {
    font-size: 24px;
    font-weight: 800;
    line-height: 2.05;
}

.maturi_example__count {
    font-size: 32px;
    font-weight: 800;
    line-height: 2.05;
}

.maturi_example__note {
    font-size: 12px;
    font-weight: bold;
    color: #111;
    text-align: right;
    margin: 4px 130px 0;
}

/* ---- maturi_price (Figmaデザイン実装) ---- */
.maturi_price {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.maturi_price-normal {
    color: #111;
    text-align: left;
    font-weight: bold;
    margin: 0;
}

.maturi_price-normal__text {
    font-size: 20px;
    line-height: 1.71;
}

.maturi_price-normal__num {
    font-size: 32px;
    font-weight: 800;
    line-height: 2.05;
}

.maturi_price__arrow {
    font-size: 24px;
    font-weight: bold;
    color: #111;
    line-height: 1;
    flex-shrink: 0;
}

.maturi_price-sale {
    color: #B81C22;
    text-align: left;
    font-weight: bold;
    margin: 0;
}

.maturi_price-sale__label {
    font-size: 20px;
    line-height: 1.71;
}

.maturi_price-sale .price-big {
    font-size: 64px;
    font-weight: 800;
    color: #B81C22;
}

.maturi_price-sale__unit {
    font-size: 32px;
    line-height: 1.71;
}

.maturi_price-sale__tax {
    font-size: 20px;
    line-height: 1.71;
}

/* 1着/1点当たり価格行 */
.maturi_price-per {
    width: 100%;
    text-align: right;
    color: #111;
    font-weight: bold;
    margin: 0;
}

.maturi_price-per__label {
    font-size: 20px;
    line-height: 1.71;
    color: #111;
}

.maturi_price-per .price-big {
    font-size: 64px;
    font-weight: 800;
    color: #B81C22;
}

.maturi_price-per .maturi_price-sale__unit {
    color: #B81C22;
}

.maturi_price-per .maturi_price-sale__tax {
    color: #B81C22;
}

@media screen and (max-width: 767px) {
    .maturi_example {
        font-size: 14px;
        margin: 0;
    }

    .maturi_example__num {
        font-size: 18px;
    }

    .maturi_example__count {
        font-size: 22px;
    }

    .maturi_price {
        gap: 0;
    }


    .maturi_price-normal__text {
        font-size: 14px;
    }

    .maturi_price-normal__num {
        font-size: 22px;
    }

    .maturi_price__arrow {
        font-size: 0;
    }

    .maturi_price__arrow::before {
        content: '▼';
        font-size: 18px;
    }

    .maturi_price-sale__label {
        font-size: 14px;
    }

    .maturi_price-sale .price-big {
        font-size: 40px;
    }

    .maturi_price-sale__unit {
        font-size: 22px;
    }

    .maturi_price-sale__tax {
        font-size: 14px;
    }

    .maturi_price-per__label {
        font-size: 14px;
    }

    .maturi_price-per .price-big {
        font-size: 40px;
    }

    .maturi_example__note {
        margin: 0;
        text-align: left;
    }
}

/* ---- item-grid / item-card (nav_05 秋物スペシャルプライス) ---- */
.item-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    list-style: none;
    padding: 0;
    margin: 0 auto;
    max-width: calc((100% - 32px) / 3 * 2 + 16px);
}

.item-card {
    border-radius: 8px;
    overflow: hidden;
}

.item-card__link {
    display: flex;
    flex-direction: column;
    height: 100%;
    text-decoration: none;
    color: inherit;
}

.item-card__img-wrap {
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
}

.item-card__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.item-card__body {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 12px;
    flex: 1;
    min-height: 255px;
}

.item-card__name {
    font-size: 16px;
    text-align: left;
    font-weight: bold;
    color: #111;
    line-height: 1.2;
}

.item-card__name-tag {
    display: block;
    font-size: 14px;
    font-weight: bold;
}

.item-card__price-original {
    font-size: 16px;
    font-weight: bold;
    color: #111;
    text-align: right;
    text-decoration: line-through;
    margin-top: auto;
}

.item-card__price-num {
    font-size: 22px;
    font-weight: 800;
    line-height: 2.05;
}

.item-card__price-sale {
    font-size: 16px;
    font-weight: bold;
    color: #e60012;
    text-align: right;
}

.item-card__price-num--sale {
    font-size: 40px;
    color: #e60012;
}

.item-card__btn {
    display: block;
    background-color: #F8B62D;
    color: #810011 !important;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    padding: 14px 0;
    border-radius: 8px;
    margin-top: 4px;
    transition: opacity 0.2s;
}

.item-card__link:hover .item-card__btn {
    opacity: 0.8;
}

@media screen and (max-width: 767px) {
    .item-grid {
        max-width: 100%;
        gap: 10px;
    }

    .item-card__name {
        font-size: 11px;
    }

    .item-card__name-tag {
        font-size: 11px;
    }

    .item-card__price-original {
        font-size: 11px;
    }

    .item-card__price-num {
        font-size: 16px;
    }

    .item-card__price-sale {
        font-size: 11px;
    }

    .item-card__price-num--sale {
        font-size: 26px;
    }

    .item-card__btn {
        font-size: 14px;
        padding: 10px 0;
    }

    .item-card__body {
        min-height: 196px;
    }

}