@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Nunito:ital,wght@0,200..1000;1,200..1000&family=Oswald:wght@200..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

@font-face {
    font-family: 'Hiragino Mincho Pro Custom';
    src: url('../fonts-new/hiragino_mincho_pro.woff2') format('woff2'),
        url('../fonts-new/hiragino_mincho_pro.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'yu-mincho';
    src: url('../fonts-new/yu-mincho-demibold.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

:root {
    --main-font: 'Hiragino Mincho Pro Custom';
    --noto-font: "Noto Serif JP", serif;
    /* --inter-font: "Inter", sans-serif;
    --oswald-font: "Oswald", sans-serif;
    --nunito-font: "Nunito", sans-serif; */
    --sub-main-font: 'yu-mincho';
    --main-container: 1340px;
    --primary-color: #E54F22;
    --border-color: #DC702A;
    --sub-color: #412210;
    --main-text-color: #000000;
    --secondry-black: #1E1E1E;
    --text-sub-color: #333333;
    --bg-color: #F5F5F5;
    --straight-text: upright;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: var(--noto-font);
}

body a {
    text-decoration: none;
    color: #000;
}

body ul li {
    list-style: none;
}
#qd_cart_area .badge-group.pro-type{
    display:none;
}
/* same css */
.main_btn {
    padding: 15px 30px;
    border: 3px solid var(--border-color);
    border-radius: 16px;
    font-size: 24px;
    font-weight: 600;
    transition: 0.2s linear;
}

.main_btn:hover {
    background-color: var(--border-color);
    color: #fff;
}

.straight-text {
    text-orientation: var(--straight-text);
    writing-mode: vertical-lr;
}

.same_section {
    padding: 100px 0;
    background-color: var(--bg-color);
}

.container {
    max-width: var(--main-container);
    width: 100%;
    margin: 0 auto;
    padding: 0 20px;
}

.qd_cart__count.hidden {
    display: none;
}

.section_block .container {
    display: flex;
    align-items: stretch;
    gap: 90px;
}

.sec__title {
    color: var(--primary-color);
    font-size: 40px;
    line-height: 52px;
    font-weight: 600;
    overflow: visible;
    letter-spacing: 25px;
}

.section_block .right_part {
    flex: auto;
}

.second_section .right_part {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}

.second_section .right_part .cards {
    display: flex;
    flex-direction: column;
    gap: 29px;
}

.second_section .right_part .cards .numbers {
    font-size: 28px;
    line-height: 80px;
    font-weight: 600;
}

.second_section .right_part .cards h3 {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 4px;
}

.second_section .right_part .cards p {
    font-size: 16px;
    font-weight: 300;
    line-height: 45px;
    color: var(--text-sub-color);
}

input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
    display: none;
}

.no-result-found {
    margin: 100px 0;
    text-align: center;
    border-radius: 40px;
    color: #121212;
    font-weight: 600;
    font-size: 18px;
    line-height: 40px;
}

.no-result-found a {
    color: #D21200;
    text-decoration: underline;
}

.qd_img {
    width: 100%;
    height: 100%;
}
body.qd-overlay-open{
    overflow: hidden;
}
body button{
    font-family: unset;
}
/* same end */
/* -------------------Top_part start----------------------- */
.toppart {
    position: absolute;
    right: 0;
    left: 0;
    width: 100%;
    top: 0;
}

.wwquick_deli_latest {
    margin-bottom: 20PX;
}

.wwquick_deli_latest .wwquickdeli__head {
    DISPLAY: FLEX;
    ALIGN-ITEMS: CENTER;
    GAP: 10PX;
    MARGIN-BOTTOM: 10PX;
}

.wwquick_deli_latest .wwquick_deli_main_imng img {
    WIDTH: 250PX;
    HEIGHT: AUTO;
    OBJECT-FIT: cover;
}

.Wtrn_sticy {
    /*opacity: 0;*/
    /*visibility: hidden;*/
    height: 0;
    padding: 20px 80px;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 12;
    transition: 0.4s ease;
    background-color: #FFF;
    transform: translateY(-100px);
}

.Wtrn_sticy .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

.Wtrn_sticy.active {
    /*opacity:1;*/
    /*visibility: visible;*/
    height: auto;
    transform: translateY(0px);
}

.Wtrn_sticy .left_part,
.Wtrn_sticy .right_part {
    align-items: center !important;
}

.Wtrn_sticy .toppart .humburger {
    display: block;
}

.Wtrn_sticy .nav_links_part {
    position: absolute;
    top: -360%;
    right: 0%;
    bottom: 0;
    background-color: #fff;
    height: max-content;
    width: max-content;
    z-index: 11;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 30px;
    border-radius: 20px;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    transition: .2s linear;
}

.Wtrn_sticy .nav_links_part.show {
    top: 120px;
}

.wtrc__section {
    scroll-margin-top: 130px;
}

.Wtrn_sticy .humburger .line,
.Wtrn_sticy .humburger .line:before,
.Wtrn_sticy .humburger .line:after {
    width: 30px !important;
}

.toppart .Wtrn_sticy .product_links_part ul li a {
    font-size: 18px;
}

.Wtrn_sticy .nav_links_part ul {
    flex-direction: column;
    display: flex;
    gap: 10px;
}

.Wtrn_sticy .nav_links_part ul li a.straight-text {
    writing-mode: horizontal-tb;
    font-size: 18px;
}

.Wtrn_sticy .Sticky_logo img {
    width: unset;
    height: 80px;
}

.Wtrn_sticy .close_btn {
    height: 40px;
    width: 40px;
    background-color: #f5f5f5;
    position: absolute;
    top: 20px;
    right: 20px;
    padding: 10px;
    cursor: pointer;
}

.Wtrn_sticy .close_btn img {
    height: 100%;
    width: 100%;
    object-fit: contain;
}

.toppart .wtrctab__link.active a {
    background-color: var(--border-color);
    color: #fff;
}

.toppart .header_container {
    padding: 80px;
    display: flex;
    align-items: start;
    justify-content: space-between;
    text-wrap: nowrap;
}

.toppart .left_part {
    display: flex;
    align-items: start;
    gap: 98px;
}

.toppart .right_part {
    display: flex;
    align-items: start;
    gap: 47px;
}

.toppart .left_part .nav_links_part ul,
.toppart .right_part .static_text ul {
    display: flex;
    align-items: start;
    gap: 16px;
    user-select: none;
}

.toppart .left_part .nav_links_part ul li a {
    color: var(--text-sub-color);
    font-size: 18px;
    line-height: 30px;
    font-weight: 600;
    letter-spacing: 9px;
}

.toppart .cart a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
}

.toppart .cart a .text {
    font-size: 28px;
    line-height: 35px;
    font-weight: 600;
    letter-spacing: 9px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
}

.toppart .cart a .text .product_number {
    margin-top: -40px;
    height: 30px;
    width: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background-color: var(--border-color);
    color: #fff;
    font-size: 20px;
    line-height: 0px;
    letter-spacing: 0px;
}

.toppart .product_links_part ul {
    display: flex;
    align-items: center;
    gap: 31px;
}

.toppart .product_links_part ul li a {
    padding: 15px;
    background-color: #fff;
    border-radius: 8px;
    font-size: 28px;
    line-height: 37px;
    font-weight: 600;
    color: var(--text-sub-color);
}

.toppart .right_part .static_text ul li {
    font-size: 18px;
    line-height: 30px;
    font-weight: 300;
    color: var(--text-sub-color);
    letter-spacing: 8px;
}

.toppart .right_part .static_text ul li.bold_text {
    font-size: 32px;
    line-height: 42px;
    font-weight: 600;
    letter-spacing: 20px;
}

.toppart .right_part .logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    user-select: none;
}

.toppart .right_part .logo .logo_text {
    color: var(--sub-color);
}

.toppart .right_part .logo .logo_text .up_text {
    font-size: 40px;
    line-height: 80px;
    font-weight: 600;
    letter-spacing: 20px;
    font-family: var(--sub-main-font);
}

.toppart .right_part .logo .logo_text .down_text {
    font-size: 40px;
    line-height: 65px;
    font-weight: 300;
    letter-spacing: 20px;
}

.toppart .humburger {
    position: relative;
    cursor: pointer;
}

.toppart .humburger .line {
    height: 2px;
    width: 40px;
    background: var(--text-sub-color);
    border-radius: 5px;
    position: relative;
}

.toppart .humburger .line::after {
    content: "";
    height: 2px;
    width: 40px;
    display: block;
    background: var(--text-sub-color);
    border-radius: 5px;
    transform: translate(0px, -10px);
}

.toppart .humburger .line::before {
    content: "";
    height: 2px;
    width: 40px;
    display: block;
    background: var(--text-sub-color);
    border-radius: 5px;
    transform: translate(0px, 10px);
}

.nav_links_part.wtrn_mob_nav {
    display: none;
}

/* -------------------Top_part end----------------------- */
/* ------------------- first section start --------------------- */
.first_section {
    overflow-x: hidden;
    overflow-y: clip;
    padding: 300px 72px 130px;
    background-image: url('../img/first_sec.png');
    background-position: center;
    background-repeat: repeat;
    background-size: cover;
    margin-bottom: -75px;
}

.owl-carousel {
    visibility: hidden;
}

.owl-loaded {
    visibility: visible;
}

.first_section .owl-stage-outer {
    overflow: visible !important;
}

.first_section .first_part {
    position: relative;
}

.custom-slider {
    width: 100%;
    display: none;
}

.custom-slider.active {
    display: block;
}

.first_section .bg_image {
    position: absolute;
    bottom: -10.6%;
    left: 6%;
}

.first_section .owl-nav {
    position: absolute;
    left: 0;
    right: 0;
    top: 40%;
    max-width: 700px;
}

.first_section .owl-nav :is(.owl-prev, .owl-next) {
    height: 50px;
    width: 50px;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
}

.first_section .owl-nav :is(.owl-prev, .owl-next) img {
    height: auto;
    width: 13px;
}

.first_section .owl-nav .owl-prev {
    left: -5%;
}

.first_section .owl-nav .owl-next {
    right: -7%;
}

.wtrn_mob_product {
    display: none;
}

.first_section .owl-item .product_link {
    display: flex !important;
    align-items: end !important;
    justify-content: center;
    border-radius: 10px;
    position: relative;
    opacity: 0.4;
    width: 80%;
    transform: scale(0);
}

.first_section .owl-item .product_link img {
    transform: scale(0);
}

.first_section .owl-item .product_text {
    display: none;
    position: absolute;
    right: 25%;
    top: -150px;
    /*right: 20%;*/
    /*top: -30%;*/
}

.first_section .owl-item.active .product_text {
    display: flex;
    flex-direction: column;
    gap: 26px;
}

.first_section .owl-item .product_text .up_text {
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

.first_section .owl-item .product_text .up_text ul {
    display: flex;
    align-items: start;
    /*gap: 26px;*/
    justify-content: end;
}

.first_section .owl-item .product_text .up_text ul li br {
    display: none;
}

.first_section .owl-item .product_text .up_text ul li {
    color: var(--text-sub-color);
    font-size: 16px;
    line-height: 34px;
    font-weight: 300;
    height: auto;
}

.first_section body .swiper-pagination {
    bottom: 10% !important;
}

.first_section .first_part .container {
    transform: translateY(20px);
    z-index: 10;
    position: relative;
}

.first_section .owl-dots {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.first_section body .owl-dot {
    background: lightgray !important;
    border-radius: 50% !important;
    height: 10px !important;
    width: 10px !important;
}

.first_section body .owl-dot.active {
    background-color: var(--primary-color) !important;
    width: 25px !important;
    border-radius: 10px !important;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}

.first_section .product_text .up_text ul li.bold_text {
    font-size: 28px;
    line-height: 36px;
    font-weight: 600;
    letter-spacing: 5px;
    height: auto;
}

.first_section .owl-item .product_text .product_btn {
    padding: 10px 17px;
    border: 3px solid var(--border-color);
    border-radius: 6px;
    font-size: 20px;
    font-weight: 600;
    background-color: transparent;
    transition: 0.2s linear;
    max-width: 180px;
    width: 100%;
    flex-shrink: 0;
}

.first_section .owl-item .product_text .product_btn:hover {
    background-color: var(--border-color);
    color: #fff;
}

.first_section .owl-item img {
    width: 70% !important;
    height: 70%;
    object-fit: contain;
}

.first_section .owl-item.active .product_link {
    opacity: 1;
    justify-content: start !important;
    transform: scale(1);
}

.first_section .owl-item.active .product_link img {
    transform: scale(1);
}

.first_section .swiper-button-next,
.first_section .swiper-button-prev {
    color: #000;
}

.first_section .swiper-button-next {
    right: 0px;
}

.first_section .swiper-button-prev {
    left: 0px;
}

/* ------------------- first section end --------------------- */
/* -------------------- third section -------------------------- */
.third_section {
    padding: 85px 0;
}

.third_section .container,
.five_section .container {
    flex-direction: row-reverse;
}

.third_section .right_part {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.third_section .cards {
    border: 3px solid #FDDDC8;
    border-radius: 25px;
    padding: 30px;
    box-shadow: 0px 0px 0px 13px var(--bg-color);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.third_section .cards h3 {
    font-size: 28px;
    line-height: 36px;
    font-weight: 600;
}

.third_section .cards p {
    font-size: 18px;
    line-height: 45px;
    font-weight: 300;
    color: var(--text-sub-color);
    max-width: 710px;
    width: 100%;
}

.third_part.section_block .container {
    align-items: center;
}

.third_section .straight-text.sec__title {
    display: flex;
}

.third_section .straight-text.sec__title span {
    writing-mode: horizontal-tb;
    margin: -23px 0 0 8px;
    letter-spacing: 1px;
}

/* -------------------- third section -------------------------- */
/* -------------------- fourth section start -------------------------- */
.fourth_section .right_part {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 0px;
    align-items: stretch;
}

.fourth_section .right_part .outer_faq {
    max-width: 50%;
    width: 100%;
}

.fourth_section .right_part .cards_faq {
    padding: 30px;
    background-color: #fff;
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 0 20px;
}

.fourth_section .faq_title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    gap: 20px;
}

.fourth_section .faq_title h3 {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 2px;
}

.fourth_section .right_part .cards_faq .icon {
    height: 47px;
    width: 47px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--bg-color);
    border-radius: 5px;
    flex-shrink: 0;
}

.fourth_section .faq_minus,
.fourth_section .faq_content {
    display: none;
}

.fourth_section .faq_content ul li {
    list-style: disc;
    list-style-position: inside;
}

/* -------------------- fourth section end -------------------------- */
/*--------------------- five_section start --------------------------------- */
.five_section .right_part .cards {
    background-color: #fff;
    border-radius: 50px;
    padding: 22px 38px;
    height: 100%;
}

.five_section.same_section {
    padding: 0px 0 100px 0;
}

.five_section .right_part .cards .cards_inner_part {
    border: 3px solid #FDDDC8;
    padding: 38px 60px;
    border-radius: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 32px;
    height: 100%;
}

.five_section .right_part .cards .cards_inner_part h3 {
    line-height: 50px;
    font-size: 24px;
    font-weight: 300;
    letter-spacing: 10px;
    text-align: center;
}

/* -------------------- five section end ----------------------------------- */
/* ----------------------- footer start-------------------------------------- */
.footer {
    padding: 34px 0;
}

.footer .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.footer .container p {
    font-size: 18px;
    letter-spacing: 0px;
    font-weight: 300;
}

.wwquick_footer .qd_helper_container{
    padding: 30px 0;
    border-top: 1px solid #00000029;
    margin: 30px 0 0 0;
    border-bottom: 1px solid #00000029;
}
.qd_helper_section {
    margin-bottom: 45px;
    text-align: center;
}

.qd_helper_header {
      font-size: 24px;
    font-weight: 700;
    margin-bottom: 30px;
    line-height: 24px;
    color: #000;
}

.qd_helper_button_group {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 8px;
}

.qd_helper_link {
    display: inline-block;
    background-color: transparent; 
    border: 1px solid #444;     
    border-radius: 20px;
    padding: 5px 30px;
    margin: 0 4px 10px 4px;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    color: #000;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.2s, color 0.2s, border-color 0.2s;
}

.qd_helper_link:hover:not(.qd_helper_area_label_box .qd_helper_link) {
    background-color: #d1121c; 
    color: #ffffff;          
    border-color: #d1121c;     
}

.qd_helper_area_container {
    text-align: left;
    margin-top: 20px;
}

.qd_helper_area_row {
    display: flex;
    margin-bottom: 18px;
    align-items: flex-start;
}

.qd_helper_area_label_box {
    flex-shrink: 0;
    max-width: 200px;
    width: 100%;
}
.qd_helper_area_label_box .qd_helper_link{
       width: 100%;
    cursor: unset;
    text-align: center;
    max-width: 100%;
}
.qd_helper_area_text_list {
    flex: 1;
    padding-left: 10px;
    font-size: 16px;
    line-height: 1.8;
    color: #000;
    font-weight: 700;
}

.qd_helper_area_item {
    color: #000;
    text-decoration: none;
    display: inline-block;
}

.qd_helper_area_item:hover {
    text-decoration: underline;
    color: #D21200;
}

.qd_helper_slash {
    color: #000;
    margin: 0 5px;
    font-style: normal;
}
/* ----------------------- footer end --------------------------------------- */
/* -------------------- New home header start  ----------------------------------- */


.qd_container {
    max-width: 1340px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
}

.qd_notice_bar_wrapper {
  width: 100%;
}

.qd_notice_bar {
  width: 100%;
  background: #FAF4EE;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 52px;
  padding: 0 16px 0 24px;
  box-sizing: border-box;
  border-bottom: 1px solid #e0e0e0;
}

.qd_notice_bar_text {
  font-size: 18px;
  font-weight: 600;
  color: #1e1e1e;
  flex: 1;
  text-align: center;
}

.qd_notice_bar_close {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: transparent;
  cursor: pointer;
  border-radius: 6px;
  flex-shrink: 0;
  padding: 0;
  transition: background 0.15s;
}

.qd_notice_bar_close:hover {
  background: #f0f0f0;
}

.qd_notice_bar_close svg {
  width: 16px;
  height: 16px;
  stroke: #000;
  stroke-width: 2;
  stroke-linecap: round;
}

.qd_header {
    position: fixed;
    z-index: 2000;
    width: 100%;
    top: 0;
    transition: 0.1s linear;
}

.qd_header .qd_container:not(.qd_search_bar .qd_container) {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 30px 20px 50px ;
    transition: 0.2s linear;
}

.qd_header.active {
    background-color: #FFF;
}

.qd_header.active .qd_container {
    padding: 20px !important;
}

.qd_header.active .qd_search_box {
    box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 36px 0px, rgba(0, 0, 0, 0.06) 0px 0px 0px 1px;
}

.qd_search_box * {
    cursor: pointer;
}

.qd_logo_area :is(img, svg) {
    width: unset;
    height: 54px;
    object-fit: scale-down;
    /*filter: brightness(100);*/
}

.qd_nav_right {
    display: flex;
    align-items: stretch;
    gap: 16px;
}

.qd_search_box {
    display: flex;
    background: #F5F4F7;
    border-radius: 20px;
    padding: 16px 20px;
    max-width: 263px;
    width: 100%;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    transition: 0.2s linear;
}

.qd_search_box .qd_search_btn {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
}

.qd_search_box form {
    display: flex;
    align-items: center;
}

.qd_search_box form button {
    cursor: pointer;
    background: transparent;
    border: none;
    outline: none;
}

.qd_search_input {
    border: none;
    outline: none;
    width: 100%;
    text-indent: 4px;
    background: transparent;
    font-size: 16px;
}

.qd_search_input::placeholder {
    font-size: 20px;
    color: var(--secondry-black);
    font-weight: 600;
}

.qd_mail_wrap {
    display: flex;
    white-space: nowrap;
    gap: 5px;
    font-size: 16px;
    font-weight: 600;
    align-items: center;
}

.qd_mail_wrap img {
    width: unset;
    height: 24px;
}

.qd_header.active .qd_mail_wrap span {
    color: #000;
}

/*.qd_header.active .qd_logo_area :is(img, svg) {*/
/*    filter: brightness(0);*/
/*}*/
.qd_mail_wrap span {
    color: #FFF;
}

.qd_action_group {
    display: flex;
    gap: 16px;
}

.qd_icon_btn {
    width: 70px;
    height: 70px;
    background: #000;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    border: none;
    cursor: pointer;
    position: relative;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 13px;
}

.qd_menu_btn {
    background: #000;
    border-radius: 20px;
    overflow: hidden;
}

.qd_burger_inner {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.qd_burger_inner img {
    height: 100%;
    width: 100%;
    object-fit: contain;
}

.qd_burger_inner img.close_icon {
    display: none;
    filter: brightness(100);
}

.qd_icon_btn.qd_menu_btn.active img.close_icon {
    display: inline-block;
}

.qd_icon_btn.qd_menu_btn.active .head_humburger {
    display: none;
}

.qd_line {
    width: 100%;
    height: 2px;
    background: #fff;
    transition: all 0.4s ease;
    border-radius: 2px;
}

.qd_line_short {
    width: 60%;
    align-self: flex-end;
}

.qd_menu_btn.active .qd_line_top {
    transform: translateY(6px) rotate(45deg);
    width: 100%;
}

.qd_menu_btn.active .qd_line_short {
    transform: translateY(-6px) rotate(-45deg);
    width: 100%;
}

.qd_side_menu {
    position: fixed;
    top: 0;
    right: -130%;
    width: 400px;
    height: 100%;
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    z-index: 1500;
    padding: 120px 60px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    box-shadow: -10px 0 30px rgba(0, 0, 0, 0.05);
    transition: right 0.6s cubic-bezier(0.77, 0, 0.175, 1);
}

.qd_side_menu.active {
    right: 0;
}

.qd_side_menu ul li {
    font-size: 28px;
    color: #333;
    text-decoration: none;
    font-weight: 700;
    position: relative;
    opacity: 0;
    transform: translateX(50px);
    transition: 0.4s;
}

.qd_side_menu.active ul li {
    opacity: 1;
    transform: translateX(0);
}

.qd_side_menu ul li:nth-child(1) {
    transition-delay: 0.1s;
}

.qd_side_menu ul li:nth-child(2) {
    transition-delay: 0.2s;
}

.qd_side_menu ul li:nth-child(3) {
    transition-delay: 0.3s;
}

.qd_side_menu ul li:nth-child(4) {
    transition-delay: 0.4s;
}

.qd_side_menu ul li::after {
    content: "";
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 0;
    height: 3px;
    background: #BE001B;
    transition: 0.3s;
}

.qd_side_menu ul li:hover::after {
    width: 40px;
}

.qd_menu_footer {
    margin-top: auto;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    padding-top: 30px;
    font-size: 16px;
    color: var(--secondry-black);
}

/* --- HERO CONTENT --- */
.qd_hero_main {
    display: flex;
    min-height: calc(100vh - 100px);
    padding-top: 40px;
}

.qd_hero_banner {
    padding: 200px 0 500px 0;
    background-color: #F2ECE2;
    position: relative;
    overflow-x: hidden;
}

.qd_hero_banner::after {
    content: "";
    z-index: 0;
    max-width: 1298px;
    width: 100%;
    height: 230px;
    display: block;
    background-color: rgba(226, 122, 63, 0.2);
    filter: blur(40px);
    position: absolute;
    top: -90px;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 50%;
}

.qd_hero_banner .qd_container {
    z-index: 1;
}

.qd_back_bg {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;
    mix-blend-mode: overlay;
    z-index: 0;
}

.qd_text_content {
    position: relative;
    z-index: 1;
}

.qd_title {
    font-size: 40px;
    font-weight: 600;
    margin-bottom: 20px;
}

.qd_description {
    font-size: 20px;
    line-height: 55px;
    margin-bottom: 31px;
    font-weight: 400;
    /* font-family: var(--inter-font); */
}

.qd_cta,
.lost_reset_password .woocommerce-Button.button.qd_cta {
    display: inline-block;
    background: #D21200;
    color: #fff;
    padding: 11px 30px;
    border-radius: 40px;
    text-decoration: none;
    font-weight: 600;
    font-size: 28px;
    transition: 0.4s;
    box-shadow: 0 10px 25px rgba(190, 0, 27, 0.2);
}

.qd_cta:hover,
.lost_reset_password .woocommerce-Button.button.qd_cta:hover {
    background: #000;
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
}

/* パスワードリセットボタンのみフォントサイズを小さく(28px→20px)。共通.qd_ctaは28pxのまま */
.lost_reset_password .woocommerce-Button.button.qd_cta {
    font-size: 20px;
}

.qd_visual_wrap {
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    right: 0;
    max-width: 1920px;
    margin: 0 auto;
    overflow: hidden;
}

.qd_dark_bg_arch {
    width: 400px;
    height: 716px;
    background: #2D1B14;
    border-radius: 268px 268px 0 0;
    z-index: 1;
}

.qd_main_img_wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 1;
    width: max-content;
    float: inline-end;
    transform: translateX(-410px) translateY(325px);
    position: relative;
}

.qd_main_oval {
    position: absolute;
    top: 52%;
    left: 50%;
    width: 891px;
    height: 542px;
    border: 7px solid #fff;
    border-radius: 400px;
    overflow: hidden;
    z-index: 5;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.25);
    transform: translateY(-44%) translateX(-50%);
}

.qd_main_oval img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.qd_floating_plate_top {
    position: absolute;
    top: 8%;
    right: 2%;
    width: unset;
    height: 400px;
    z-index: 1;
}

.qd_floating_plate_bottom {
    position: absolute;
    bottom: 60px;
    left: 17%;
    width: unset;
    height: 450px;
    z-index: 10;
}

.qd_plate_img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: drop-shadow(0px 15px 40px rgba(0, 0, 0, 0.25));
}

.qd_chef_hat {
    position: absolute;
    top: 49px;
    right: 61px;
    width: unset;
    z-index: 1;
    height: 82px;
}

/* -------------------- New home header end  ----------------------------------- */
/* --- CATEGORY SECTION --- */
.qd_category_section {
    background-color: #fff;
}

.qd_category_header {
    text-align: center;
    margin-bottom: 80px;
    z-index: 1;
    position: relative;
}

.qd_sec_title {
    font-size: 40px;
    font-weight: 600;
    margin-bottom: 25px;
}

.qd_sub_heading {
    margin-top: 50px;
    font-size: 28px;
    font-weight: 600;
    line-height: normal;
}

.qd_sec_title span {
    color: #D21200;
}

.qd_sec_divider {
    position: relative;
    width: 200px;
    height: 1px;
    background: repeating-linear-gradient(to right, #BD9675, #BD9675 3px, transparent 3px, transparent 6px);
    margin: 20px auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

.qd_sec_dot {
    width: 24px;
    height: 24px;
    background-color: #D21200;
    border-radius: 50%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

/* --- FLEXBOX LAYOUT --- */
.qd_flex_container {
    display: flex;
    flex-wrap: wrap;
    /* Allows items to drop to next line on small screens */
    justify-content: space-between;
    /* Maintains even spacing across the 1340px width */
    gap: 30px;
}

.qd_category_item {
    flex: 0 1 calc(25% - 23px);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    text-decoration: none;
    color: inherit;
    min-width: 250px;
}
.qd_category_item .qd_arrow_btn{
    width: max-content;
    margin: 0 auto;
}

/* --- IMAGE FRAME (Internal White Border) --- */
.qd_image_frame {
    width: 100%;
    aspect-ratio: 1 / 1.1;
    border-radius: 40px;
    overflow: hidden;
    margin-bottom: 30px;
    position: relative;
    background: #f0f0f0;
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.qd_image_frame::before {
    content: "";
    position: absolute;
    top: 8px;
    left: 8px;
    right: 8px;
    bottom: 8px;
    border: 3px solid #ffffff;
    border-radius: 30px;
    z-index: 5;
    pointer-events: none;
}

.qd_category_img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}

/* --- TEXT & BUTTON STYLES --- */
.qd_item_label {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 25px;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
}

.qd_arrow_btn {
    padding: 10px 30px;
    border: 1px solid #000;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: bold;
    transition: all 0.3s ease;
    background: #ffffff;
    color: #333;
}

.qd_arrow_btn a {
    display: inline-flex;
}

.qd_arrow_btn img {
    filter: brightness(0);
}

.qd_category_item:hover .qd_arrow_btn img {
    filter: brightness(100);
}

/* --- UNIFIED HOVER EFFECTS --- */
.qd_category_item:hover .qd_item_label {
    color: #BE001B;
}

.qd_category_item:hover .qd_arrow_btn {
    background-color: #BE001B;
    border-color: #BE001B;
    color: #ffffff;
}

.qd_category_item:hover .qd_image_frame {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

.qd_category_item:hover .qd_category_img {
    transform: scale(1.08);
}

/*pickup section start*/
.qd_pickup_container.wtrn_section {
    background: linear-gradient(to bottom,
            #FFECE1 0%,
            #FFFFFF 43%);
    padding: 100px 0;
    margin: 0;
}
.qd_pickup_container #pickupBig{
    margin-top: 20px;
}
.qd_pickup_container .owl-dots{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 10px 0 0;
}
.qd_pickup_container .owl-dots .owl-dot{
    height: 10px;
    width: 10px;
    border-radius: 50%;
    background-color: #B3B3B3;
}
.qd_pickup_container .owl-dots .owl-dot.active{
    background-color: #222222;
}
.qd_pickup_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.qd_pickup_card {
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    height: auto;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.qd_pickup_card:nth-child(2) .qd_pick_rank,
.qd_pickup_card:nth-child(3) .qd_pick_rank {
    font-size: 12px;
    font-weight: 700;
    color: #FFC400;
}

.qd_pick_content {
    position: relative;
    z-index: 3;
    padding: 30px 20px 0;
    color: #fff;
    height: auto;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.top_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 11px;
}

.qd_pick_rank {
    color: #FFD900;
    font-size: 24px;
    margin-bottom: 0;
}

.qd_pick_title {
    font-size: 28px;
    font-weight: bold;
    line-height: 36px;
    text-shadow: 0px 2px 4px rgba(0, 0, 0, 1);
    /* font-family: var(--oswald-font); */
}

.qd_pick_lg .qd_pick_title {
    font-size: 32px;
    /* font-family: var(--nunito-font); */
}

.qd_pickup_card h4 {
    font-size: 16px;
    font-weight: 800;
}

.qd_pick_link {
    color: #FFD900;
    text-decoration: none;
    font-weight: bold;
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.qd_pickup_card:nth-child(1) .qd_pick_link {
    BACKGROUND: #FFC222;
    WIDTH: MAX-CONTENT;
    PADDING: 11.5px 20PX;
    BORDER-RADIUS: 9PX;
    color: #212121;
}

.qd_pickup_card:nth-child(1) .qd_pick_link svg path {
    fill: #212121;
}

.qd_pickup_card:nth-child(3) .qd_pick_link {
    color: #fff;
}

.qd_pickup_card:nth-child(3) .qd_pick_link svg path {
    fill: #fff;
}

.qd_pick_lg_text {
    padding: 0 40px;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 3;
}

.qd_pick_lg .qd_pick_cta span {
    height: 35px;
    width: 35px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #FFF;
    border-radius: 50%;
}

.qd_pick_lg .qd_pick_cta {
    gap: 31px;
    padding: 6px 7px 7px 31px;
    border-radius: 48px;
    font-size: 20px;
    background: #D21200;
}

.qd_price_row {
    display: flex;
    gap: 27px;
    margin: 49px 0;
    flex-wrap: wrap;
}

.qd_price_item {
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: 24px;
}

.qd_tag_red {
    background: #FF6F00;
    border-radius: 17px;
    font-size: 24px;
    margin-right: 0;
    width: max-content;
    line-height: 30px;
    padding: 5px 22.3px;
}

.qd_pick_cta {
    background: #BE001B;
    color: #fff;
    padding: 12px 30px;
    border-radius: 25px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    font-weight: bold;
    width: fit-content;
}

.qd_pick_img_wrap {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 3;
}

.qd_pick_img_lg {
    max-width: 100%;
    max-height: 90%;
    object-fit: contain;
}

/*.qd_pick_overlay {*/
/*    position: absolute;*/
/*    top: 0; left: 0; width: 100%; height: 100%;*/
/*    background: rgba(0,0,0,0.3);*/
/*    z-index: 0;*/
/*}*/
/*pickup section end*/
/*category section start*/
.qd_menu_section.wtrn_section {
    background-color: #F2ECE2;
    padding: 100px 0;
    position: relative;
    margin: 0;
}

.qd_menu_section.wtrn_section::after {
    content: "";
    height: 229px;
    display: inline-block;
    max-width: 1298px;
    width: 100%;
    margin: 0 auto;
    background-color: rgba(226, 122, 63, .20);
    z-index: 0;
    position: absolute;
    bottom: 20%;
    border-radius: 250px;
    filter: blur(80px);
    left: 50%;
    transform: translateX(-50%);
}

.qd_menu_section.wtrn_section.faq_menu_sec::after {
    display: none;
}

.qd_menu_section .qd_container {
    max-width: 1520px;
}

/* --- GRID LAYOUT --- */
.qd_menu_grid {
    display: flex;
    justify-content: center;
    column-gap: 30px;
    row-gap: 80px;
    align-items: center;
    flex-wrap: wrap;
}

.qd_menu_card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    color: inherit;
    position: relative;
    max-width: 18%;
    width: 100%;
}

/* --- IMAGE CONTAINER WITH SIDE DOTS --- */
.qd_image_container {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-bottom: -50px;
    z-index: 5;
}

.qd_menu_img_wrap {
    width: 235px;
    height: 235px;
    border-radius: 50%;
    border: #FFE4CA solid 3px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    background: #fff;
}

.qd_menu_img_wrap .qd_menu_img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* --- INFO BOX & HOVER --- */
.qd_menu_info {
    background-color: #FFF3E8;
    width: 100%;
    padding: 70px 15px 0px;
    border-radius: 25px;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: all 0.3s ease;
    z-index: 1;
}

.qd_menu_label {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 18px;
    line-height: 24px;
    color: #000;
}

.qd_category_trigger {
    width: 80px;
    height: auto;
    border: 1px solid #fff;
    border-radius: 200px;
    background: #FFE4CA;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333;
    padding: 10px;
    transition: all 0.3s ease;
    position: relative;
    bottom: -20px;
}

.qd_category_trigger img {
    filter: brightness(0);
}

/* HOVER EFFECT */
.qd_menu_card:hover .qd_menu_info {
    background-color: #ffffff;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
}

.qd_menu_card:hover .qd_category_trigger img {
    filter: brightness(100);
}

.qd_menu_card:hover .qd_category_trigger {
    background-color: #BE001B;
    border-color: #fff;
    color: #fff;
    border-width: 2px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.25);
}

.qd_row_3_start {
    grid-column-start: 2;
}

/*category section end*/
/*Location section start*/
.qd_location {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 25px;
}

.qd_location.wtrn_section {
    margin: 70px auto 68px auto;
    padding: 0 20px 0 0;
    max-width: 1920px;
    width: 100%;
}

.qd_hours_container {
    padding: 50px 0;
}

.qd_location img {
    width: 100%;
}

.qd_location .qd_cta {
    background: transparent;
    border: 2px solid #D21200;
    color: #000;
    box-shadow: none;
    font-size: 24px;
    padding: 17px 30px;
}

.qd_location .qd_visual_side {
    position: relative;
}

.qd_visual_side .qd_delivery_rider {
    position: absolute;
    right: 39px;
    bottom: -30px;
    height: 160px;
    width: unset;
}

.qd_location .qd_text_side {
    display: flex;
    flex-direction: column;
    gap: 18px;
    flex-shrink: 0;
    align-items: flex-start;
    max-width: 36.33%;
    width: 100%;
    margin-left: -60px;
}

.qd_location .qd_text_side .qd_sec_divider {
    margin-left: 0;
}

.qd_location .qd_text_side h2 {
    font-size: 40px;
    color: #D21200;
}

.qd-logo-section {
    width: unset !important;
    height: 45px !important;
}

.qd_location .qd_area_description {
    font-size: 20px;
    color: #392E2D;
    font-weight: 600;
}
.area_btn_wrap{
    display: flex;
    align-items: center;
    gap: 20px;
}

.wtrn_section {
    margin: 100px 0;
}

.qd_banner_container {
    display: flex;
    justify-content: center;
    padding-bottom: 160px;
    /* Space for circular images */
}

.qd_hours_banner {
    background-image: url("https://quickdeli.kokage.cc/wp-content/uploads/2026/01/Rectangle-20.png");
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 0px;
    width: 100%;
    padding: 36px 40px;
    position: relative;
    color: #ffffff;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.single-voice .qd_hours_banner {
    background: #E27A3F;
}

.qd_tag_black {
    background-color: #1E1E1E;
    padding: 3px 10px;
    border-radius: 30px;
    font-size: 20px;
    font-weight: 600;
    display: inline-block;
    color: #FFC222;
    line-height: normal;
}

.qd_tag_black:nth-of-type(1) {
    margin-bottom: 2px;
}

.qd_hours_big {
    display: block;
    font-size: 28px;
    font-weight: 900;
    margin-bottom: 25px;
}

.qd_disclaimer_text {
    font-size: 14px;
    line-height: 1.6;
    margin-top: 25px;
    opacity: 0.95;
    font-weight: 500;
}

.qd_hours_container .qd_container {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    max-width: 990px;
}

.qd_banner_circle {
    max-width: 420px;
    width: 100%;
    height: 420px;
    border-radius: 50%;
    border: 12px solid #E27A3F;
    position: absolute;
    z-index: 1;
}

.qd_banner_circle.qd_circle_left {
    left: -22%;
}

.qd_banner_circle.qd_circle_right {
    right: -22%;
}

.qd_banner_circle img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 50%;
    border: 10px solid #fff;
    z-index: 1;
}

.qd_hours_big_text {
    font-size: 28px;
    color: #1E1E1E;
    line-height: normal;
}

.qd_hours_big_text:nth-of-type(1) {
    margin: 0px 0 20px 0;
}

.qd_hours_disclaimer {
    color: #1E1E1E;
    font-size: 16px;
    line-height: normal;
    font-weight: 600;
    margin-top: 20px;
}

/*Location section end*/
/*News section start*/
.qd_news_section.wtrn_section {
    background-color: #F8F4EC;
    padding: 80px 0px;
    display: flex;
    justify-content: center;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    margin: 0;
}
.qd_news_section.wtrn_section .owl-stage{
    display: flex;
    align-items: stretch;
}
.qd_news_section.wtrn_section .owl-stage :is(.qd_news_card,.item){
        height: 100%;
}
.qd_news_slider_area {
    width: 1320px;
    margin: 0 auto;
}

.qd_news_card {
    background: #ffffff;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.03);
    border: 1px solid #FFE4CA;
    transition: all 0.3s ease;
    width: 100%;
    display: block;
}

.qd_news_card:hover {
    box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.06);
}

.qd_card_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.qd_card_date {
    background-color: #FFD40D;
    font-size: 16px;
    font-weight: 700;
    padding: 10px 22px;
    border-radius: 7px;
    color: #000;
}

.qd_card_icon {
    padding: 9px 29px;
    border: 1px solid #000;
    border-radius: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.3s ease;
}

.qd_news_card:hover .qd_card_icon {
    background-color: #d1001f;
    border-color: #fff;
    border-width: 2px;
    box-shadow: 0px 4px 10px rgba(209, 0, 31, 0.4);
}

.qd_card_icon svg {
    width: 20px;
    height: 20px;
    transition: stroke 0.3s ease;
}

.qd_news_card:hover .qd_card_icon svg path {
    fill: #fff;
}

.qd_card_text {
    font-size: 18px;
    color: #000000;
    font-weight: 600;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.6;
    min-height: calc(1.4em * 2);
}
.qd_news_more_wrap {
    text-align: center;
    margin-top: 40px;
}

.owl-theme .owl-dots {
    margin-top: 35px !important;
    display: flex !important;
    justify-content: center;
    gap: 10px;
}

.owl-theme .owl-dots .owl-dot span {
    width: 26px !important;
    height: 26px !important;
    margin: 0 !important;
    background: #d9d9d9 !important;
    border-radius: 8px !important;
    display: block;
    border: 3px solid transparent !important;
}

.owl-theme .owl-dots .owl-dot.active span {
    background: transparent !important;
    border: 5px solid #d1001f !important;
}

/*News section end*/

/* お知らせ一覧ページ /news/ */
.qd_news_list {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 30px 0;
}
.qd_news_list_card {
    display: block;
    border: 2px solid #E27A3F;
    border-radius: 12px;
    background: #FFF;
    padding: 24px 28px;
    text-decoration: none;
    color: inherit;
    transition: background 0.3s;
}
.qd_news_list_card:hover {
    background: #FFF7EF;
}
.qd_news_list_card__date {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #888;
    margin-bottom: 8px;
}
.qd_news_list_card__date svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}
.qd_news_list_card__title {
    font-size: 18px;
    font-weight: 700;
    color: #333;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 8px;
    line-height: 1.5;
}
.qd_news_list_card__excerpt {
    font-size: 14px;
    color: #666;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.6;
}

/* お知らせページ /news/ */
.qd_news_list_section .qd_container,
.qd_news_detail_section .qd_container {
    max-width: 1080px;
}
.qd_news_list_section .qd_voice_intro {
    font-size: 16px;
    line-height: 1.8;
    font-weight: 400;
}

/* ── 記事カード ── */
.qd_news_detail_section .qd_news_article {
    max-width: 860px;
    margin: -56px auto 0;
    padding: 48px 56px;
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, .08);
    position: relative;
    z-index: 2;
}

/* ヘッダー（日付バッジ + タイトル） */
.qd_news_article_head {
    padding-bottom: 24px;
    margin-bottom: 32px;
    border-bottom: 1px solid #f0e9e4;
}
.qd_news_detail_date {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 600;
    color: #D21200;
    background: #FFF1EF;
    padding: 6px 14px;
    border-radius: 999px;
    margin-bottom: 16px;
}
.qd_news_detail_date svg {
    width: 15px;
    height: 15px;
    flex-shrink: 0;
}
.qd_news_article_title {
    font-size: 26px;
    font-weight: 700;
    line-height: 1.5;
    color: #1e1e1e;
    margin: 0;
}

/* ── 本文タイポグラフィ ── */
.qd_news_detail_content {
    font-size: 16px;
    line-height: 1.9;
    color: #333;
}
.qd_news_detail_content p {
    margin: 0 0 1.4em;
}
.qd_news_detail_content > :first-child {
    margin-top: 0;
}
.qd_news_detail_content > :last-child {
    margin-bottom: 0;
}
.qd_news_detail_content h2 {
    font-size: 21px;
    font-weight: 700;
    line-height: 1.5;
    color: #1e1e1e;
    margin: 2em 0 .8em;
    padding-left: 14px;
    border-left: 5px solid #D21200;
}
.qd_news_detail_content h3 {
    font-size: 18px;
    font-weight: 700;
    color: #1e1e1e;
    margin: 1.8em 0 .6em;
    padding-bottom: .3em;
    border-bottom: 2px solid #f0e9e4;
}
.qd_news_detail_content a {
    color: #D21200;
    text-decoration: underline;
    text-underline-offset: 2px;
    word-break: break-word;
}
.qd_news_detail_content a:hover {
    opacity: .75;
}
.qd_news_detail_content img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
}
.qd_news_detail_content figure {
    margin: 1.5em 0;
}
.qd_news_detail_content blockquote {
    margin: 1.5em 0;
    padding: 16px 20px;
    background: #FFF9F4;
    border-left: 4px solid #FFD741;
    border-radius: 8px;
    color: #555;
}
.qd_news_detail_content hr {
    border: 0;
    border-top: 1px dashed #e0d8d2;
    margin: 2em 0;
}
.qd_news_detail_content table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5em 0;
    font-size: 15px;
}
.qd_news_detail_content th,
.qd_news_detail_content td {
    border: 1px solid #ece5e0;
    padding: 10px 14px;
    text-align: left;
}
.qd_news_detail_content th {
    background: #FFF1EF;
    font-weight: 700;
}

/* 戻るナビ */
.qd_news_article_nav {
    margin-top: 40px;
    padding-top: 28px;
    border-top: 1px solid #f0e9e4;
}

/* ── 関連（最新）のお知らせ ── */
.qd_news_related {
    max-width: 860px;
    margin: 48px auto 0;
}
.qd_news_related_title {
    font-size: 20px;
    font-weight: 700;
    color: #1e1e1e;
    margin: 0 0 20px;
    padding-left: 14px;
    border-left: 5px solid #D21200;
}
.qd_news_related_list {
    list-style: none;
    margin: 0;
    padding: 0;
    border-top: 1px solid #ece5e0;
}
.qd_news_related_item {
    border-bottom: 1px solid #ece5e0;
}
.qd_news_related_link {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 8px;
    color: #333;
    text-decoration: none;
    transition: background .2s ease, color .2s ease;
}
.qd_news_related_link:hover {
    background: #FFF9F4;
    color: #D21200;
}
.qd_news_related_date {
    flex-shrink: 0;
    font-size: 13px;
    font-weight: 600;
    color: #888;
}
.qd_news_related_link:hover .qd_news_related_date {
    color: #D21200;
}
.qd_news_related_text {
    flex: 1;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.6;
}
.qd_news_related_arrow {
    flex-shrink: 0;
    color: #c9c0ba;
}
.qd_news_related_link:hover .qd_news_related_arrow {
    color: #D21200;
}

@media (max-width: 768px) {
    .qd_news_detail_section .qd_news_article {
        padding: 32px 22px;
        margin-top: -36px;
        border-radius: 18px;
    }
    .qd_news_article_title {
        font-size: 21px;
    }
    .qd_news_detail_content h2 {
        font-size: 19px;
    }
    .qd_news_related_link {
        flex-wrap: wrap;
        gap: 4px 12px;
    }
}
/* お知らせページ end */

/*image grid section start*/
.qd_feature {
    background-color: #ffffff;
    padding: 100px 0 0 0;
}

.qd_feature .qd_feature_inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 34px;
}

.qd_feature .qd_feature_inner.qd_container {
    max-width: 1720px;
    z-index: 1;
    position: relative;
}

.qd_feature .qd_feature_content {
    max-width: 40%;
    width: 100%;
}

.qd_feature .qd_feature_gallery {
    max-width: 60%;
    width: 100%;
}

.qd_feature .qd_feature_gallery img {
    width: 100%;
}

.qd_feature .qd_feature_label {
    font-size: 14px;
    font-weight: 600;
    color: #111111;
    margin: 0 0 8px 0;
}

.qd_feature .qd_feature_title {
    font-size: 32px;
    font-weight: 700;
    color: #D21200;
    margin: 0 0 18px 0;
}

.qd_feature .qd_feature_desc {
    font-size: 16px;
    line-height: 26px;
    color: #392E2D;
    margin: 0 0 50px 0;
    font-weight: 600;
}

.qd_feature .qd_feature_btn_icon {
    font-size: 14px;
}

.qd_feature .qd_sec_divider {
    margin: 18px 0;
}

.qd_feature .qd_cta {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    font-size: 24px;
}

.qd_feature .qd_cta span {
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.qd_cta span img {
    width: 44px;
    height: auto;
}

.qd_feature {
    position: relative;
    max-width: 1920px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.qd_feature::before {
    content: "";
    position: absolute;
    max-width: 1611px;
    width: 100%;
    height: 478px;
    background: linear-gradient(79.54deg, #FFFFFF 48.14%, rgba(226, 122, 63, 0.2) 61%);
    clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%);
    top: -40px;
    left: 0px;
    z-index: 0;
}

.qd_feature::after {
    content: "";
    width: 457px;
    height: 490px;
    display: block;
    background-image: url("../img/bubble_orange_yellow.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: 0;
    bottom: 0;
}

/*image grid section end*/
/*footer start*/
.wwquick_footer {
    background-color: #FFEEE4;
    padding: 55px 20px;
    position: relative;
}

.wwquick_footer_logo .custom-logo-link img {
    width: unset;
    height: 47px;
    object-fit: contain;
}

.wwquick_footer_logo {
    width: 100%;
    text-align: left;
}

.wwquick_footer_logo .qd_footer_logo_img {
    height: 47px;
    width: auto;
    object-fit: contain;
}

.wwquick_footer_copyright {
    font-size: 18px;
    line-height: 40px;
    font-weight: 600;
    color: #000;
}

.wwquick_footer .qd_container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.wwquick_footer .wwquick_footer_links ul {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.wwquick_footer .wwquick_footer_links ul li {
    font-size: 18px;
    line-height: 40px;
    font-weight: 600;
}

.wwquick_footer .wwquick_footer_links ul li:not(li:nth-child(1), li:nth-child(6)) {
    border: solid #E27A3F;
    border-width: 0 1px 0 0px;
    padding: 0 22px 0 0px;
}

html body .wwquick_footer .wwquick_footer_links ul li:nth-child(2) {
    border-left: 1px solid #E27A3F;
    padding-left: 22px;
}
.wwquick_footer .wwquick_footer_links ul li a:hover{
    color: #D21200;
    text-decoration: underline;
    text-decoration-thickness: from-font;
}

.wwquick_footer .wwquick_footer_links {
    padding: 0 0 30px 0;
    margin: 30px 0;
    border: solid #00000020;
    border-width: 0px 0 1px 0;
}

.wwquick_footer .wwquick_footer_links h3 {
    text-align: center;
    margin-bottom: 16px;
    color: #D21200;
    font-size: 24px;
}

.wwquick_back_to_top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    z-index: 999;
    background: #000;
    height: 55px;
    width: 55px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    color: #fff;
    border: none;
    outline: none;
    font-size: 28px;
    line-height: 0px;
    cursor: pointer;
    padding: 6px;
}

.wwquick_back_to_top img {
    height: 100%;
    width: 100%;
    object-fit: contain;
}

/*Footer end*/

.qd_plate_cards {
    display: flex;
    justify-content: center;
    gap: 24px;
}

.qd_plate_card {
    width: 50%;
    text-align: left;
    position: relative;
    box-shadow: 0px 25px 30px 0px rgba(0, 0, 0, 0.25);
    margin-top: 17px;
    border-radius: 22px;
    background: #FFF;
}

.qd_plate_card:nth-of-type(2) .qd_plate_advice_tag_wrap {
    background: transparent;
}

.qd_plate_card_image {
    position: relative;
}

.qd_plate_card_image img {
    width: 100%;
    display: block;
    border-radius: 20px 20px 0 0;
}

.qd_plate_card_badge {
    position: absolute;
    top: -31px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #d4001a;
    color: #ffffff;
    font-size: 24px;
    font-weight: 600;
    padding: 13px 30px;
    border-radius: 40px;
    text-wrap: nowrap;
    border: 1px solid #fff;
    max-width: 366px;
    width: 100%;
    text-align: center;
}

.qd_plate_card_body {
    padding: 0px 26px 30px;
}

.qd_plate_card_sub {
    font-size: 18px;
    margin-bottom: 6px;
}

.qd_plate_card_title {
    font-size: 32px;
    font-weight: 700;
    color: #D21200;
    margin-bottom: 14px;
}

.qd_plate_advice_box {
    background-color: #FFF3E8;
    border-radius: 30px;
    padding: 20px;
    margin-bottom: 16px;
}

.qd_plate_advice_tag_wrap {
    display: flex;
    gap: 10px;
    background: #fff;
    border-radius: 80px;
    border-radius: 20px;
    margin-bottom: 14px;
    align-items: center;
}

.qd_plate_advice_tag_wrap span {
    font-size: 24px;
    font-weight: 600;
}

.qd_plate_advice_tag {
    display: inline-flex;
    background-color: #FFD900;
    color: #000000;
    font-size: 16px;
    font-weight: 700;
    padding: 10px;
    border-radius: 40px;
    justify-content: center;
    align-items: center;
}


.qd_plate_options {
    display: flex;
    gap: 12px;
}

.qd_plate_option {
    position: relative;
    flex: 1;
    background-color: #d4001a;
    color: #ffffff;
    text-align: center;
    padding: 14px 10px 18px;
    border-radius: 18px;
    margin-top: 20px;
}

.qd_plate_option::after {
    content: "";
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%) rotate(180deg);
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 10px solid #d4001a;
}

.qd_plate_option_title {
    font-size: 20px;
    font-weight: 600;
    line-height: 22px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.qd_yellow {
    color: #FFD900;
}


.qd_plate_people {
    display: flex;
    gap: 12px;
}

.qd_plate_people_item {
    flex: 1;
    font-size: 16px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    font-weight: 600;
}

.qd_plate_people_item::before {
    content: "";
    height: 30px;
    width: 30px;
    display: inline-block;
    background-image: url("https://quickdeli.kokage.cc/wp-content/uploads/2026/01/ph_users-three.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}


.qd_plate_note {
    font-size: 16px;
    color: #000000;
    line-height: 18px;
    text-align: center;
    font-weight: 600;
}

.plate_img_shape {
    /*width: 100%;*/
    /*height: 50px;*/
    /*background: #fff;*/
    /*position: absolute;*/
    /*bottom: -1px;*/
    /*clip-path: polygon(0 0, 102% 82%, 102% 103%, 0 100%);*/
    /*left: 0;*/
    /*right: 0;*/
    display: none;
}

/*.qd_plate_card_image::after {*/
/*    content: '';*/
/*    height: 20px;*/
/*    width: 20px;*/
/*    display: block;*/
/*    background-color: transparent;*/
/*    border-bottom-left-radius: 65px;*/
/*    bottom: 46px;*/
/*    position: absolute;*/
/*    box-shadow: -8px 0px 0 #fff;*/
/*    transform: rotate(-8deg);*/
/*    left: 1px;*/
/*}*/
/*.qd_plate_card_image::before {*/
/*    content: '';*/
/*    height: 20px;*/
/*    width: 20px;*/
/*    display: block;*/
/*    background-color: transparent;*/
/*    border-bottom-right-radius: 90px;*/
/*    bottom: 46px;*/
/*    position: absolute;*/
/*    box-shadow: 8px 3px 0 #fff;*/
/*    right: 1px;*/
/*    bottom: 8px;*/
/*    transform: rotate(16deg);*/
/*}*/
.qd_plate_options_wrap {
    flex: 1;
    background-color: #FFF;
    padding: 14px 13px;
    border-radius: 10px;
    border: 2px solid #fff;
}

/*.qd_plate_options_wrap.active {*/
/*    border-color: #D21200;*/
/*    background-color: #FFE7E5;*/
/*}*/
.qd_plate_section {
    background-image: url(https://quickdeli.kokage.cc/wp-content/uploads/2026/01/Rectangle-6.png);
    background-position: bottom right;
    background-size: 75%;
    background-repeat: no-repeat;
    background-color: #FFF;
    margin: 0;
    padding: 100px 0 110px 0;
}

.qd_recommended_menu {
    padding: 100px 0;
    background-color: #FAF4EE;
    margin: 0;
}
.qd_recommended_menu .qd_cart_btn_wrap .qd_cart_btn{
    position: relative;
}
body:has(.qd_recommended_menu .qd_cart_btn.qd-loading),
.qd_recommended_menu .qd_cart_btn.qd-loading {
    cursor: progress;
}
.qd_recommended_menu .qd_cta {
    font-size: 24px;
    display: inline-flex;
    gap: 10px;
    padding: 17px 30.5px;
    align-items: center;
}

.qd_recommended_menu .qd_cta span img {
    width: 44px;
}

.qd_recommended_menu .qd_cta span {
    height: auto;
    display: inline-flex;
}

.qd_tabs_nav {
    display: flex;
    justify-content: center;
    gap: 16px;
    list-style: none;
    padding: 0;
    margin-bottom: 50px;
}

.qd_tab_btn {
    background: #fff;
    padding: 14px 26px;
    border-radius: 12px;
    font-size: 24px;
    font-weight: 600;
    cursor: pointer;
    border: 5px solid #E4E4E4;
    min-width: 320px;
    text-align: center;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.qd_tab_btn.active {
    background: #D21200;
    color: #fff;
    border-color: #D21200;
}

.qd_tab_btn.active img {
    filter: brightness(100);
}

.qd_tab_btn span {
    display: inline-flex;
}

.qd_tab_btn.active::after {
    content: '';
    position: absolute;
    bottom: -19px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-top: 16px solid #D21200;
}

.qd_tab_content {
    display: none
}

.qd_tab_content.active {
    display: block
}

.qd_card_img_wrap {
    width: 424px;
    height: 424px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0;
    box-shadow: 0px 0px 23.7px 2px rgba(0, 0, 0, 0.25);
    margin-bottom: -100px;
    z-index: -1;
    position: relative;
}

.qd_card_img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.qd_card .qd_card_body {
    padding: 25px;
    background: #fff;
    border-radius: 22px;
    /* overflow: hidden; */
    transition: transform .3s;
    border: 5px solid rgba(189, 150, 117, 0.22);
}

.qd_card_title {
    font-weight: 700;
    font-size: 28px;
    margin-bottom: 18px;
    color: #E27A3F;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.owl-item.active.center .qd_card_title {
    color: #FFD900;
}

.owl-item.active.center .qd_card_body {
    background-color: #2D1312;
    border-color: #fff;
}

.owl-item.active.center .qd_action_wrap {
    border-color: #fff;
}

.owl-item.active.center .qd_counter_row .left span,
.owl-item.active.center .qd_total_price {
    color: #FFD900;
}

.qd_price_label {
    background: #FFC222;
    border-radius: 10px;
    padding: 10px 14px;
    display: flex;
    justify-content: space-between;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 26px;
}

.qd_price_label span:nth-of-type(2) {
    max-width: 60%;
    width: 100%;
    text-align: right;
    min-height: 48px;
}

.qd_counter_row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.qd_counter_row .right {
    display: flex;
    flex-direction: column;
    align-items: end;
}

.qd_counter_row .left {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.qd_counter_row .left span {
    font-size: 16px;
    color: #000;
    font-weight: 600;
    line-height: 26px;
}

.qd_qty_selector {
    border: 1px solid #ddd;
    border-radius: 20px;
    padding: 4px 12px;
    background: #fff;
}

.qd_counter_row .right .qd_total_price {
    color: #E27A3F;
    font-weight: 700;
    font-size: 24px;
    line-height: normal;
    max-width: 95px;
    width: 100%;
    text-align: end;
}

.owl-item.center .qd_total_price {
    color: #ffb3b3;
}

.qd_cart_btn_wrap {
    margin-top: 20px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.qd_cart_btn,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button,
.search-results .add_to_cart_button {
    background: #D21200;
    color: #fff;
    border: none;
    width: 100%;
    padding: 13px 31px;
    border-radius: 30px;
    font-weight: 700;
    cursor: pointer;
    flex: 1;
    font-size: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    text-align: center;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button{
    padding: 13px 29px;
}
.qd_cart__arrow_btn {
    background-color: #F0E8E1;
    padding: 13px 28px;
    border-radius: 90px;
    border: 2px solid #fff;
    display: flex;
}

.qd_cart__arrow_btn img {
    filter: brightness(0);
}

.qd_carousel {
    position: relative;
    padding-bottom: 50px;
}

.qd_recommended_menu .nav-arrow {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #fff;
    color: #fff;
    box-shadow: 0px 7px 25px 0px #0000001A;
    border: none;
    outline: none;
    cursor: pointer;
}

.qd_recommended_menu .nav-arrow:hover {
    background-color: #D21200 !important;
}

.qd_recommended_menu .nav-arrow:hover img {
    filter: brightness(0) invert(1);
}

.qd_recommended_menu .nav-arrow.qd_rec_prev img {
    transform: rotate(180deg);
}

.qd_recommended_menu .nav-dot {
    width: 26px ;
    height: 26px ;
    margin: 0 ;
    background: #fff ;
    border-radius: 8px ;
    display: block;
    border: 3px solid transparent;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
    cursor: pointer;
}

#tab2.qd_tab_content .owl-prev {
    margin-right: 150px !important;
}

#tab2.qd_tab_content .owl-next {
    margin-left: 150px !important;
}

.qd_recommended_menu .nav-dot.active {
    background: transparent ;
    border: 5px solid #d1001f ;
}

.qd_carousel .owl-prev {
    margin-right: 150px
}

.qd_carousel .owl-next {
    margin-left: 80px
}

.qd_bottom_cta {
    text-align: center;
}

.qd_action_wrap {
    border: dashed #000;
    border-width: 2px 0;
    padding: 14px 0;
}

.qd_quantity_form {
    display: inline-block;
}

.qd_quantity {
    display: flex;
    align-items: center;
    border: 1px solid #E4E7E9;
    border-radius: 93px;
    overflow: hidden;
    width: 140px;
    height: 44px;
    background: #E4E7E9;
}

.qd_quantity_btn {
    width: 40px;
    height: 44px;
    border: none;
    background-color: #fff;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
    font-family: var(--noto-font);
}

.qd_quantity_btn:active {
    background-color: #fafafa;
}

.qd_quantity_input {
    width: 60px;
    height: 44px;
    border: none;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    outline: none;
    background: transparent;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance: textfield;
}

.qd_tab_content .owl-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 50px 0 0 0;
}

.qd_tab_content .owl-nav button span {
    font-size: 28px;
    line-height: 34px;
}

.Qd_close_btn {
    position: absolute;
    top: 20px;
    right: 20px;
    height: 30px;
    width: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.Qd_close_btn img {
    height: 100%;
    width: 100%;
    object-fit: contain;
}

.qd_recommended_menu .main-tabs {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-bottom: 30px;
  flex-wrap: wrap;
}

.qd_recommended_menu .sub-tabs-wrapper {
  margin-bottom: 60px;
}

.qd_recommended_menu .sub-tabs {
  display: none;
  justify-content: center;
  gap: 15px;
  flex-wrap: wrap;
}

.qd_recommended_menu .sub-tabs.active {
  display: flex;
}

/* 予算/人数タブ・予算ボタンを約2/3サイズへ（font-size:18・アイコン25px四方） */
.qd_recommended_menu .main-tabs { gap: 13px; margin-bottom: 20px; }
.qd_recommended_menu .sub-tabs-wrapper { margin-bottom: 40px; }
.qd_recommended_menu .sub-tabs { gap: 10px; }
.qd_recommended_menu .qd_tab_btn {
  padding: 10px 18px;
  font-size: 18px;
  border-width: 3px;
  border-radius: 9px;
  min-width: 213px;
  gap: 8px;
}
.qd_recommended_menu .qd_tab_btn img {
  width: 25px;
  height: 25px;
  object-fit: contain;
}
.qd_recommended_menu .qd_tab_btn.active::after {
  bottom: -13px;
  border-left-width: 34px;
  border-right-width: 34px;
  border-top-width: 11px;
}

.qd_recommended_menu .slider-shell {
  position: relative;
  overflow: hidden;
  padding-top: 20px;
}

.qd_recommended_menu .track-outer {
  width: 100%;
  overflow: hidden;
  padding: 10px 0;
}

.qd_recommended_menu .slider-track {
  display: flex;
  gap: 20px;
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.qd_recommended_menu .slider-track.center-items {
  justify-content: center;
}

.qd_recommended_menu .qd_card {
  flex: 0 0 calc(33.333% - 14px);
  flex-direction: column;
}

.qd_recommended_menu .slider-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 38px;
  margin: 50px 0;
}
.qd_recommended_menu .slider-nav.inactive,
.qd_bottom_cta.inactive{
    display: none;
}

.qd_recommended_menu .nav-arrow.disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

.qd_recommended_menu .nav-dots {
  display: flex;
  gap: 9px;
}

/*single product page start*/
.wtrn_secondry_banner {
    position: relative;
    width: 100%;
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('https://quickdeli.kokage.cc/wp-content/uploads/2026/01/single-product_bg-scaled.webp');
    background-size: cover;
    background-position: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: left;
    color: #ffffff;
    padding: 317px 20px 142px 20px;
    box-sizing: border-box;
}
.single-product .wtrn_secondry_banner {
    padding: 200px 20px 99px 20px;
}
.wwskutype_wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.sku-badge-group{
    display: flex;
    align-items: center;
    gap: 10px;
}
.wwcds_producttyoe {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    white-space: nowrap;
}

span.wwcs_prounit {
    background-color:#FAB500;
}
span.salesunit{
    background-color:#B9DA03;
}
.badge-group{
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
span.badge{
    font-size:14px;
    font-weight:700;
    padding: 7px 15px;
    line-height:normal;
    border-radius:50px;   
}
.badge-group.pro-type span.active{
    background-color: #FAB500;
}
.badge-group.pro-type span.badge{
    border: 1px solid #FAB500;
}
.badge-group.pro-type span.option{
    border: 1px solid #94C0FF;
} 
.badge-group.pro-type span.other{
    border: 1px solid #C4C4C4;
}
span.badge.wwdc_squ.wwdc_squ{
    border: 1px solid #B9DA03;
}
.badge-group.pro-type span.wwdc_squ.active{
     background-color: #B9DA03;
}
.wtrn_secondry_banner h1 {
    font-size: 40px;
    color: #FFC222;
    margin: 0 0 20px 0;
    font-weight: 600;
    text-shadow: 0px 12px 4px rgba(0, 0, 0, 0.25);
    line-height: normal;
}

.wtrn_secondry_banner p {
    font-size: 20px;
    margin-bottom: 118px;
    max-width: 1190px;
    font-weight: 300;
    width: 100%;
    line-height: 55px;
}

.single-product .wtrn_secondry_banner p{
    margin-bottom: 29px;
}
.wtrn_secondry_banner .breadcrumb {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 16px;
    gap: 20px;
    flex-wrap: wrap;
    color: #FFC222;
    position: relative;
    font-weight: 600;
}

.qd_category_header.wwdc_space {
    margin-top: 50px;
}

.wtrn_secondry_banner .breadcrumb li {
    display: flex;
    align-items: center;
}

.wtrn_secondry_banner .breadcrumb li a {
    color: #FFC222 !important;
}

.single-post .wtrn_secondry_banner .breadcrumb li:nth-child(1) a {
    color: #FFF !important;
}

html body .wtrn_secondry_banner .breadcrumb li:nth-child(1) a {
    color: #FFF !important;
}


.wtrn_secondry_banner .breadcrumb li:not(:last-child)::after {
    content: "▶";
    font-size: 12px;
    color: #FFC222;
    margin-left: 20px;
}

.single-voice .wtrn_secondry_banner .breadcrumb li:not(:last-child) a {
    color: #FFF;
}

.product-container {
    margin: 50px 0;
}

.product-container .product-header {
    margin-bottom: 50px;
}

.product-container .product-subtitle {
    font-size: 20px;
    font-weight: bold;
    line-height: 36px;
}

.product-container .product-sku-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
        white-space: nowrap;
}

.product-container .product-title {
    font-size: 28px;
    color: #D21200;
    margin: 30px 0;
    font-weight: bold;
    font-weight: 600;
}
.wwwdc_ctach_line{
    margin: 26px 0 0 0;
    padding: 10px 19px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 16px;
    width: max-content;
}
.product-container .sku-badge-group{
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.product-container .sku-badge {
    background-color: #FFF3E8;
    padding: 7px 15px;
    border-radius: 30px;
    font-size: 14px;
    display: inline-block;
    font-weight: 600;
}

.product-container :is(.qd_price_box, .qd_variation_item) {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #FFF3E8;
    padding: 10px 19px;
    border-radius: 20px;
}

.product-container .qd_price_wrap {
    font-size: 24px;
    line-height: 26.67px;
    color: #D21200;
    font-weight: 600;
}

.product-container .qd_qty_wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.product-container .qd_qty_label {
    font-size: 14px;
    font-weight: 600;
    color: #000;
}

.product-container :is(.single-product-wwdc, .cart.qd_variation_form) {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.product-container .qd_variation_list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

html body .product-container .single-product-wwdc.cart::after,
html body .product-container .single-product-wwdc.cart::before {
    display: none;
}

.product-container .qd_custom_dropdown {
    position: relative;
    display: inline-block;
}

.product-container .qd_qty_dropdown {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: #FFFFFF;
    border: 2px solid #E4E7E9;
    border-radius: 93px;
    padding: 17px 58px 17px 20px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
}

.product-container .qd_dropdown_arrow {
    position: absolute;
    right: 20px;
    top: 46%;
    pointer-events: none;
    width: 10px;
    height: 10px;
    border-right: 2px solid #333;
    border-bottom: 2px solid #333;
    transform: translateY(-50%) rotate(45deg);
}

.product-container .qd_variation_left {
    text-align: left;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.product-container .qd_variation_left .qd_size_label {
    display: inline-flex;
    background-color: #FFFFFF;
    border-radius: 30px;
    padding: 7px 15px;
    color: #000;
    font-size: 14px;
    font-weight: 600;
    width: max-content;
    text-transform: capitalize;
}

.product-container .main-content-flex {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.product-container .gallery-section {
    width: 100%;
    min-width: 0;
}

.product-container .sticky-wrapper {
    position: relative;
    width: 100%;
}

.product-container .main-slider-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.product-container .main-slider-wrapper .item {
    aspect-ratio: 5 / 3;
}

.product-container .main-slider-wrapper .item img {
    height: 100%;
    width: 100%;
    object-fit: contain;
}
.postid-8866 .product-container .main-slider-wrapper .item img,
.postid-8865 .product-container .main-slider-wrapper .item img,
.postid-8864 .product-container .main-slider-wrapper .item img,
.postid-8863 .product-container .main-slider-wrapper .item img,
.postid-8862 .product-container .main-slider-wrapper .item img,
.postid-8861 .product-container .main-slider-wrapper .item img,
.postid-8860 .product-container .main-slider-wrapper .item img,
.postid-8859 .product-container .main-slider-wrapper .item img,
.postid-8858 .product-container .main-slider-wrapper .item img,
.postid-8857 .product-container .main-slider-wrapper .item img,
.postid-8856 .product-container .main-slider-wrapper .item img,
.postid-8855 .product-container .main-slider-wrapper .item img,
.postid-8854 .product-container .main-slider-wrapper .item img,
.postid-8853 .product-container .main-slider-wrapper .item img{
    object-fit: contain;
}
.postid-8866 .product-container .thumb,
.postid-8865 .product-container .thumb,
.postid-8864 .product-container .thumb,
.postid-8863 .product-container .thumb,
.postid-8862 .product-container .thumb,
.postid-8861 .product-container .thumb,
.postid-8860 .product-container .thumb,
.postid-8859 .product-container .thumb,
.postid-8858 .product-container .thumb,
.postid-8857 .product-container .thumb,
.postid-8856 .product-container .thumb,
.postid-8855 .product-container .thumb,
.postid-8854 .product-container .thumb,
.postid-8853 .product-container .thumb{
    height: 169px;
}


.product-container .main-slider img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}

.product-container .thumbnail-container {
    display: flex;
    gap: 24px;
    margin-top: 50px;
    justify-content: center;
}

.product-container .thumb {
    width: 120px;
    flex-shrink: 0;
    height: 120px;
    cursor: pointer;
    opacity: 0.6;
    transition: opacity 0.2s;
}

.product-container .owl-item.synced .thumb {
    opacity: 1;
}

.product-container .thumbnail-container .owl-item {
    justify-content: center;
    display: flex;
}

.product-container .thumb img {
    width: 100%;
    border-radius: 2px;
    height: 100%;
    object-fit: contain;
}

/* ===== 商品詳細 カスタムギャラリー（owl不使用・バランス改善） ===== */
.product-container .qd-gallery{
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
}
.product-container .qd-gallery__stage{
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 14px;
    overflow: hidden;
}
.product-container .qd-gallery__main{
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}
.product-container .qd-gallery__nav{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border: none;
    border-radius: 50%;
    background: rgba(255,255,255,.9);
    box-shadow: 0 2px 8px rgba(0,0,0,.15);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    padding: 0;
    transition: background .2s, box-shadow .2s;
}
.product-container .qd-gallery__nav:hover{ background:#fff; box-shadow:0 3px 12px rgba(0,0,0,.22); }
.product-container .qd-gallery__prev{ left: 12px; }
.product-container .qd-gallery__next{ right: 12px; }
.product-container .qd-gallery__nav::before{
    content:'';
    width: 11px;
    height: 11px;
    border-top: 2.5px solid #333;
    border-right: 2.5px solid #333;
}
.product-container .qd-gallery__prev::before{ transform: rotate(-135deg); margin-left: 5px; }
.product-container .qd-gallery__next::before{ transform: rotate(45deg); margin-right: 5px; }
.product-container .qd-gallery__thumbs{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 14px;
}
.product-container .qd-gallery__thumb{
    width: 76px;
    height: 76px;
    padding: 0;
    border: 2px solid transparent;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    cursor: pointer;
    opacity: .55;
    transition: opacity .2s, border-color .2s;
}
.product-container .qd-gallery__thumb:hover{ opacity: 1; }
.product-container .qd-gallery__thumb.is-active{ opacity: 1; border-color: #EE5858; }
.product-container .qd-gallery__thumb img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.product-container .order-section {
    width: 100%;
    border: 3px solid #FFEAD4;
    background: linear-gradient(to top, #FFEAD4 0%, #FFFFFF 65%);
    padding: 20px;
    border-radius: 30px;
}

.product-container .order-card {
    text-align: center;
}

.product-container .card-inner-top {
    padding: 10px;
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 10px;
    background-color: #FFF3E8;
    border-radius: 20px;
}

.product-container .plate-count {
    color: #d7000f;
    font-size: 18px;
    display: block;
}

.price-display {
    display: flex;
    justify-content: center;
    align-items: baseline;
    gap: 4px;
}

.product-container .price-value {
    font-size: 32px;
    font-weight: bold;
}

.product-container .price-unit {
    font-size: 20px;
    font-weight: bold;
}

.product-container .capacity-hint {
    color: #d7000f;
    font-size: 16px;
    margin: 0;
}

.product-container .cart-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin-bottom: 25px;
    flex-direction: column;
}

.product-container .quantity-selector-wrap {
    display: flex;
    align-items: center;
    gap: 20px;
}

.product-container .order-section button.qd_cart_btn {
    background-color: #D21200;
    border-radius: 90px;
    padding: 11.5px 0px;
    font-size: 20px;
    line-height: 26.67px;
    font-weight: 600;
    font-family: unset;
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
}

.product-container .order-section button.qd_cart_btn:hover {
    background-color: #000;
}

.quantity-selector {
    display: flex;
    align-items: center;
    background-color: #E4E7E9;
    border: 1px solid #dddddd;
    border-radius: 40px;
    height: 48px;
    width: max-content;
}

.qty-btn {
    background: #ffffff;
    border: none;
    width: 50px;
    height: 100%;
    font-size: 18px;
    cursor: pointer;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
}

.qty-btn.plus {
    border-radius: 0 25px 25px 0px;
}

#minusBtn {
    border-top-left-radius: 23px;
    border-bottom-left-radius: 23px;
}

#plusBtn {
    border-top-right-radius: 23px;
    border-bottom-right-radius: 23px;
}

.product-container .qty-input {
    width: 45px;
    height: 100%;
    text-align: center;
    border: none;
    background-color: #e9ecef;
    font-size: 16px;
    font-weight: bold;
}

.product-container .add-to-cart-btn {
    background-color: #d7000f;
    color: #ffffff;
    border: none;
    border-radius: 30px;
    padding: 15px 30px;
    height: auto;
    width: 100%;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.product-container .shipping-info {
    text-align: left;
    font-size: 14px;
    line-height: 1.6;
    background: #fff;
    border-radius: 20px;
    padding: 10px 10px;
}

/* 先頭行の上・末尾行の下の余白(half-leading)をトリムして上下空白を0pxにする */
.product-container .shipping-info ul li:first-child::before {
    content: "";
    display: block;
    height: 0;
    margin-top: -0.3em;
}

.product-container .shipping-info p:last-child::after {
    content: "";
    display: block;
    height: 0;
    margin-bottom: -0.3em;
}

.product-container .shipping-info ul {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.product-container .shipping-info ul li {
    list-style: none;
    list-style-position: inside;
    font-weight: 600;
}

.product-container .shipping-info p {
    margin-top: 10px;
    color: #727272;
}

.product-container .holiday-notice {
    margin-top: 20px;
    text-align: center;
    font-size: 14px;
    line-height: 1.5;
    color: #000;
    font-weight: 600;
}

.product-container .holiday-accent {
    color: #D21200;
    font-size: 16px;
    font-weight: 600;
    display: block;
    margin-bottom: 5px;
}

.product-container .owl-nav button.owl-prev,
.product-container .owl-nav button.owl-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50% !important;
    font-size: 24px !important;
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 13px !important;
    background-color: #FFF;
}
html body .product-container .owl-nav .disabled{
    display: none;
}

.product-container .owl-nav button.owl-prev:hover,
.product-container .owl-nav button.owl-next:hover {
    background-color: #D21200;
}

.product-container .owl-nav button.owl-prev img,
.product-container .owl-nav button.owl-next img {
    height: 100%;
    width: 100%;
    object-fit: contain;
}

.product-container .owl-nav button.owl-prev:hover img,
.product-container .owl-nav button.owl-next:hover img {
    filter: brightness(0) invert(1);
}

.product-container .owl-nav button.owl-next img {
    transform: rotate(180deg);
}

.product-container .owl-nav button.owl-prev {
    left: 10px;
}

.product-container .owl-nav button.owl-next {
    right: 10px;
}

.product-container .owl-dots,
.product-container .owl-nav {
    margin-top: 0 !important;
}


.product-container .owl-nav button.owl-prev:hover img,
.product-container .owl-nav button.owl-next:hover img {
    filter: brigtness(100);
}

.qd_list_section .wtrn_lists_grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
    margin-top: 50px;
}

.qd_list_section .wtrn_lists_grid>*:last-child:nth-child(odd) {
    grid-column: span 2;
}

.qd_list_section .wtrn_lists {
    background: #FFF9F4;
    border: 3px solid #FFEAD4;
    border-radius: 30px;
    padding: 25px;
    box-sizing: border-box;
}
.single-product .red{
    color: red;
}

.qd_list_section .wtrn_lists.last {
    display: flex;
    align-items: flex-start;
}

.qd_list_section .wtrn_lists.last h3 {
    margin-bottom: 0px;
    min-width: 150px;
}

.qd_list_section .wtrn_lists.last h3::before {
    display: none;
}

.qd_list_section .wtrn_lists.last div {
    display: flex;
    align-items: center;
    gap: 17px;
}
.wwdcs_mast {
    display: flex;
    align-items: flex-start;
}
.qd_list_section .wwdcs_mast h3{
    min-width: 200px;
    max-width: 200px;
    width: 100%;
}
.qd_list_section .wtrn_lists h3 {
    font-size: 18px;
    color: #000;
    margin: 0 0 20px 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.qd_list_section .wtrn_lists h3::before {
    content: "☆";
    color: #FFC222;
    font-size: 24px;
}
.qd_category_section_delta .wtrn_lists h3::before,
.qd_list_section.qd_category_section_delta .wtrn_lists li::before{
    display: none;
}

.qd_category_section_delta .wtrn_lists{
    background: #FFFFFF;
    border: 2px solid #FFEAD4;
    border-radius: 20px;
    padding: 20px 24px;
    margin-bottom: 16px;
}
.qd_category_section_delta .qd_block_content li a{
    background: #FFF9F4;
    padding: 5px 10px;
    border-radius: 20px;
    border: 1px solid #FFEAD4;
    font-weight: 700;
    transition: 0.2s ease;
    line-height: normal;
}
.qd_category_section_delta.qd_list_section .qd_block_content ul{
    display: flex;
    align-items: center;
    flex-direction: row;
    gap: 10px;
    flex-wrap: wrap;
}
.qd_list_section.qd_category_section_delta .wtrn_lists h3{
    gap: 17px;
}
.qd_category_section_delta .qd_block_content li a:hover{
    background:#FFEAD4;
}
.qd_list_section .wtrn_lists ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.qd_list_section .wtrn_lists li,
.qd_list_section .wtrn_lists .wwdcs_mast span {
    font-size: 16px;
    font-weight: 600;
    line-height: 2;
    padding-left: 0;
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
}

.qd_list_section .wtrn_lists li::before,
.qd_list_section .wtrn_lists .wwdcs_mast span::before {
    content: "";
    height: 24px;
    width: 24px;
    background-image: url("../img/true_Arrow.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    flex-shrink: 0;
    display: block;
}

.qd_list_section .wtrn_notes_box {
    background-color: #F8F8F8;
    padding: 20px;
    border-radius: 20px;
    margin-top: 50px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.8;
    color: #000000;
}
.qd_list_section .wtrn_notes_box a{
    color: #E27A3F;
    text-decoration: underline;
    margin-left: 20px;
}
.qd_list_section .wtrn_notes_box .caution{
    color: #727272;
}
 

.qd_list_section .qd_sec_title {
    font-size: 32px;
}


.wtrn_advice_section {
    background-color: #fff9f3;
    border: 1.5px solid #fdebd0;
    border-radius: 20px;
    padding: 20px;
    margin-top: 50px;
}

.wtrn_advice_section h4 {
    font-size: 20px;
    margin: 0 0 25px 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.wtrn_advice_section h4::before {
    content: "☆";
    color: #f39c12;
    font-size: 24px;
}

.advice_item {
    background-color: #ffffff;
    border-radius: 50px;
    padding: 23px 20px;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 15px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    font-size: 16px;
}

.advice_item span {
    color: #e67e22;
    font-weight: bold;
}

.advice_item::before {
    content: "";
    background-image: url("https://quickdeli.kokage.cc/wp-content/uploads/2026/01/true_orange.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    border-radius: 50%;
    height: 24px;
    width: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}

.advice_footer {
    margin-top: 20px;
    font-size: 13px;
    color: #666;
}

/*.page-id-8461 .qd_logo_area img,*/
/*.page-id-8461 .qd_logo_area svg {*/
/*    filter: brightness(0);*/
/*}*/
/*.page-id-8461 .qd_header.active .qd_logo_area img,*/
/*.page-id-8461 .qd_header.active .qd_logo_area svg {*/
/*    filter: none;*/
/*}*/


form.qd_variation_form::before,
form.qd_variation_form::after {
    display: none !important;
}

.product-container .woocommerce-message {
    max-width: 1340px;
    margin: 0 auto 50px auto;
}
/* overlay layout */
#product-popup{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.65);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 99999;
}
#product-popup-content{
    position: static;
    inset: unset;
    background:transparent;
    display: flex;
    justify-content: center;
    margin: 50px 0;
}
#product-popup .popup-content,
#product-popup-content .popup-content{
  background: #F2ECE2;
  border-radius: 30px;
  padding: 40px;
  width: 100%;
  max-width: 780px;
  max-height: 95vh;
  overflow-y: auto;
  position: relative;
}
#product-popup-content .popup-content{
    max-height: unset;
    border: 3px solid #E5E5E5;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 .wpcf7-response-output{
    padding: 10px 20px !important;
    font-size: 16px;
    font-weight: 400;
    color: #222222;
    text-align: center;
    letter-spacing: -1px;
}
/* 送信完了/エラーは画面中央のダイアログ(.qd-cf7-dialog)で表示するため、
   フォーム内のインライン応答メッセージは非表示 (#181) */
#product-popup form .wpcf7-response-output,
#product-popup-content form .wpcf7-response-output {
    display: none !important;
}
/* CF7 応答ダイアログ: 画面中央・右上×で閉じる (#181) */
.qd-cf7-dialog-overlay {
    position: fixed;
    inset: 0;
    z-index: 100001; /* お問い合わせモーダル(99999)より前面 */
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.45);
    padding: 20px;
}
.qd-cf7-dialog {
    position: relative;
    background: #FFF;
    border-radius: 16px;
    padding: 44px 44px 36px;
    max-width: 560px;
    width: 100%;
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.7;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.3);
}
.qd-cf7-dialog--sent {
    border: 3px solid #2E7D32;
    color: #1B5E20;
}
.qd-cf7-dialog--error {
    border: 3px solid #D21200;
    color: #B71C1C;
}
.qd-cf7-dialog__close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 30px;
    height: 30px;
    border: none;
    border-radius: 50%;
    background: #D21200;
    color: #FFF;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}
#product-popup-content form,
#product-popup form{
    display: grid;
    grid-template-columns: 2fr 2fr;
    gap: 20px;
}
#product-popup-content form label br,
#product-popup form label br{
    display: none;
}
#product-popup-content form p:nth-child(6),
#product-popup-content form p:nth-child(7),
#product-popup-content form p:nth-child(8),
#product-popup-content form .contact_info_text,
#product-popup-content form .wpcf7-response-output,
#product-popup form p:nth-child(6),
#product-popup form p:nth-child(7),
#product-popup form p:nth-child(8),
#product-popup form .contact_info_text,
#product-popup form .wpcf7-response-output,
.qd_submit_wrap{
    grid-column: span 2;
}
.wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.aborted .wpcf7-response-output{
    border-color: #D21200 !important;
}
.qd_submit_wrap{
    display: flex;
    align-items: center;
    gap: 15px;
    justify-content: space-around;
}
html body #product-popup-content .qd_submit_wrap .qd_submit_text,
html body #product-popup .qd_submit_wrap .qd_submit_text{
    font-size: 20px;
    font-weight: 700;
    color: #222222;
    margin: 0;
}
form.wpcf7-form .contact_info_text p{
    font-size: 18px;
    font-weight: 700;
    color: #1E1E1E;
}
form.wpcf7-form .contact_info_text{
    margin: 20px 0 20px 0;
}
html body #product-popup-content .qd_submit_wrap .wpcf7-submit,
html body #product-popup .qd_submit_wrap .wpcf7-submit{
    font-size: 24px;
    padding: 17px 30px;
}
html body .qd_submit_wrap .qd_submit_text a{
    color: #E73429;
    margin-right: 8px;
    text-decoration: underline;
    text-decoration-thickness: from-font;
}
html body form.wpcf7-form .qd_submit_wrap p {
    margin-bottom: 0 !important;
}
.popup-close{
  position: absolute;
    right: 20px;
    top: 15px;
    font-size: 24px;
    cursor: pointer;
    height: 30px;
    width: 30px;
    background: #d21200;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px;
    border-radius: 50%;
}
.popup-close img{
    height: 100%;
    width: 100%;
}

#product-popup .wpcf7-form p,
#product-popup-content .wpcf7-form p{
    margin-bottom: 10px;
    text-align: left;
    position: relative;
}
#product-popup .wpcf7-form-control-wrap,
#product-popup-content .wpcf7-form-control-wrap{
    width: 100%;
}
#product-popup .wpcf7-not-valid-tip,
#product-popup-content .wpcf7-not-valid-tip{
       color: #D21200;
    font-size: 12px;
    font-weight: 700;
    margin-top: 5px;
}
#product-popup label,
#product-popup-content label{
    font-size: 16px;
    font-weight: 700;
    color: #1e1e1e;
    /* display: flex; */
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: 7px;
}

#product-popup input,
#product-popup textarea,
#product-popup-content input,
#product-popup-content textarea {
  width: 100%;
  border: 1px solid #E4E7E9;
  border-radius: 10px;
  padding: 16px 14px;
  font-size: 14px;
  transition: .3s ease;
  margin-top: 8px;
}
#product-popup input::placeholder,
#product-popup textarea::placeholder,
#product-popup-content input::placeholder,
#product-popup-content textarea::placeholder{
    font-size: 14px;
    color: #77878F;
    font-weight: 400;
}

#product-popup input:focus,
#product-popup textarea:focus,
#product-popup-content input:focus,
#product-popup-content textarea:focus {
  outline: none;
  border-color: #d21200;
}

#product-popup textarea,
#product-popup-content textarea{
  resize: vertical;
}

#product-popup .wpcf7-submit,
#product-popup-content .wpcf7-submit {
    width: 100%;
    background: #d21200;
    color: #fff;
    font-weight: 700;
    border-radius: 200px;
    padding: 14px;
    border: none;
    cursor: pointer;
    transition: .3s ease;
    font-family: unset;
    font-size: 18px;
    margin-top: 10px;
}
#product-popup .wpcf7-spinner,
#product-popup-content .wpcf7-spinner{
    right: -7%;
    position: absolute;
    bottom: 50%;
    transform: translate(0%, 68%) scale(0.6);
    height: 24px;
    width: 24px;
}

/* hover effect */
#product-popup .wpcf7-submit:hover{
  background: #000;
}

form.wpcf7-form label strong{
    color: #D21200;
    font-size: 16px;
    font-weight: 700;
    margin-left: 8px;
}
/*single product page end*/
/*FAQ page start*/
.qd_faq_wrapper .qd_faq_content_list {
    display: none;
    flex-direction: column;
    gap: 20px;
    text-align: left;
    padding-bottom: 10px;
}

.qd_faq_wrapper .qd_faq_content_list.active {
    display: flex;
}

.qd_faq_wrapper .qd_faq_item {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.3s ease;
    border: 3px solid #E5E5E5;
}

.qd_faq_wrapper .qd_faq_item.active {
    border-color: #E27A3F;
    box-shadow: 4px 4px 0px 0px #E27A3F;
    border-radius: 16px;
}

.qd_faq_wrapper .qd_faq_header {
    padding: 30px;
    display: flex;
    align-items: center;
    cursor: pointer;
}

.qd_faq_wrapper .qd_faq_item:not(:last-child) {
    margin-bottom: 20px;
}

.qd_faq_wrapper .qd_faq_icon_box {
    width: 70px;
    height: 70px;
    background-color: #FFE4CA;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 30px;
    flex-shrink: 0;
    border: 1px solid #FFFFFF;
    padding: 10px;
}

.qd_faq_wrapper .qd_faq_icon_box img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.qd_faq_wrapper .qd_faq_question {
    font-weight: 600;
    font-size: 28px;
    line-height: 36px;
    color: #000;
    flex: 1;
    user-select: none;
}

.qd_faq_wrapper .qd_faq_toggle {
    font-size: 32px;
    color: #000;
    width: 40px;
    text-align: center;
    font-weight: 600;
    height: 40px;
    line-height: 36px;
}

.qd_faq_wrapper .qd_faq_answer {
    display: none;
    font-size: 16px;
    line-height: 40px;
    color: #2D1312;
    background: linear-gradient(180deg, #FFFFFF 0%, #FFEAD4 65%);
    padding: 30px;
}

.qd_faq_wrapper .qd_faq_item.active .qd_faq_answer {
    display: block;
}

.qd_faq_wrapper .qd_tabs_nav .qd_tab_btn img {
    width: 30px;
    height: 30px;
}

.faq_menu_sec .qd_menu_grid {
    grid-template-columns: repeat(6, 1fr);
    display: grid;
    column-gap: 24px;
}

.faq_menu_sec .qd_menu_grid .qd_category_trigger {
    padding: 10px;
}

.faq_menu_sec .qd_menu_grid .qd_menu_card {
    max-width: 100%;
}

.qd_menu_section.faq_menu_sec {
    background-color: #FFFAF2;
}

.qd_menu_section.faq_menu_sec .qd_back_bg {
    display: none;
}

.faq_menu_sec .qd_container {
    max-width: 1720px;
    width: 100%;
    margin: 0 auto;
}

.qd_plan_section .qd_plan_inner {
    border: 3px solid #E27A3F;
    border-radius: 40px 0 40px 0;
    padding: 35px 40px 45px;
    background-color: #fff;
    margin-bottom: 40px;
}

.qd_plan_section .qd_plan_inner .qd_category_trigger {
    background-color: #FFF;
    border-color: #FFECD8;
}

.qd_plan_title_box {
    display: flex;
    align-items: center;
    margin-bottom: 25px;
}

.qd_plan_title {
    font-size: 28px;
    font-weight: 600;
    line-height: normal;
    color: #000;
    display: flex;
    align-items: center;
    padding-right: 15px;
}

.qd-red {
    color: #D21200;
}

.qd_plan_title::after {
    content: '';
    display: inline-block;
    width: 15px;
    height: 15px;
    background-color: #D21200;
    border-radius: 50%;
    margin-left: 17px;
}

.qd_plan_title_line {
    flex-grow: 1;
    height: 1px;
    border-top: 1px dashed #BD9675;
}

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

.qd_plan_section .qd_plan_item {
    background-color: #FFFAF2;
    border: 1px solid #FFECD8;
    border-radius: 12px;
    padding: 25px 10px 40px;
    align-items: center;
    position: relative;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-shadow: 4px 4px 0px 0px #fff;
}

.qd_plan_section .qd_plan_item .qd_category_trigger {
    bottom: -22px;
    position: absolute;
    padding: 10px;
    border-radius: 90px;
}

.qd_plan_section .qd_plan_item:hover {
    border: 3px solid #E27A3F;
    box-shadow: 4px 4px 0px 0px #E27A3F;
    z-index: 2;
}

.qd_plan_section .qd_plan_name {
    font-size: 24px;
    font-weight: 700;
    color: #333;
    line-height: 1.5;
    text-align: center;
    letter-spacing: -1px;
}

.qd_plan_section .qd_plan_badge {
    background-color: #d70018;
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    padding: 5px 10px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin: 30px auto 0;
    position: relative;
}

.qd_plan_section .qd_plan_badge img {
    width: unset;
    display: block;
    flex-shrink: 0;
    height: 30px;
    object-fit: contain;
}

.qd_plan_section .qd_plan_badge::before {
    content: '';
    position: absolute;
    top: -7px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-bottom: 7px solid #d70018;
}

.qd_plate_faq .qd_plate_card_body {
    padding: 20px 0px 0px;
}

.qd_plate_faq .qd_plate_card_badge {
    top: 54px;
    left: 54px;
    transform: unset;
    border: 1px solid #423D3D;
    border-radius: 20px;
    background: rgba(0, 0, 0, 0.35);
    backdrop-filter: blur(4.449999809265137px);
    /* font-family: var(--inter-font); */
    font-weight: 700;
    line-height: 55px;
    font-size: 28px;
    max-width: 312px;
}

.qd_plate_faq .qd_plate_card_sub {
    font-weight: 600;
}

.qd_plate_faq .qd_arrow_btn {
    border: 2px solid rgba(255, 255, 255, 1);
    background-color: rgba(210, 18, 0, 1);
    color: #fff;
    padding: 7px 30px;
    height: max-content;
    width: max-content;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    margin-top: 20px;
}

.qd_plate_faq .qd_arrow_btn img {
    filter: brightness(100);
}

.qd_plate_section.qd_plate_faq {
    background-image: none;
    background-color: #FFEEE4;
    padding: 100px 0;
}

.qd_plate_faq .qd_plate_card {
    border: 1px solid #FFE4CA;
    padding: 24px;
    margin-top: 0px;
}

/*FAQ page end*/
/*Voice page start*/
.qd_voice_section.wtrn_section {
    margin: 67px 0 100px 0;
}

.qd_voice_intro {
    margin: 0 auto 50px;
    font-size: 20px;
    font-weight: 600;
    line-height: 55px;
    max-width: 1200px;
    width: 100%;
    text-align: center;
}

.qd_voice_section .qd_voice_inner {
    border: 3px solid #E5E5E5;
    border-radius: 30px;
    padding: 30px;
    background: linear-gradient(0deg, #FFEAD4 -2.45%, #FFF 64.14%), #FFF;
    margin-bottom: 40px;
}

.qd_voice_section .qd_voice_customer_row {
    display: flex;
    gap: 30px;
    margin-bottom: 30px;
    align-items: flex-start;
}

.qd_voice_section .qd_voice_customer_text {
    flex: 1;
    font-size: 18px;
    line-height: 55px;
    font-weight: 600;
    max-width: 50%;
    width: 100%;
}

.qd_voice_section .qd_voice_image_box {
    max-width: 50%;
    width: 100%;
}

.qd_voice_section .qd_voice_image_box img {
    width: 100%;
    border-radius: 30px;
    display: block;
}

.qd_voice_section .qd_voice_image_label {
    background-color: #FFECD8;
    border: 5px solid #FFEAD4;
    padding: 10px;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    border-radius: 20px;
    width: 95%;
    margin: -100px auto 0;
    position: relative;
    z-index: 2;
    line-height: 55px;
}

.qd_voice_section .qd_voice_reply_box {
    position: relative;
    border: 4px solid #E27A3F;
    border-radius: 40px;
    padding: 40px 40px 40px 110px;
    margin-bottom: 45px;
    font-size: 18px;
    line-height: 55px;
}

.qd_voice_section .qd_voice_reply_ribbon {
    position: absolute;
    left: -21px;
    top: 32px;
}

.qd_voice_section .qd_order_table_container {
    border: 4px solid #E27A3F;
    border-radius: 40px;
    padding: 40px;
    background-color: #fff;
}

.qd_voice_section .qd_order_title_box {
    display: flex;
    align-items: center;
    margin-bottom: 25px;
}

.qd_voice_section .qd_order_title {
    font-size: 18px;
    font-weight: 700;
    padding-right: 15px;
}

.qd_voice_section .qd_order_title::after {
    content: '';
    display: inline-block;
    width: 7px;
    height: 7px;
    background-color: #d70018;
    border-radius: 50%;
    margin-left: 10px;
}

.qd_voice_section .qd_order_title_line {
    flex-grow: 1;
    height: 1px;
    border-top: 1px dotted #ccc;
}

.qd_voice_section .qd_order_table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.qd_voice_section .qd_order_table tbody {
    border: 1px solid #D1D1D1;
}

.qd_voice_section .qd_order_table td {
    padding: 10px 30px;
    border-bottom: 1px solid #D1D1D1;
    background-color: transparent;
    font-size: 18px;
    line-height: 55px;
    font-weight: 300;
}

.qd_voice_section .qd_order_table td:first-child {
    color: #000;
    background-color: #FFFAF2;
}

.qd_voice_section .qd_order_table td:last-child {
    text-align: left;
    font-weight: 600;
    width: 277px;
    color: #000;
    background-color: #FFECD8;
}

.qd_voice_section .qd_order_total_row td {
    background-color: #000 !important;
    color: #fff;
    text-align: center !important;
    padding: 18px;
    font-weight: 300 !important;
    border-bottom: none;
    border-radius: 0;
    color: #fff !important;
}

.qd_voice_nav_wrapper {
    display: flex;
    align-items: center;
    margin-top: 30px;
}

.qd_voice_nav_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    width: max-content;
}

.qd_voice_nav_btn {
    background-color: #D21200;
    color: #fff;
    padding: 13px 30px;
    border-radius: 30px;
    width: max-content;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
    transition: opacity 0.2s;
    align-self: baseline;
    gap: 10px;
    line-height: normal;
}

.qd_voice_nav_item.next .qd_voice_nav_btn {
    align-self: end;
}

.qd_voice_nav_btn img {
    width: 24px !important;
    height: 24px !important;
}

.qd_voice_nav_btn:hover {
    opacity: 0.9;
}

.qd_voice_nav_btn i {
    font-style: normal;
    margin-left: 8px;
}

.qd_voice_nav_label {
    color: #000;
    font-size: 20px;
    font-weight: 600;
    white-space: nowrap;
}

.qd_voice_nav_item.next .qd_voice_nav_label {
    text-align: end;
}

.qd_voice_nav_item .qd_voice_nav_label:not(.qd_voice_nav_item.next .qd_voice_nav_label) {
    text-align: start;
}

.qd_voice_nav_item.next {
    margin-left: auto;
}

/*Voice page end*/
/*Quality page start*/
.qd_intro_section {
    position: relative;
}

.qd_intro_section .qd_intro_hero {
    width: 93%;
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: -300px;
    position: relative;
    z-index: 2;
    padding: 0 48px;
    padding-bottom: 35%;
    margin-left: auto;
    margin-right: auto;
}

.qd_intro_section .qd_intro_hero img {
    width: 100%;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
}

.qd_intro_section .qd_intro_content_box {
    background-image: url('../img/wood_bg.webp');
    background-size: 50px 50px;
    border-radius: 40px;
    padding: 80px 50px 50px;
    position: relative;
    z-index: 1;
    text-align: justify;
}

.qd_intro_section .qd_intro_text {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    margin-bottom: 40px;
}

.qd_quality_top .qd_container {
    max-width: 1417px;
}

.qd_intro_section .qd_intro_bottom_row {
    display: flex;
    gap: 20px;
    margin-bottom: -190px;
}

.qd_intro_section .qd_intro_bottom_img {
    flex: 1;
    border-radius: 15px;
    overflow: hidden;
    position: relative;
    padding-bottom: 21.2%;
}

.qd_intro_section .qd_intro_bottom_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
}

.qd_intro_sec {
    margin-top: 80px;
}

.qd_intro_sec .qd_container {
    position: relative;
}

.flot_1_quality {
    position: absolute;
    top: -264%;
    right: 7%;
}

.flot_1_quality img {
    width: unset;
    height: 500px;
    object-fit: scale-down;
    filter: drop-shadow(0px 15px 25px rgba(0, 0, 0, 0.25));
}

.flot_2_quality {
    display: inline-block;
    position: absolute;
    top: -10%;
    right: 3%;
}

.flot_3_quality {
    display: inline-block;
    position: absolute;
    top: 29%;
    left: 10px;
}

.flot_quality :is(img, svg) {
    height: 100%;
    width: 100%;
    object-fit: contain;
}

.qd_quality_feature_section .qd_quality_row {
    display: flex;
    margin-bottom: 130px;
    position: relative;
    margin-top: 100px;
}

.qd_quality_feature_section .qd_quality_image_col {
    max-width: 41.9%;
    width: 100%;
    position: relative;
    z-index: 1;
}

.qd_quality_feature_section .qd_quality_badge {
    position: absolute;
    top: -11%;
    left: 45px;
    background-color: #fff;
    border: 5px solid #FFEAD4;
    color: #D21200;
    font-size: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 700;
    padding: 12px 24px;
    z-index: 10;
    height: 150px;
    width: 150px;
}

.qd_quality_feature_section .qd_quality_img {
    position: relative;
    padding-bottom: 128.6%;
}

.qd_quality_feature_section .qd_quality_img img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    position: absolute;
    top: 0;
    bottom: 0;
}

.qd_quality_feature_section .qd_quality_text_col {
    max-width: calc(100% - 41.9%);
    width: 100%;
    z-index: 5;
    position: relative;
}

.qd_quality_feature_section .qd_quality_text_col .qd_quality_content_box {
    margin-left: -31%;
}

.qd_quality_feature_section .qd_quality_heading {
    font-size: 32px;
    font-weight: 700;
    color: #000000;
    padding: 56px 52px 56px 52px;
    line-height: 42px;
    background: linear-gradient(0deg, #FFEAD4 0%, rgba(255, 234, 212, 0) 50%);
}

.qd_quality_feature_section .qd_quality_content_box {
    background-color: #fff;
    border-radius: 0 0 40px 0;
    border: 3px solid #E27A3F;
    padding: 40px;
    font-size: 18px;
    line-height: 50px;
    color: #000;
    text-align: justify;
    box-shadow: 4px 4px 15px rgba(0, 0, 0, 0.03);
}

.qd_quality_feature_section .qd_quality_row.qd_reverse {
    flex-direction: row-reverse;
    justify-content: left;
}

.qd_quality_feature_section .qd_reverse .qd_quality_text_col .qd_quality_content_box {
    margin-left: 0;
    margin-right: -26%;
    border-radius: 0 0px 0px 40px;
}

.qd_quality_feature_section .qd_reverse .qd_quality_badge {
    left: auto;
    right: 45px;
}

.qd_corporate_badge {
    margin-bottom: 40px;
}

.qd_quality_feature_section {
    margin-top: 260px;
}

.qd_corporate_header {
    text-align: center;
    position: relative;
    margin-bottom: 108px;
}

.qd_corporate_path_container {
    position: absolute;
    top: 155px;
    left: 50%;
    transform: translateX(-50%);
    width: 66%;
    height: 60px;
    z-index: 1;
}

.qd_corporate_path_horizontal {
    position: absolute;
    top: 30px;
    left: 0;
    right: 0;
    border-top: 2px dotted #E27A3F;
}

.qd_corporate_path_vertical_center {
    position: absolute;
    top: 0;
    left: 50%;
    height: 50px;
    border-left: 2px dotted #E27A3F;
    transform: translateX(-1px);
}

.qd_corporate_path_vertical_side {
    position: absolute;
    top: 30px;
    height: 25px;
    border-left: 2px dotted #E27A3F;
    transform: translateX(-1px);
}

.qd_path_left {
    left: 0;
}

.qd_path_right {
    right: 0;
}

.qd_path_diamond {
    position: absolute;
    color: #E27A3F;
    font-size: 14px;
    transform: translate(-50%, -50%);
    line-height: 1;
}

.qd_diamond_top {
    top: 5px;
    left: 50%;
}

.qd_diamond_center {
    top: 58px;
    left: 50.06%;
}

.qd_diamond_left {
    top: 55px;
    left: 0;
}

.qd_diamond_right {
    top: 55px;
    left: 99.8%;
}

.qd_corporate_grid {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    z-index: 3;
    position: relative;
}

.qd_corporate_column {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.qd_corporate_img {
    width: 90%;
    padding-bottom: 47.5%;
    margin-bottom: -40px;
    z-index: 1;
    position: relative;
}

.qd_corporate_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
}

.qd_corporate_list_box {
    width: 100%;
    max-width: 100%;
    border: 2px dashed #E27A3F;
    border-radius: 20px;
    padding: 60px 20px 75px;
    background-color: #FFF3E8;
    flex-grow: 1;
}

.qd_corporate_list {
    list-style: none;
    font-size: 18px;
    line-height: 55px;
    color: #000;
    text-align: left;
}

.qd_corporate_footer {
    text-align: center;
    margin: 50px 0;
}

.qd_corporate_cta {
    background-color: #000;
    color: #fff;
    padding: 15px 70px;
    border-radius: 20px;
    text-decoration: none;
    font-weight: 400;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-size: 24px;
    line-height: 55px;
    border: 1px solid #d1d1d1;
}

.qd_corporate_cta span.qd_cta_icon {
    height: auto;
    display: flex;
}

.qd_hours_container.secondry .qd_hours_banner {
    background-image: none;
    background-color: #E27A3F;
}

.qd_hours_container.secondry .qd_hours_big_text {
    color: transparent;
    -webkit-text-stroke: 3px white;
    text-stroke: 3px white;
    font-size: 40px;
    line-height: 55px;
    paint-order: stroke fill;
    font-weight: 600;
    margin-bottom: 23px;
}

.qd_hours_container.secondry .qd_banner_circle {
    height: 320px;
    width: 320px;
}

.qd_hours_container.secondry {
    position: relative;
    max-width: 1040px;
    width: 100%;
    margin: 0 auto;
}

.qd_hours_container.secondry .qd_banner_circle.qd_circle_left {
    left: -7%;
    top: 0;
}

.qd_hours_container.secondry .qd_banner_circle.qd_circle_right {
    right: -7%;
    top: 3%;
}

.qd_corporate_section {
    background: linear-gradient(180deg, #FFECE1 0%, #FFFFFF 43%, #FFFFFF 100%);
    padding: 100px 0 0 0;
}

.qd_quality_actions {
    display: flex;
    align-items: center;
    gap: 29px;
    flex-wrap: wrap;
    margin-top: 28px;
}

.qd_quality_actions .left {
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-direction: column;
    color: #000000;
}

.qd_quality_actions .first_text {
    font-size: 18px;
    line-height: 55px;
    font-weight: 600;
}

.second_text {
    font-size: 16px;
    line-height: normal;
    font-weight: 300;
}

.qd_quality_actions .qd_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #D21200;
    padding: 10px 30px;
    border-radius: 50px;
    line-height: normal;
    gap: 10px;
    color: #fff;
    font-weight: 600;
    font-size: 24px;
}

/*Quality page end*/
/*area page start*/
.qd_area_section .qd_area_inner_box {
    background-color: #FFFAF2;
    border-radius: 30px;
    padding: 30px 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.qd_area_section.wtrn_section .qd_sec_title {
    font-size: 40px;
}

.qd_area_section.wtrn_section .qd_category_header {
    margin-bottom: 50px;
}

.qd_area_section .qd_area_map {
    flex: 1.61;
}

.qd_area_section .qd_area_map img {
    width: 100%;
    display: block;
}

.qd_area_section .qd_area_info_card {
    flex: 1;
    background-color: #fff;
    border: 4px solid #E27A3F;
    border-radius: 40px;
    position: relative;
    padding: 90px 30px 30px;
    text-align: center;
}

.qd_area_section .qd_area_badge_img_wrap {
    position: absolute;
    top: -19px;
    left: 50%;
    transform: translateX(-50%);
    width: 80.5%;
    z-index: 5;
}

.qd_area_section .qd_area_badge_img_wrap img {
    width: 100%;
    height: auto;
    display: block;
}

.qd_area_section .qd_area_list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.qd_area_section .qd_area_sub {
    font-size: 28px;
    font-weight: 600;
    color: #392E2D;
}

.qd_pop_area.qd_plan_section .qd_plan_name {
    min-height: 56px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #000;
    text-align: center;
    font-size: 24px;
    font-weight: 600;
    line-height: 24px;
}

.qd_pop_area.qd_plan_section .qd_plan_inner {
    border: 0;
    border-radius: 0;
    padding: 0;
    background-color: transparent;
    margin-bottom: 0;
}

.qd_pop_area.qd_plan_section .qd_plan_inner .qd_category_trigger {
    background-color: #FFECD8;
    border-color: #fff;
    border-width: 2px;
}

.qd_pop_area .qd_plan_item:hover .qd_category_trigger {
    background-color: #D21200 !important;
}

.qd_pop_area .qd_plan_item:hover .qd_category_trigger img {
    filter: brightness(100) !important;
}

.qd_pop_area.qd_plan_section .qd_plan_grid {
    display: flex;
    gap: 50px 24px;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.qd_pop_area.qd_plan_section .qd_plan_item {
    max-width: 15%;
    width: 100%;
    background-color: #FFF3E8;
    border: 1px solid #FFE4CA;
    padding: 16px 15px 25px;
    border-radius: 30px;
}

.qd_pop_area.qd_plan_section .qd_plan_item:hover {
    background-color: #FFF;
    box-shadow: 0px 25px 30px 0px rgba(0, 0, 0, 0.25);
    border-color: #FFF;
}

.qd_pop_area.qd_plan_section {
    background: linear-gradient(180deg, #FAF4EE 0%, #FFFFFF 100%);
    padding: 100px 0;
}

.qd_pop_area.qd_plan_section .qd_category_header {
    margin-bottom: 50px;
}

.qd_area_detail_flex_container {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-top: 40px;
}

.qd_area_detail_row {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 54px;
}

.qd_area_kana_label {
    background-color: #D21200;
    color: #fff;
    width: 103px;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    font-weight: 600;
    font-size: 24px;
    position: relative;
    flex-shrink: 0;
    margin-top: 2px;
    line-height: 36px;
    padding: 5px 10px;
}

.qd_area_kana_label::after {
    content: '';
    position: absolute;
    right: -8px;
    top: 50%;
    transform: translateY(-50%);
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 9px solid #D21200;
}

.qd_area_district_list {
    display: flex;
    flex-wrap: wrap;
    flex: 1;
    gap: 10px;
}

.qd_area_district_item {
    background-color: #FFFAF2;
    border: 1px solid #FFECD8;
    padding: 10px;
    border-radius: 8px;
    font-size: 18px;
    color: #000;
    line-height: normal;
    min-width: 200px;
    text-align: center;
    display: block;
    flex-shrink: 0;
    font-weight: 600;
}

.qd_plan_title_box .icon {
    margin-right: 17px;
    width: 46px;
    height: 46px;
}

.qd_plan_section.bg_color {
    background-color: #FFFAF2;
    padding: 100px 0;
}

.qd_plan_section .qd_category_header {
    margin-bottom: 50px;
}

.qd_hours_container.wtrn_section {
    margin: 50px 0;
}

.qd_hours_container.wtrn_section .qd_hours_banner {
    background-image: none;
    background-color: #E27A3F;
}
.qd_hours_banner .qd_hours_banner_inner{
    max-width: 67%;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
}
.qd_hours_banner .qd_hours_banner_inner .qd_tag_wrap{
    display: flex;
    align-items: center;
    width: 100%;
    gap: 20px;
}
.qd_hours_banner .qd_hours_banner_inner .qd_tag_wrap:has(.qd_big_text_wrap){
    align-items: flex-start;
}
.qd_hours_banner .qd_hours_banner_inner .qd_tag_wrap .qd_big_text_wrap{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.qd_hours_banner .qd_hours_banner_inner .qd_tag_wrap .qd_big_text_wrap .qd_hours_disclaimer{
        margin-top: 10px;
    font-size: 18px;
}
.qd_hours_banner .qd_hours_banner_inner .qd_tag_wrap .qd_hours_big_text{
    margin: 0;
}
.qd_hours_banner .qd_hours_banner_inner .qd_tag_wrap .single_hours{
    font-size: 18px;
}
.qd_hours_banner .qd_hours_banner_inner .qd_tag_wrap .single_hours .qd_popup_btn{
    font-size: 20px;
    color: #E27A3F;
    background: linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 41.35%, #fff 90.38%, #fff 100%);
    border-radius: 10px;
    border: 1px solid #E27A3F;
    padding: 3px 10px;
    line-height: 30px;
    font-weight: 700;
    margin-right: 20px;
    box-shadow: 0px 4px 4px 0px #00000040;
}
.qd_hours_banner .qd_hours_banner_inner .qd_tag_wrap .single_hours .qd_popup_btn:hover{
    background: linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 41.35%, #F1BD9F 90.38%, #E27A3F 100%);
}
.qd_hours_banner .qd_hours_banner_inner .qd_tag_wrap .qd_tag_black{
    min-width: 180px;
}
.qd_hours_banner .qd_hours_banner_inner .qd_hours_disclaimer{
    width: 100%;
    text-align: left;
}
.qd_hours_banner .qd_hours_banner_inner .qd_tag_wrap.btn_wrap .qd_cta{
    font-size: 18px;
    background: #000;
}
/*area page end*/
/*Testimonial page start*/
.qd_testimonial {
    overflow: hidden;
    margin-bottom: 100px;
}

.qd_testimonial__slider {
    position: relative;
}

.qd_testimonial__card {
    padding: 0 50px 0 0;
}

.qd_testimonial__card-inner {
    overflow: hidden;
    border-radius: 30px;
    border: 3px solid #E5E5E5;
    background: linear-gradient(0deg, #FFEAD4 -2.45%, #FFF 64.14%), #FFF;
    padding: 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

.qd_testimonial__card-image {
    position: relative;
    width: 100%;
    padding-bottom: 26.45%;
    overflow: hidden;
}

.qd_testimonial__card-image img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 30px;
}

.qd_testimonial__card-badge {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    text-align: center;
    border-radius: 20px;
    border: 1px solid #423D3D;
    background: rgba(0, 0, 0, 0.35);
    backdrop-filter: blur(4.449999809265137px);
    padding: 22.5px 0;
    max-width: 911px;
    width: 100%;
    margin: 0 auto;
    transform: translateY(-50%);
    color: #FFF;
    font-size: 28px;
    font-style: normal;
    font-weight: 700;
    line-height: 55px;
}

.qd_testimonial__card-body {
    padding: 40px 40px 40px 80px;
    margin-left: 50px;
    margin-right: 50px;
    position: relative;
    border-radius: 40px;
    border: 4px solid #E27A3F;
    background: #FFF;
}

.qd_testimonial__slider .owl-stage {
    padding: 0px !important;
}

.qd_testimonial__card-text {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 55px;
    display: -webkit-box;
    -webkit-line-clamp: 8;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: 490px;
    height: 100%;
}

.qd_testimonial__quote-mark {
    position: absolute;
    left: -50px;
    top: 40.5px;
}

.qd_testimonial__quote-mark img {
    width: 100px;
    height: 100px;
    object-fit: contain;
}

.qd_testimonial__read-more,
.qd__btn,
#wwcs_submit_order.qd__btn {
    display: flex;
    padding: 13px 30px;
    justify-content: center;
    align-items: center;
    gap: 15px;
    border-radius: 200px;
    background: #D21200;
    color: #FFF;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    border: 1px solid #fff;
    transition: 0.3s linear;
    cursor: pointer;
    font-family: var(--noto-font);
}

.qd__btn {
    font-weight: 600;
}

.qd_testimonial__read-more img,
.qd__btn img,
#wwcs_submit_order.qd__btn img {
    transition-delay: 0.1s;
}

.qd_testimonial__read-more:hover,
.qd__btn:hover,
#wwcs_submit_order.qd__btn:hover {
    background-color: #fff;
    border-color: #D21200;
    color: #000;
}

.qd_testimonial__read-more:hover img,
.qd__btn:hover img,
#wwcs_submit_order.qd__btn:hover img {
    filter: brightness(0);
}

.qd_testimonial__read-more-icon img,
.qd__btn .qd__read-more-icon img {
    width: 44px;
    height: 44px;
    aspect-ratio: 1 / 1;
}

.qd_testimonial__slider .owl-stage-outer {
    overflow: visible;
}

.qd_testimonial__slider .owl-item {
    opacity: 0.35;
    transition: opacity 0.35s ease;
}

.qd_testimonial__slider .owl-item.active {
    opacity: 1;
}

.qd_testimonial__slider .owl-dots {
    display: none;
}

.qd_testimonial__slider .owl-nav {
    display: none;
}

.qd_voice_intro.page-testimonial {
    margin-top: 67px;
}

/*Testimonial page end */
/*Login page start*/
.wtrn_secondry_banner.wtrn_log_reg {
    padding: 247px 20px 99px 20px;
    background-position: top;
}

.wtrn_secondry_banner.wtrn_log_reg p {
    margin-bottom: 74px;
}

.qd_login {
    width: 100%;
    max-width: 780px;
    margin: 50px auto 50px auto;
    display: flex;
    flex-direction: column;
    gap: 50px;
}

.qd_login__box {
    border-radius: 30px;
    border: 3px solid #E5E5E5;
    background: #FFF9F4;
    padding: 40px;
}
.qd_login__box.qd_reg_box{
    display: flex;
    flex-direction: column;
    gap: 50px;
}

.qd_login__box.qd_reg_box .qd_login__desc{
    margin-bottom: 0;
}
.qd_login__box.qd_reg_box .qd_login__form_inner{
     display: flex;
    flex-direction: column;
    gap: 30px;
}
.qd_login__box.qd_reg_box .qd_login__form_inner h3{
    color: #D21200;
    font-size: 20px;
    font-weight: 700;
}
.qd_login__box.qd_reg_box ul li{
    font-size: 16px;
    color: #1E1E1E;
    font-weight: 700;
    line-height: 35px;
}
.qd_login__desc {
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    color: #1E1E1E;
    margin-bottom: 50px;
}

.qd_login__form {
    display: flex;
    flex-direction: column;
}

.qd_login .qd_testimonial__read-more {
    width: max-content;
    padding: 17.5px 30px;
}

.qd_login__form .qd_login__form_inner {
    border-radius: 40px;
    background: #FFF;
    padding: 40px;
}

.qd_login__form .qd_login__field {
    flex-direction: column;
    align-items: stretch;
}

.qd_login__field {
    display: flex;
    flex-direction: row;
    gap: 7px;
    margin-bottom: 30px;
    justify-content: space-between;
    align-items: center;
}

.qd_login__field:last-child {
    margin-bottom: 0;
    grid-column: span 2;
}

.qd_login__field-col {
    flex: 1;
}

.qd_login__label .qd_reg__required {
    color: #D21200;
    font-weight: 700;
    font-size: 16px;
    margin-left: 3px;
}

.qd_login__form .qd_login__label {
    max-width: 100%;
}

.qd_login__label {
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 8px;
    max-width: 215px;
    width: 100%;
}

.qd_login__input-wrap {
    position: relative;
}

.qd_login__input,
.woocommerce .woocommerce-MyAccount-content .woocommerce-EditAccountForm input.woocommerce-Input,
.woocommerce form.wwcs-multi-step-checkout .form-row  :is(input,select),
.woocommerce form.wwcs-multi-step-checkout :is(input,select) {
    width: 100%;
    padding: 15px 12px 17px 12px;
    color: #1e1e1e;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    border-radius: 10px;
    border: 1px solid #E4E7E9;
    background: #FFF !important;
    font-size: 16px;
}

.qd_login__input:focus {
    border-color: #c0392b;
    box-shadow: 0 0 0 3px rgba(192, 57, 43, 0.1);
}

/* error field state */
.qd_login__field.has-error .qd_login__input {
    border-color: #e74c3c;
    background-color: #fff8f8;
}

.qd_login__field.has-error .qd_login__input:focus {
    box-shadow: 0 0 0 3px rgba(231, 76, 60, 0.12);
}

.qd_login__field-error:empty {
    height: 0px;
}

.qd_login__field-error {
    display: none;
    font-size: 12px;
    color: #E73429;
    line-height: 1.2;
    display: block;
    font-weight: 600;
    height: auto;
}

.qd_login__toggle-pw {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #999;
    transition: color 0.2s ease;
    outline: none;
}

.qd_login__toggle-pw:hover {
    color: #555;
}

.qd_login__toggle-pw svg {
    width: 20px;
    height: 20px;
    display: block;
    stroke: #191C1F;
}

.qd_login__forgot {
    color: #1e1e1e;
    margin: 50px 0;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
}

.qd_login__forgot-link {
    color: #E73429;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.qd_login__forgot-link:hover {
    color: #922b21;
}

.qd_login__submit-spinner {
    display: none;
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255, 255, 255, 0.4);
    border-top-color: #fff;
    border-radius: 50%;
    animation: qd-spin 0.7s linear infinite;
}

.qd_login__submit-arrow {
    display: flex;
    justify-content: center;
    align-items: center;
}

.qd_login__submit.is-loading .qd_login__submit-text,
.qd_login__submit.is-loading .qd_login__submit-arrow {
    display: none;
}

.qd_login__submit.is-loading .qd_login__submit-spinner {
    display: block;
}

@keyframes qd-spin {
    to {
        transform: rotate(360deg);
    }
}

.qd_login__success-screen {
    display: none;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 10px 0 4px;
    animation: qd-fadeIn 0.4s ease forwards;
}

.qd_login__success-screen.is-visible {
    display: flex;
}

.qd_login__success-check {
    width: 64px;
    height: 64px;
    background-color: #edf9f1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    margin-left: auto;
    margin-right: auto;
}

.qd_login__success-check svg {
    width: 32px;
    height: 32px;
    color: #27ae60;
}

.qd_login__success-title {
    font-size: 18px;
    font-weight: 700;
    color: #1e6b3a;
    letter-spacing: 0.04em;
    margin-bottom: 10px;
}

.qd_login__success-msg {
    font-size: 13px;
    color: #555;
    line-height: 1.75;
    letter-spacing: 0.02em;
}

@keyframes qd-fadeIn {
    from {
        opacity: 0;
        transform: translateY(-6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.qd_login__submit-arrow svg path {
    transition-delay: 0.1s;
}

.qd_login__box .qd_testimonial__read-more:hover .qd_login__submit-arrow svg path,
.qd__btn:hover .qd_login__submit-arrow svg path {
    fill: #000;
}

.swal2-confirm {
    background-color: #D21200 !important;
}

.swal2-container {
    z-index: 2000;
}

/*Login page end*/
/*registar page start*/
.qd_reg {
    width: 100%;
    max-width: 1200px;
    margin: 50px auto 50px auto;
}

.qd_reg__box {
    border-radius: 30px;
    border: 3px solid #E5E5E5;
    background: #FFF9F4;
    padding: 40px;
}

.qd_reg__tabs {
    display: flex;
    gap: 30px;
    margin-bottom: 50px;
}

.qd_reg__tab {
    flex: 1;
    position: relative;
    border-radius: 20px;
    padding: 31.5px 0px 32.5px 0px;
    border: 5px solid #E4E4E4;
    background: #FFF;
    color: #000;
    text-align: center;
    font-size: 24px;
    font-weight: 600;
    line-height: 36.67px;
    text-transform: capitalize;
    /* cursor: not-allowed; */
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
    user-select: none;

}


.qd_reg__tab.is-active,
.qd_reg__tab.wwcs_tab_active {
    background-color: #D21200;
    border-color: #D21200;
    color: #fff;
    cursor: default;
    pointer-events: none;
}

.qd_reg__tab.is-active::after,
.qd_reg__tab.wwcs_tab_active::after {
    content: '';
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 40px solid transparent;
    border-right: 40px solid transparent;
    border-top: 20px solid #D21200;
}

.qd_reg__hint {
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 50px;
}
.qd_reg.ed_inner_form .qd_reg__hint{
      color: #D21200;
    font-size: 20px;
    font-weight: 700;
}
.qd_reg__hint span {
    color: #D21200;
}
.qd_reg__step .is-disabled {
    opacity: 0.5;
    pointer-events: none;
}

#qd-step-1 .qd_reg__step_inner {
    display: grid;
    grid-template-columns: 2fr 2fr;
    gap: 0 16px;
}
#qd-step-1 .qd_reg__step_inner .qd_reg__note{
    grid-column: span 2;
    margin-top: 22px;
}
#qd-step-1 .wwdcs_changeof_loc .qd_lohgin_tax_tele{
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
}
#qd-step-1 .wwdcs_changeof_loc #f-pw {
    width: 100%;
}
.qd_reg__step_inner,
.qd_reg__step_inner_account {
    border-radius: 40px;
    background: #FFF;
    padding: 40px;
}

.qd_reg__step {
    display: none;
}

.qd_reg__step.is-active {
    display: block;
}

.qd_reg__postcode-row {
    display: flex;
    align-items: center;
    gap: 8px;
}

.qd_reg__step .qd_login__field-error {
    margin-top: 10px;
}

.qd_reg__postcode-input {
    /* max-width: 582px;
    width: 100%; */
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}
#qd-step-2 .qd_reg__postcode-btn{
    max-width: 220px;
    width: 100%;
}

.qd_reg__postcode-input .qd_login__input.qd_small_input{
    max-width: 100px;
    width: 100%;
}
.qd_reg__postcode-input .qd_login__input.qd_large_input{
    max-width: 166px;
    width: 100%;
}
.qd_reg__postcode-btn {
    display: flex;
    padding: 8px 16px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    align-self: stretch;
    border-radius: 10px;
    background: #1E1E1E;
    flex: auto;
    color: #FFF;
    font-family: "Hiragino Mincho ProN";
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
}

.qd_reg__postcode-btn:hover {
    background-color: #111;
}

.qd_reg__addr-inline {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    flex: 1;
}

.qd_reg__addr-inline .qd_login__input-wrap--pref {
    max-width: 288px;
    flex-shrink: 0;
    width: 100%;
}

.qd_reg__addr-inline .qd_login__input-wrap--city {
    flex: 1;
}

.qd_login__input--select {
    padding-right: 28px;
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cg%20clip-path%3D%22url(%23clip0_1_8288)%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M10.5893%2013.0883C10.433%2013.2445%2010.2211%2013.3323%2010.0001%2013.3323C9.77915%2013.3323%209.56723%2013.2445%209.41096%2013.0883L4.69679%208.37415C4.6172%208.29727%204.55371%208.20532%204.51004%208.10365C4.46636%208.00198%204.44338%207.89263%204.44241%207.78198C4.44145%207.67133%204.46254%207.5616%204.50444%207.45919C4.54634%207.35677%204.60822%207.26373%204.68646%207.18548C4.7647%207.10724%204.85775%207.04536%204.96016%207.00346C5.06257%206.96156%205.17231%206.94048%205.28296%206.94144C5.39361%206.9424%205.50296%206.96539%205.60463%207.00906C5.7063%207.05274%205.79825%207.11622%205.87512%207.19581L10.0001%2011.3208L14.1251%207.19581C14.2823%207.04401%2014.4928%206.96002%2014.7113%206.96192C14.9298%206.96382%2015.1388%207.05146%2015.2933%207.20596C15.4478%207.36047%2015.5355%207.56948%2015.5374%207.78798C15.5393%208.00648%2015.4553%208.21698%2015.3035%208.37415L10.5893%2013.0883Z%22%20fill%3D%22black%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22clip0_1_8288%22%3E%3Crect%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22white%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    cursor: pointer;
    color: #000;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    padding: 10.5px 46px 10.5px 16px;
    font-family: unset;
}

.qd_login__field input:placeholder {
    color: rgba(0, 0, 0, 0.52);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

.qd_reg__note {
    margin-top: 8px;
    padding: 10.5px 12px;
    border-radius: 10px;
    background: #FFE3E0;
    color: #1e1e1e;
    font-size: 14px;
    font-weight: 600;
    line-height: normal;
    position: relative;
}

.qd_reg__check-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.qd_reg__check {
    width: 30px;
    height: 30px;
    accent-color: #D21200;
    cursor: pointer;
    flex-shrink: 0;
}

.qd_reg__check-label {
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    cursor: pointer;
}

.qd_reg__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 50px;
}
.qd_reg__footer .right_section{
    display: flex;
    align-items: center;
    gap: 10px;
}
.qd_reg__footer .foot_actions {
    text-align: center;
    padding: 20px 0;
}

.qd_reg__footer .foot_actions a {
    color: #E73429;
    text-decoration: underline;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0;
}

.qd_reg__footer .separator {
    color: #1e1e1e;
    font-size: 24px;
}
#qd-step-3 .qd_login__field {
    align-items: flex-start;
}

#f3-corptel .qd_reg__note,
.qd_reg__note.note_red {
    color: #E73429;
}

.qd_login__submit--back {
    background: #000;
}

.qd_login__submit--back .qd_btn__submit-arrow {
    transform: rotate(-180deg);
}

.label_Self_align {
    align-self: center;
    margin-left: 8px;
}

.num_wrap {
    display: flex;
    align-items: center;
    gap: 10px;
}

.qd_lohgin_tax_tele {
    display: flex;
    align-items: center;
    justify-content: center;
}

.qd_lohgin_tax_tele #f2-tel {
    margin-bottom: 0;
}

.qd_reg__box:has(#qd-tab-3.is-active) .qd_reg__hint {
    display: none;
}

/*registar page end*/
/*Adding cart popup start*/
.qd_adding_cart_popup__overlay {
    position: fixed;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.40) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    z-index: 2000;
}

.qd_adding_cart_popup {
    display: flex;
    max-width: 1320px;
    width: 100%;
    padding: 30px;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
    border-radius: 30px;
    background: #FFF;
    box-shadow: 0 38px 31.5px 0 rgba(226, 122, 63, 0.20);
    position: relative;
    animation: qd-up 0.22s ease;
}

@keyframes qd-up {
    from {
        opacity: 0;
        transform: translateY(14px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.qd_adding_cart_popup__close {
    position: absolute;
    top: 22px;
    right: 24px;
    background: none;
    border: none;
    cursor: pointer;
    line-height: 1;
    transition: color 0.15s;
}

.qd_adding_cart_popup__close:hover {
    color: #111;
}

.qd_adding_cart_popup__hdr {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.qd_adding_cart_popup__check {
    width: 37px;
    height: 37px;
    flex-shrink: 0;
}

.qd_adding_cart_popup__check :is(svg, img) {
    width: 100%;
    height: 100%;
}

.qd_adding_cart_popup__title {
    color: #09AD00;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

.qd_adding_cart_popup__top {
    display: flex;
    gap: 30px;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
}

.qd_adding_cart_popup__pnl {
    padding: 24px;
    border-radius: 40px;
    background: #F8F8F8;
    max-width: 50%;
    width: 100%;
}

.qd_adding_cart_popup__pnl-head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}
.qd_adding_cart_popup__pnl-head .pnl_naming_wrap{        
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.qd_adding_cart_popup__pnl-img {
    width: 100px;
    height: 100px;
    aspect-ratio: 1 / 1;
    border-radius: 10px;
    border: 2px solid #FFF;
    box-shadow: 0 0 23.7px 2px rgba(0, 0, 0, 0.25);
}

.qd_adding_cart_popup__pnl-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.qd_adding_cart_popup__pnl-name {
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
}

.qd_adding_cart_popup__pnl-meta {
    display: flex;
    gap: 8px;
}

.qd_adding_cart_popup__pnl-meta-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.qd_adding_cart_popup__pnl-meta-lbl {
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    text-wrap: nowrap
}

.qd_adding_cart_popup__ups .qd_adding_cart_popup__pnl-meta-lbl {
    align-self: center;
}

.qd_adding_cart_popup__pnl-meta-val {
    border-radius: 30px;
    background: #FFF3E8;
    padding: 14.5px 10px;
    color: #000;
    text-align: center;
    font-size: 14px;
    font-weight: 600;
    line-height: normal;
}

.qd_adding_cart_popup__sum {
    border-radius: 40px;
    background: #F8F8F8;
    padding: 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    max-width: 50%;
    width: 100%;
}

.qd_adding_cart_popup__sum-count,
.qd_adding_cart_popup__sum-total-lbl {
    color: #1E1E1E;
    font-size: 18px;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

.qd_adding_cart_popup__sum-count b {
    color: #D21200;
}

.qd_adding_cart_popup__sum-total {
    display: flex;
    align-items: baseline;
    gap: 20px;
}

.qd_adding_cart_popup__sum-total-price {
    color: #D21200;
    text-align: center;
    font-size: 32px;
    font-weight: 600;
    line-height: normal;
}

.qd_adding_cart_popup__sum-btn-row {
    display: flex;
    gap: 8px;
    width: 100%;
    margin-bottom: 8px;
}

.qd_adding_cart_popup__sum-btn {
    flex: 1;
    border-radius: 90px;
    border: none;
    cursor: pointer;
    color: #FFF;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    padding: 11.5px 0;
    line-height: 26.67px;
    transition: opacity 0.15s, transform 0.12s;
    text-align: center;
}

.qd_adding_cart_popup__sum-btn:hover {
    opacity: 0.87;
}

.qd_adding_cart_popup__sum-btn:active {
    transform: scale(0.97);
}

.qd_adding_cart_popup__sum-btn--red {
    background: #D21200;
    color: #fff;
}

.qd_adding_cart_popup__sum-btn--black {
    background: #000;
    color: #fff;
}

.qd_adding_cart_popup__sum-checkout {
    width: 100%;
    border-radius: 90px;
    border: 1px solid #000;
    background: #FFF;
    color: #000;
    font-size: 16px;
    font-weight: 600;
    line-height: 26.67px;
    padding: 11.5px 0;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
    text-align: center;
}

.qd_adding_cart_popup__sum-checkout:hover {
    border-color: #D21200;
    background: #fdf5f4;
}

.qd_adding_cart_popup__ups {
    padding: 24px;
    width: 100%;
    border-radius: 40px;
    position: relative;
    background: #FFF5EC;
}
.qd_adding_cart_popup__ups .qd_cart_btn{
    font-weight: 600;
    transition: 0.2s ease;
}
.qd_adding_cart_popup__ups .qd_cart_btn:hover{
    background-color: #000;
    color: #fff;   
}
.qd_adding_cart_popup__ups-title {
    font-size: 24px;
    font-weight: 600;
    color: #1e1e1e;
    margin-bottom: 20px;
    line-height: normal;
}

.qd_adding_cart_popup__ups-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.qd_adding_cart_popup__ups-card {
    border-radius: 20px;
    border: 1px solid #E4E7E9;
    background: #FFF;
    padding: 20px;
}

.qd_adding_cart_popup__ups-card-head {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 14px;
}

.qd_adding_cart_popup__ups-card-img {
    width: 86px;
    height: 94px;
    border-radius: 8px;
    flex-shrink: 0;
    overflow: hidden;
    background: linear-gradient(145deg, #b8860b 0%, #6b3a1f 50%, #3a2010 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
}

.qd_adding_cart_popup__ups-card-name {
    font-size: 13px;
    font-weight: 700;
    color: #1a1a1a;
    line-height: 1.5;
    padding-top: 2px;
}

.qd_adding_cart_popup__ups-card-foot {
    display: flex;
    align-items: center;
    gap: 20px;
}

.qd_adding_cart_popup__ups-card-price-pill {
    display: flex;
    align-items: center;
    gap: 6px;
    background: #f0e6d6;
    border-radius: 8px;
    padding: 6px 12px;
    flex-shrink: 0;
}

.qd_adding_cart_popup__ups-card-price-lbl {
    font-size: 12px;
    color: #555;
}

.qd_adding_cart_popup__ups-card-price-val {
    font-size: 12px;
    font-weight: 600;
    color: #1a1a1a;
}

.qd_adding_cart_popup__ups-card-add {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 38px;
    padding: 0 14px;
    background: #c0392b;
    color: #fff;
    border: none;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    flex-shrink: 0;
    transition: background 0.15s;
}

.qd_adding_cart_popup__ups-card-add:hover {
    background: #962d22;
}

.qd_adding_cart_popup__ups-card-add svg {
    width: 13px;
    height: 13px;
    flex-shrink: 0;
}

.qd_adding_cart_popup__ups-card-link {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #444;
    font-size: 16px;
    transition: background 0.15s;
    border-radius: 90px;
    border: 2px solid #FFF;
    background: #F0E8E1;
    padding: 13px 30px;
}

.qd_adding_pnl_inner {
    border-radius: 20px;
    background: #FFF;
    padding: 30px;
}

.qd_adding_cart_popup__ups-card-link:hover {
    background: #e0e0e0;
}

.qd_adding_cart_popup__ups .qd_adding_cart_popup__pnl-meta-col {
    flex-direction: row;
    gap: 10px;
}

.qd_adding_cart_popup__ups .qd_adding_cart_popup__pnl-meta-val {
    max-width: 176px;
    width: 100%;
}

.qd_adding_cart_popup__ups .qd_adding_cart_popup__ups-card-link img {
    filter: brightness(0);
}
.QD_cart_count {
    background: #C9C9C980;
    border-radius: 20px;
    padding: 3px 20px;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 18px;
    border: 1px solid #E4E7E9;
}
.QD_cart_count .QD_cart_count_inner{
    background-color:#FFFFFF;
    padding:20px;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
    height: 100%;
}
.QD_cart_count .QD_cart_count__top-row {
    display: flex;
    align-items: stretch;
    gap: 16px;
}

.QD_cart_count .QD_cart_count__field {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex: 1;
}

.QD_cart_count .QD_cart_count__label {
    font-size: 16px;
    color: #1E1E1E;
    font-weight: 700;
}

.QD_cart_count .QD_cart_count__select-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.QD_cart_count .QD_cart_count__select-wrap select {
    appearance: none;
    -webkit-appearance: none;
    background: #ffffff;
    border: 2px solid #E4E7E9;
    border-radius: 30px;
    padding: 15px 20px;
    font-size: 14px;
    color: #000;
    cursor: pointer;
    outline: none;
    min-width: 100%;
    text-align: center;
}

.QD_cart_count .QD_cart_count__select-wrap::after {
    content: '';
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 5px solid #9a8e84;
    pointer-events: none;
}

.QD_cart_count .QD_cart_count__price-box {
    background: #FFF3E8;
    border-radius: 50px;
    padding: 9px 22px;
    font-size: 14px;
    color: #000000;
    white-space: nowrap;
    text-align: center;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 700;
}
html body .qd_cart_btn.QD_cart_count__confirm-btn.qd_cta{
    width: max-content;
    flex: unset;
    color: #FFFFFF;
}

.QD_cart_count .QD_cart_count__qty-wrap {
    display: flex;
    align-items: center;
    background: #ffffff;
    border: 2px solid #E4E7E9;
    border-radius: 50px;
    overflow: hidden;
    height: 100%;
    background-color: #E4E7E9;
}

.QD_cart_count .QD_cart_count__qty-btn {
    background: none;
    border: none;
    width: 100%;
    height: 100%;
    font-size: 18px;
    color: #2c2622;
    background: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s;
    line-height: 1;
    font-weight: 800;
}
.QD_cart_count .QD_cart_count__qty-display {
    font-size: 16px;
    color: #1E1E1E;
    font-weight: 700;
    padding:0 23px;
    text-align: center;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.QD_cart_count .QD_cart_count__bottom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.qd_recommended_menu .QD_cart_count__bottom-row button.qd_cta {
    border: none;
    outline: none;
    font-size: 16px;
    padding: 11.5px 30px;
    color: #000000;
    box-shadow: none;
    cursor: pointer;
}
.qd_recommended_menu .QD_cart_count__bottom-row button.QD_cart_count__cancel-btn.qd_cta{
    background-color: transparent;
    border: 1px solid #000000;
}
.QD_cart_count .QD_cart_count__confirm-btn svg {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

/*Adding cart popup end*/
/*Header menu popup start*/
.qd_header_menu {
    justify-content: center;
    display: flex;
    max-width: 1320px;
    width: 100%;
    padding: 30px;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
    margin: 0 auto;
    border-radius: 30px;
    background: #FFF;
    top: 140px;
    position: absolute;
    box-shadow: 0 38px 31.5px 0 rgba(226, 122, 63, 0.20);
    left: 50%;
    transform: translateX(-50%);
    transition: 0.2s ease;
    opacity: 0;
    visibility: hidden;
    top: -635%;
}

.qd_header_menu.active {
    opacity: 1;
    visibility: visible;
    top: 85%;
}

.qd_header_menu__wrapper {
    max-width: 100%;
    width: 100%;
    display: grid;
    grid-template-columns: 310px 1fr;
    gap: 20px;
}

.qd_header_menu__sidebar {
    display: flex;
    flex-direction: column;
    gap: 30px;
    justify-content: space-between;
}

.qd_header_menu__nav-group {
    border-radius: 40px;
    background: #F8F8F8;
    display: flex;
    padding: 24px;
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
}

.qd_header_menu__nav-item {
    text-decoration: none;
    display: flex;
    padding: 10px 20px;
    align-items: center;
    gap: 20px;
    align-self: stretch;
    border-radius: 15px;
    background: #FFF;
    color: #1E1E1E;
    font-size: 18px;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

.qd_header_menu__nav-icon {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ef4136;
    font-size: 18px;
}

.qd_header_menu__main {
    display: flex;
    flex-direction: column;
    gap: 30px;
    justify-content: space-between;
}

.qd_header_menu__info-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.qd_header_menu__info-column {
    background-color: #F8F8F8;
    border-radius: 40px;
    display: flex;
    padding: 24px;
    flex-direction: column;
    gap: 23px;
}

.qd_header_menu__box {
    border-radius: 15px;
    background: #FFF;
    display: flex;
    padding: 10px 20px;
    flex-direction: column;
    gap: 20px;
    align-self: stretch;
}

.qd_header_menu__label {
    color: #E73429;
    font-size: 16px;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
}

.qd_header_menu__text {
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
}

.qd_header_menu__tel {
    font-size: 18px;
    font-weight: 700;
    color: #333333;
}

.qd_header_menu__sns-list {
    display: flex;
    gap: 15px;
    margin-top: 5px;
}

.qd_header_menu__sns-btn {
    background-color: #000000;
    border-radius: 20px;
    text-decoration: none;
    display: flex;
    width: 70px;
    height: 70px;
    padding: 24px 21.333px 24px 20.667px;
    justify-content: center;
    align-items: center;
}
.qd_megamenu_btn{
        padding: 3px 10px;
    font-size: 20px;
    font-weight: 700;
    border: 1px solid #E27A3F;
    width: max-content;
    border-radius: 10px;
    color: #E27A3F;
    box-shadow: 0px 4px 4px 0px #00000040;
}

.qd_header_menu__status-banner {
    padding: 24px 24px 32px 24px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
    border-radius: 40px;
    border: 1px solid #F8E3A9;
    background: linear-gradient(0deg, #F8E3A9 -2.45%, #FFF 64.14%);
}

.qd_header_menu__status-row {
    display: flex;
    align-items: flex-start;
}
.qd_header_menu__status-row.short_label .qd_header_menu__status-label{
    width: max-content;
    margin-right: 16px;
}
.qd_header_menu__status-label {
    color: #E73429;
    font-size: 20px;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
    max-width: 120PX;
    width: 100%;
    margin-right: 20px;
}

.qd_header_menu__status-value {
    display: flex;
    align-items: center;
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
}

.qd_header_menu__note {
    padding-top: 5px;
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

.qd_header.active .qd_header_menu {
    top: 170px;
}

.overlay_active::after {
    content: "";
    height: 100%;
    width: 100%;
    display: block;
    position: fixed;
    top: 0;
    opacity: 0.9;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.40) 100%);
    z-index: 10;
}

/*Header menu popup end*/

/*Search bar popup start*/
.qd_search_bar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    background-color: #ffffff;
    box-shadow: 0 38px 31.5px 0 rgba(226, 122, 63, 0.20);
    z-index: 1000;
    display: flex;
    justify-content: center;
    padding: 86px 0;
    transform: translateY(-101%);
    opacity: 0;
    visibility: hidden;
    transition: 0.2s linear;
}
.qd_search_bar #qd_suggestions{
    margin: 30px 0px 20px 0px;
    display: inline-flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}
.qd_search_bar #qd_suggestions:empty{
    margin: 0px;
}
.qd_search_bar #qd_suggestions li{
    background: #FFF3E8;
    padding: 7px 15px;
    border-radius: 100px;
    color: #000000;
    font-weight: 600;
    cursor: pointer;
}

.qd_search_bar.active {
    transform: translateY(0%);
    opacity: 1;
    visibility: visible;
}

.qd_search_bar__close {
    position: absolute;
    right: 39px;
    top: 37px;
    cursor: pointer;
    width: 50px;
    height: 50px;
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s ease;
}

.qd_search_bar__close:hover {
    opacity: 0.6;
}

.qd_search_bar__title {
    margin-bottom: 30px;
    color: #1E1E1E;
    font-size: 32px;
    font-weight: 600;
    line-height: normal;
}

.qd_search_bar__field {
    position: relative;
    width: 100%;
    height: 74px;
    border-radius: 40px;
    background: #F8F8F8;
    display: flex;
    align-items: center;
    padding: 0 70px 0 35px;
    width: 100%;
}

.qd_search_bar__field .qd_search_bar__fields {
    width: 100%;
}

.qd_search_bar__input {
    width: 100%;
    background: transparent;
    border: none;
    outline: none;
    height: 100%;
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
}

.qd_search_bar__input::placeholder {
    color: #AFAFAF;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
}

.qd_search_bar__icon {
    position: absolute;
    right: 30px;
    width: 35px;
    height: 35px;
    cursor: pointer;
    top: 50%;
    transform: translateY(-50%);
}

.qd_search_bar__icon :is(img, svg) {
    height: 100%;
    width: 100%;
    object-fit: contain;
}

.qd_search_bar__hint {
    margin-top: 30px;
    display: flex;
    align-items: center;
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
}

.qd_search_bar__hint.error-trigger {
    color: #D21200;
}

.qd_search_bar__hint::before {
    content: "•";
    margin-right: 10px;
    font-size: 20px;
}

/*Search bar popup end*/

/*cart popup start*/
.qd_cart {
    max-width: 900px;
    position: fixed;
    right: 0;
    top: 0;
    background: #FFF;
    box-shadow: 0 38px 31.5px 0 rgba(226, 122, 63, 0.20);
    display: flex;
    width: 100%;
    padding: 30px;
    flex-direction: column;
    bottom: 0;
    transform: translateX(100%);
    transition: 0.3s ease;
    opacity: 0;
    visibility: hidden;
}

.qd_cart.active {
    transform: translateX(0%);
    opacity: 1;
    visibility: visible;
}

.qd_cart__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}

.qd_cart__title-wrap {
    display: flex;
    align-items: center;
    gap: 13px;
}

.qd_cart__title {
    color: #1E1E1E;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
}

.qd_cart__count,
.qd_cart_count {
    color: #ffffff;
    font-size: 16px;
    line-height: 16px;
    display: flex;
    width: 33px;
    height: 33px;
    padding: 8px 0 9px 0;
    justify-content: center;
    align-items: center;
    font-weight: 500;
    border-radius: 16px;
    flex-shrink: 0;
    border: 1px solid #FFF;
    background: #D21200;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
    font-family: Oswald;
}

.qd_cart_count {
    position: absolute;
    top: -17px;
    right: -10px;
}

.qd_cart__close {
    width: 29px;
    height: 29px;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.qd_cart__alert {
    padding: 24px;
    margin: 20px 0 30px;
    border-radius: 20px;
    background: #FFF9E2;
    position: relative;
}
.woocommerce-cart .qd_cart__alert .qd_cart__progress {
    margin: 0;
}

.dashed-border {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    overflow: visible;
}

.qd_cart__alert-text {
    margin-bottom: 16px;
    display: block;
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.6;
}

.qd_cart__progress {
    background-color: #f2f2f2;
    border-radius: 6px;
    margin-bottom: 20px;
    border-radius: 60px;
    background: #FFF;
    display: flex;
    padding: 5px;
    align-items: center;
    gap: 20px;
}

.qd_cart__progress-bar {
    width: 80%;
    border-radius: 30px;
    background: #09AD00;
    height: 11px;
}

.qd_cart__alert-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-top: 16px;
}
.woocommerce-shipping-totals.shipping :is(.woocommerce-shipping-destination
,.shipping-calculator-button,.shipping-calculator-form){
    display: none !important;
}

.qd_cart__alert-subtext {
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.6;
}

.qd_cart__alert-target {
    color: #E73429;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.6;
    white-space: nowrap;
}

.qd_cart__list {
    display: flex;
    flex-direction: column;
    gap: 15px;
    height: calc(100% - 460px);
    overflow-y: auto;
}

.qd_cart__list .qd_cart_empty {
    color: #E73429;
    font-weight: 700;
    text-align: center;
    font-size: 16px;
    margin: auto;
}

.qd_cart__item {
    background-color: #f8f8f8;
    border-radius: 20px;
    padding: 20px;
    display: flex;
    align-items: stretch;
    gap: 20px;
    position: relative;
}

.qd_cart__item-img {
    width: 100px;
    height: 100px !important;
    flex-shrink: 0;
    object-fit: cover;
    border-radius: 10px;
    border: 2px solid #FFF;
    box-shadow: 0 0 23.7px 2px rgba(0, 0, 0, 0.25);
}

.qd_cart__item-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px;
}

.qd_cart__item-title {
    color: #1E1E1E;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4;
}

.qd_cart__qty {
    display: flex;
    align-items: center;
    gap: 5px;
    justify-content: space-between;
}

.qd_cart__qty-label {
    margin-right: 5px;
    color: #000;
    font-size: 14px;
    font-weight: 600;
    line-height: normal;
}
.qd_cart__qty-controls_wrap{
    display: flex;
    align-items: center;
    text-wrap: nowrap;
    gap: 10px;
    justify-content: end;
}
.qd_cart__qty-controls {
    overflow: hidden;
    max-width: 160px;
    min-width: 160px;
    width: 100%;
    border-radius: 93px;
    border: 2px solid #E4E7E9;
    background: #FFF;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-shrink: 0;
}

.qd_cart__qty-btn {
    max-width: 50px;
    height: 38px;
    background: transparent;
    font-size: 16px;
    color: #1e1e1e;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    font-weight: 600;
    border: none;
    outline: none;
}

.qd_cart__qty-val {
    background-color: #E4E7E9;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 600;
    color: #1e1e1e;
    width: 100%;
}

.qd_cart__price-box {
    padding: 15px 25px;
    text-align: center;
    min-width: 160px;
    border-radius: 20px;
    background: #FFF;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.qd_cart__price-unit {
    font-size: 14px;
    color: #333333;
    margin-bottom: 4px;
    display: block;
}

.qd_cart__price-total {
    font-size: 24px;
    color: #D21200;
    font-weight: 600;
    line-height: 100%;
}

.qd_cart__item-remove {
    color: #D21200;
    margin-left: 10px;
    display: flex;
    justify-content: center;
    align-self: center;
    width: 29px;
    height: 29px;
    aspect-ratio: 1 / 1;
    cursor: pointer;
}

.qd_cart__item-remove :is(img, svg) {
    width: 100%;
    height: 100%;
}

.qd_cart__total-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 10px;
}

.qd_cart__total-label {
    color: #000;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
}

.qd_cart__total-val {
    color: #000;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
}

.qd_cart__total-row--grand {
    border-top: 2px solid #D21200;
    padding-top: 10px;
    margin-top: 5px;
}
.qd_cart__total-row--grand .qd_cart__total-label,
.qd_cart__total-row--grand .qd_cart__total-val {
    font-weight: 700;
}
.qd_cart__total-row--tax {
    margin-bottom: 5px;
}
.qd_cart__total-row--tax .qd_cart__total-label,
.qd_cart__total-row--tax .qd_cart__total-val {
    font-size: 16px;
    font-weight: 400;
}

.qd_cart__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.qd_cart__btn {
    font-size: 16px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: opacity 0.2s;
    border-radius: 90px;
    background: #D21200;
    padding: 11.5px 30px;
}

.qd_cart__btn:hover {
    opacity: 0.85;
}

.qd_cart__btn--black {
    background-color: #000000;
    color: #ffffff;
}
.qd_cart__btn--black.qd_js_close_cart{
    background-color: #fff;
    border:1px solid  #d21200;
    color:  #d21200;
}

.qd_cart__btn--red {
    background-color: #D21200;
    color: #ffffff;
}

.qd_cart .qd_cart_inner {
    height: 100%;
    position: relative;
}

.qd_cart .qd_cart__footer {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
}

#qd_cart_area.qd_cart_loading::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.8);
    z-index: 5;
    user-select: none;
}

#qd_cart_area.qd_cart_loading::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 32px;
    height: 32px;
    margin-left: -16px;
    margin-top: -16px;
    border: 3px solid #e5e5e5;
    border-top: 3px solid #D21200;
    border-radius: 50%;
    animation: qdCartSpin 0.7s linear infinite;
    z-index: 6;
}

@keyframes qdCartSpin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/*cart popup end*/

/* Shop page start */
.shop_layout {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-top: 50px;
    margin-bottom: 50px;
}

.search-results .site-content .qd_container {
    margin: 50px auto 50px auto;
}

.shop_sidebar {
    max-width: 426px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 24px;
    /* position: sticky; */
    top: 130px;
}
.wwcs_filter_button.qd_cta{
    box-shadow: none;
    border: none;
    font-size: 20px;
    cursor: pointer;
}

.shop_sidebar .filter-section {
  margin-bottom: 20px;
}

.shop_sidebar .filter-section label input:not([type="radio"]) {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border: 1.8px solid #E27A3F;
    border-radius: 3px;
    flex-shrink: 0;
    cursor: pointer;
    background: transparent;
    position: relative;
    transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.shop_sidebar .filter-section label input[type="checkbox"]::after {
    content: '';
    display: block;
    width: 7px;
    height: 4px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    position: absolute;
    top: 48%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg) scale(0);
    transition: transform 0.15s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.shop_sidebar .filter-section label input[type="checkbox"]:checked{
    background: #E27A3F;
    border-color: #E27A3F;
    box-shadow: 0 2px 10px rgba(226, 122, 63, 0.35);
}

.shop_sidebar .filter-section label input[type="checkbox"]:checked::after{
    transform: translate(-50%, -50%) rotate(-45deg) scale(1);
}

.shop_sidebar .filter-section label input[type="radio"]{
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border: 1.8px solid #E27A3F;
    border-radius: 50%;
    flex-shrink: 0;
    cursor: pointer;
    background: transparent;
    position: relative;
    transition: all 0.18s ease;
}

.shop_sidebar .filter-section label input[type="radio"]::after{
    content: '';
    width: 8px;
    height: 8px;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: transform 0.18s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.shop_sidebar .filter-section label input[type="radio"]:checked{
    background: #E27A3F;
    border-color: #E27A3F;
    box-shadow: 0 2px 10px rgba(226, 122, 63, 0.35);
}

.shop_sidebar .filter-section label input[type="radio"]:checked::after{
    transform: translate(-50%, -50%) scale(1);
}

.shop_sidebar .filter-section.wwcs_product_categories label,
.shop_sidebar .filter-section.wwcs_product_tags label,
.shop_sidebar .filter-section.wwcs_productwwprousage_scenario label{
    display: inline-flex;
}
.shop_sidebar .filter-section.wwcs_product_categories .qd_menu_sub_title::before,
.shop_sidebar .filter-section.wwcs_product_tags .qd_menu_sub_title::before,
.shop_sidebar .filter-section.wwcs_productwwprousage_scenario .qd_menu_sub_title::before {
    content: "";
    height: 24px;
    width: 24px;
    background-image: url("../img/Food_icon_cap.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}
.shop_sidebar .qd_menu_sub_title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 12px;
  font-weight: 500;
  color: #888;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin: 0 0 10px;
  width: 100%;
}

.shop_sidebar :is(.wwcs-remove-filter, .wwcs-clear-all a) {
  font-size: 16px;
    font-weight: 600;
    color: #fff;
    background: #d21200;
    padding: 10px 20px;
    border-radius: 100px;
}


.shop_sidebar .wwdcsss_filter_delta label {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 5px 8px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  color: #000;
  transition: background 0.15s;
  position: relative;
}
.shop_sidebar .wwdcsss_filter_delta label :is(.wwprotype,.wwprousage_scenario){
    accent-color: #d21200;
}

.shop_sidebar .wwcs-toggle {
  background: none;
  border: none;
  color: #d21200;
  font-size: 16px;
  font-weight:700;
  cursor: pointer;
  padding: 6px 8px;
  margin-top: 2px;
  display: flex;
  align-items: center;
  gap: 4px;
}

.shop_sidebar .wwcs-toggle:hover {
  opacity: 0.75;
}

.shop_sidebar .wwcs-more-items {
  display: none;
  flex-direction: column;
  gap: 2px;
}

.shop_sidebar .wwcs-more-items.open {
  display: flex;
}

.shop_sidebar .filter-section label input[type="radio"]{
    height: 20px;
    width: 20px;
    accent-color: #d21200;
}

.shop_sidebar .wwdcsss_filter_delta .filter-panel-actions {
    display: flex;
    align-items: stretch;
    gap: 10px;
    /* margin-top: 20px; */
}
.shop_sidebar .wwdcsss_filter_delta .wwcs-filter-panel-2 .filter-panel-actions{
    margin-top: 0px;
}
.shop_sidebar .wwdcsss_filter_delta .filter-panel-actions .qd_cta{
    flex: auto;
    font-size: 16px;
    border: none;
    position: relative;
    cursor: pointer;
    font-weight: 700;
}
.shop_sidebar .wwdcsss_filter_delta .filter-panel-actions .wwcs_filter_button {
    padding: 0 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    box-shadow: 0px 4px 4px 0px #00000040;
}
.shop_sidebar .wwdcsss_filter_delta .filter-panel-actions .wwcs_filter_button::before{
    content: "";
    height: 23px;
    width: 23px;
    display: inline-block;
    background-image: url("../img/sidebar_search.svg");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.shop_sidebar .wwdcsss_filter_delta .filter-panel-actions .wwcs_panel_clear{
    background: transparent;
    border: 2px solid #E73429;
    color: #E73429;
    font-weight: 700;
    box-shadow: 0px 4px 4px 0px #00000040;
}
.shop_sidebar .qd_liner_menu .wwcs-filter-panel .qd_menu_sub_title,
.shop_sidebar .qd_liner_menu .wwcs-filter-panel .qd_menu_sub_title{
    position: relative;
    justify-content: unset;
    gap: 10px;
}
.shop_sidebar .qd_liner_menu .wwcs-filter-panel-1 .qd_menu_sub_title::before{
    content: "";
    height: 24px;
    width: 24px;
    background-image: url("../img/Food_icon.svg");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.shop_sidebar .qd_filter_inline_wrap{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 10px;
}
.shop_sidebar .qd_filter_inline_wrap label{
    font-size: 14px;
    color: #000;
    font-weight: 700;
    padding: 0;
}
.shop_sidebar .wwcs-toggle {
    background: none;
    border: none;
    color: #d21200;
    cursor: pointer;
    margin-top: 8px;
}
.qd_custom_price_wrap{
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 16px;
    line-height: 26.67px;
    font-weight: 600;
}
.qd_custom_price_wrap .qd_menu_size{
    color: #D21200;
    text-align: center;
    line-height: normal;
}
.qd_custom_price_wrap .qd_price{
    color: #000;
}

.shop_products {
    max-width: calc(100% - 426px);
    width: 100%;
}

.shop_products .qd_card .qd_card_body {
    padding: 0;
    background: transparent;
    border-radius: 0;
    box-shadow: unset;
    transition: unset;
    border: none;
    border-radius: 30px;
    /* 固定calc高さ→flexで内容駆動。画像以外を埋めてカード等高化(点線整列の土台) */
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}
.shop_products .qd_card .qd_card_body .qd_variation_list .qd_var_row{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.qd_card_info .qd_variation_list,
.qd_card_info .qd_simple_meta{
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
}
.shop_products .qd_card .qd_card_body .qd_card_body_bottom {
    border-radius: 30px;
    border: 2px solid rgba(189, 150, 117, 0.22);
    background: #FFF;
    padding: 20px; /* 旧 bottom 195px: absolute配置の価格+ボタン用の固定確保。通常フロー化に伴い撤去(#175) */
    top: -30px;
    position: relative;
    /* 固定calc高さ→flexで body内の残りを埋める。qd_card_info/.sp_none を伸ばし点線を揃える */
    flex: 1 1 auto;
    min-height: 0;
    margin-bottom: -30px;     /* top:-30px のぶん下に空く隙間を相殺 */
    display: flex;            /* カード内の点線(.sp_none)を伸縮させ高さを揃える */
    flex-direction: column;
}
/* メニュー一覧(点線枠)を伸ばして下点線・※名様分の位置をカード間で揃える */
.shop_products .qd_card .qd_card_body .qd_card_body_bottom .qd_card_info {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}
.shop_products .qd_card_info .sp_none {
    flex: 1 0 auto; /* 項目が少なくても枠を伸ばして下点線を揃える */
}
/* メニュー点線枠(.sp_none)がないカードでも ※約◯名様分 を価格直上に揃える
   (.sp_none があるカードはそちらの flex 伸縮が余白を吸収するため位置不変) (#184) */
.shop_products .qd_card_info .qd_card_people {
    margin-top: auto;
}
.shop_products .wwdcs_delta_s{
    margin-bottom: 10px;
}

.shop_products .qd_card .qd_card_body .qd_card_body_up {
    border-radius: 30px 30px 0 0;
    border: 3px solid #FFEAD4;
    background: linear-gradient(0deg, #FFEAD4 -2.45%, #FFF 64.14%), #FFF9F4;
    padding: 20px; /* タイトル下の余白を詰める(旧 bottom 40px) */
    min-height: 110px; /* 2行タイトル+body_bottomの-30px被りを考慮した一定高さ(旧128px=3行)。カード整列・被り防止 */
}

.woocommerce-shop .wtrn_secondry_banner {
    padding: 247px 20px 99px 20px;
}

.qd_side_card,
.woocommerce-account .woocommerce-MyAccount-navigation {
    border-radius: 30px;
    border: 3px solid #FFEAD4;
    background: linear-gradient(0deg, #FFEAD4 -2.45%, #FFF 64.14%), #FFF9F4;
    padding: 20px;
}
.qd_side_card{
    position: relative;
}
.qd_side_card .wwcs-clear-all{
    position: absolute;
    top: 20px;
    right: 20px;
}
.woocommerce-account .woocommerce-MyAccount-navigation{
    background: #FFF9F4;
}

.qd_area_info_card.qd_side_card {
    position: relative;
    padding-top: 80px;
}

.shop_layout .qd_area_badge_img_wrap {
    position: absolute;
    top: -18px;
    left: 0;
    margin: 0 auto;
    max-width: 100%;
    padding: 0 20px;
}

.shop_layout .qd_area_list,
.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
    gap: 20px;
}
.qd_area_sub a,
.qd_area_cta,
.woocommerce-account .woocommerce-MyAccount-navigation-link {
    display: flex;
    padding: 10px;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    align-self: stretch;
    border-radius: 40px;
    border: 2px solid #E73429;
    background: #FFF;
    color: #1E1E1E;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    position: relative;
}
.woocommerce-account .woocommerce-MyAccount-navigation-link{
    border-color: #FFECD8;
    display: block;
}
.woocommerce-account .woocommerce-MyAccount-navigation-link .wwdc_loyal_menu_inner{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
}

.qd_area_cta .qd_area_cta_text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.qd_area_sub a::after,
.qd_area_cta::after {
    content: "";
    display: flex;
    padding: 20px 30px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 90px;
    border: 2px solid #FFF;
    background: #F0E8E1 url(../img/top_arrow.svg) center / 32% no-repeat;
}

.qd_area_list .qd_area_sub:nth-of-type(3) a {
    justify-content: center;
    background: #D21200;
    color: #fff;
    line-height: 26.67px;
}

.qd_area_list .qd_area_sub:nth-of-type(3) a img {
    background: transparent;
    width: 20px;
    height: 20px;
    padding: 0;
}

.qd_area_list .qd_area_sub:nth-of-type(3) a::after {
    display: none;
}

.qd_area_cta_icon {
    display: flex;
    width: 40px;
    height: 40px;
    padding: 7.5px 7.5px 8.5px 8.5px;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1 / 1;
    border-radius: 30px;
    background: #000;
}
.qd_area_sub a img{
    width: 40px;
    height: 40px;
}
.qd_liner_menu .qd_menu_card {
    max-width: 100%;
    align-items: flex-start;
}

.qd_liner_menu .qd_menu_list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
}

.qd_liner_menu .qd_menu_list li {
    color: #000;
    font-size: 14px;
    font-weight: 600;
    line-height: normal;
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.qd_liner_menu .qd_menu_list li::before {
    content: "";
    width: 15px;
    height: 15px;
    display: inline-block;
    aspect-ratio: 1/1;
    background: url(../img/True_mark.svg) center / contain no-repeat;
}

.qd_liner_menu .qd_menu_sub_title {
    color: #000;
    font-size: 18px;
    font-weight: 600;
    line-height: normal;
    margin: 20px 0;
}

.qd_liner_menu .qd_menu_title {
    color: #000;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.qd_liner_menu.qd_side_card .qd_area_cta {
    margin-top: 20px;
}

.shop_products .qd_card_img_wrap,
.search-results .qd_card_img_wrap {
    width: 100%;
    height: 274px;
    margin-bottom: -50px;
    border-color: #FFEAD4;
}

.search-results .qd_card_img_wrap {
    min-height: 400PX;
}

.shop_products .qd_card_img_wrap img,
.search-results .qd_card_img_wrap img {
    height: 100%;
    width: 100%;
    object-fit: contain;
    object-position: center;
}

.shop_products .qd_card_img_wrap .woocommerce-loop-product__title {
    color: #000;
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
}

.shop_products :is(.woocommerce-products-header, .woocommerce-notices-wrapper, .woocommerce-result-count) {
    display: none;
}

.shop_products .products,
.search-results .products {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}
.shop_products .products .qd_quantity{
    margin: 15px 0 0 0;
    width: 100%;
}
.shop_products .products .qd_quantity button{
    flex: 1;
}
.search-results .products {
    justify-content: center;
}

.shop_products .qd_card_info .sp_none {
    color: #000;
    font-size: 14px;
    font-weight: 600;
    border-top: 2px dashed #000;
    border-bottom: 2px dashed #000;
    line-height: 26.67px;
    padding: 5px 0;
    margin: 10px 0;
}

.shop_products .qd_card_info .sp_none ul {
    margin: 0;
}

.shop_products .qd_card_info .sp_none ul li {
    list-style: disc;
    list-style-position: inside;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.search-results .qd_card {
    max-width: 30.75%;
    float: unset;
    width: 100% !important;
    clear: unset;
    margin: 0 1.8% 1.5em 0 !important;
}

.shop_products .qd_card_inner {
    height: 100%;
}

.shop_products .qd_card_inner:hover {
    filter: drop-shadow(0 4px 13.1px rgba(0, 0, 0, 0.25));
}

.shop_products .qd_card_inner:hover .qd_card_body_bottom {
    background-color: #FFEAD4;
}

/* =========================================================
   検索サイドバー: 3パネル構造
   ========================================================= */

/* --- パネル1: 商品を探す --- */
.qd_search_sidebar.qd_side_card {
    padding: 0 20px 24px;
}

.qd_search_title {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    padding: 14px 0 28px;
    margin: 0 -20px 16px;
    color: #fff;
    background: url(../img/search_banner_bg.svg) no-repeat center top / 100% 100%;
}

.qd_keyword_search {
    display: flex;
    align-items: stretch;
    gap: 8px;
    margin-bottom: 16px;
}

.qd_keyword_input_wrap {
    flex: 1;
    position: relative;
    min-width: 0;
}

.qd_keyword_input {
    width: 100%;
    padding: 12px 40px 12px 14px;
    border: 2px solid #ddd;
    border-radius: 8px;
    font-size: 14px;
    outline: none;
    box-sizing: border-box;
}

.qd_keyword_input:focus {
    border-color: #E73429;
}

.qd_keyword_search_icon {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    opacity: 0.5;
    pointer-events: none;
}

.qd_keyword_clear {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    padding: 0;
    background: none;
    border: none;
    cursor: pointer;
    opacity: 0.55;
    color: #333;
    display: flex;
    align-items: center;
    justify-content: center;
}

.qd_keyword_clear:hover {
    opacity: 0.9;
}

.qd_keyword_hidden {
    display: none !important;
}

.qd_keyword_btn {
    white-space: nowrap;
    font-size: 14px;
    font-weight: 700;
    padding: 12px 16px;
    background: #E73429;
    color: #fff;
    border: none;
    border-radius: 8px;
    cursor: pointer;
}

.qd_search_toggle {
    display: flex;
    gap: 8px;
}

.qd_search_toggle_btn {
    flex: 1;
    padding: 10px 8px;
    border: 2px solid #E73429;
    border-radius: 40px;
    background: #fff;
    color: #1E1E1E;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: background 0.3s, color 0.3s;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.qd_search_toggle_btn.active {
    background: #E73429;
    color: #fff;
}

.qd_toggle_icon {
    width: 16px;
    height: 16px;
}

.qd_search_toggle_btn.active .qd_toggle_icon {
    filter: brightness(0) invert(1);
}

/* --- パネル2 & 3 共通: 絞り込みパネル --- */
.qd_product_filter_panel.qd_side_card,
.qd_taxonomy_filter_panel.qd_side_card {
    padding: 20px;
    overflow: hidden;
    border-radius: 30px;
}

.qd_filter_header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 24px;
    padding: 0;
    background: transparent;
}

.qd_filter_header_btn {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 20px;
    height: 50px;
    background: #D21200;
    color: #fff;
    border: none;
    border-radius: 40px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
}

.qd_header_btn_icon {
    width: 18px;
    height: 18px;
    filter: brightness(0) invert(1);
}

.qd_filter_header_clear {
    padding: 0 20px;
    height: 50px;
    background: #fff;
    color: #D21200;
    border: 2px solid #D21200;
    border-radius: 40px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
}

/* --- フィルターグループ --- */
.qd_filter_group {
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid #FFEAD4;
}

.qd_filter_group:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.qd_filter_group_title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 18px;
    font-weight: 600;
    color: #1E1E1E;
    margin: 0 0 16px;
    line-height: 1.4;
}

.qd_filter_title_icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

/* --- サブラベル（商品タイプ / 販売単位） --- */
.qd_filter_sub {
    margin-bottom: 16px;
}

.qd_filter_sub_label {
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: #333;
    margin-bottom: 10px;
}

/* --- チェックボックス・ラジオ共通ラベル --- */
.qd_filter_inline_wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    margin-bottom: 10px;
}

.qd_filter_check_label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 700;
    color: #000;
    cursor: pointer;
    padding: 4px 0;
    line-height: 1.4;
}

.qd_filter_check_label input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border: 1.8px solid #E27A3F;
    border-radius: 3px;
    flex-shrink: 0;
    cursor: pointer;
    background: transparent;
    position: relative;
    transition: background 0.18s ease, border-color 0.18s ease;
}

.qd_filter_check_label input[type="checkbox"]::after {
    content: '';
    display: block;
    width: 7px;
    height: 4px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    position: absolute;
    top: 48%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg) scale(0);
    transition: transform 0.15s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.qd_filter_check_label input[type="checkbox"]:checked {
    background: #E27A3F;
    border-color: #E27A3F;
    box-shadow: 0 2px 10px rgba(226, 122, 63, 0.35);
}

.qd_filter_check_label input[type="checkbox"]:checked::after {
    transform: translate(-50%, -50%) rotate(-45deg) scale(1);
}

.qd_filter_check_label input[type="radio"] {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border: 1.8px solid #E27A3F;
    border-radius: 50%;
    flex-shrink: 0;
    cursor: pointer;
    background: transparent;
    position: relative;
    transition: all 0.18s ease;
}

.qd_filter_check_label input[type="radio"]::after {
    content: '';
    width: 8px;
    height: 8px;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: transform 0.18s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.qd_filter_check_label input[type="radio"]:checked {
    background: #E27A3F;
    border-color: #E27A3F;
    box-shadow: 0 2px 10px rgba(226, 122, 63, 0.35);
}

.qd_filter_check_label input[type="radio"]:checked::after {
    transform: translate(-50%, -50%) scale(1);
}

/* --- カテゴリーカード（categoryページ用） --- */
.qd_category_cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.qd_category_card {
    display: flex;
    flex-direction: column;
    padding: 14px 12px;
    border: 2px solid #E73429;
    border-radius: 12px;
    background: #fff;
    color: #1E1E1E;
    text-decoration: none;
    transition: background 0.3s;
    position: relative;
}

.qd_category_card:hover {
    background: #FFF3E8;
}

.qd_category_card_label {
    font-size: 14px;
    font-weight: 600;
    padding-right: 20px;
}

.qd_category_card_desc {
    font-size: 12px;
    font-weight: 400;
    color: #666;
    margin-top: 6px;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.qd_category_card_arrow {
    position: absolute;
    top: 14px;
    right: 10px;
}

.qd_category_card_arrow img {
    width: 14px;
    height: 14px;
    filter: brightness(0) saturate(100%) invert(24%) sepia(89%) saturate(2637%) hue-rotate(351deg) brightness(92%) contrast(95%);
}

.shop_products .qd_card_price,
.search-results .qd_card_price {
    border-radius: 60px;
    background: #FFF3E8;
    display: flex;
    padding: 10px;
    justify-content: center;
    align-items: center;
    align-self: stretch;
}

html body .shop_products .qd_card_price .price {
    color: #000 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    margin-bottom: 0 !important;
    line-height: 26.67px;
}

.shop_products .add_to_cart_button {
    text-align: left !important;
    position: relative !important;
    display: inline-flex !important;
    color: #FFF !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 26.67px !important;
    align-items: flex-start !important;
}

.shop_products .add_to_cart_button::before,
.qd_recommended_menu .qd_cart_btn::before, 
.product-container .order-section button.qd_cart_btn::before {
    content: "";
    width: 20px;
    height: 20px;
    aspect-ratio: 1/1;
    background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M7.29166%2010.8333C7.29166%2010.6675%207.22581%2010.5085%207.1086%2010.3913C6.99139%2010.2741%206.83242%2010.2083%206.66666%2010.2083C6.5009%2010.2083%206.34192%2010.2741%206.22471%2010.3913C6.1075%2010.5085%206.04166%2010.6675%206.04166%2010.8333V14.1666C6.04166%2014.3323%206.1075%2014.4913%206.22471%2014.6085C6.34192%2014.7257%206.5009%2014.7916%206.66666%2014.7916C6.83242%2014.7916%206.99139%2014.7257%207.1086%2014.6085C7.22581%2014.4913%207.29166%2014.3323%207.29166%2014.1666V10.8333ZM13.3333%2010.2083C13.4991%2010.2083%2013.6581%2010.2741%2013.7753%2010.3913C13.8925%2010.5085%2013.9583%2010.6675%2013.9583%2010.8333V14.1666C13.9583%2014.3323%2013.8925%2014.4913%2013.7753%2014.6085C13.6581%2014.7257%2013.4991%2014.7916%2013.3333%2014.7916C13.1676%2014.7916%2013.0086%2014.7257%2012.8914%2014.6085C12.7742%2014.4913%2012.7083%2014.3323%2012.7083%2014.1666V10.8333C12.7083%2010.6675%2012.7742%2010.5085%2012.8914%2010.3913C13.0086%2010.2741%2013.1676%2010.2083%2013.3333%2010.2083ZM10.625%2010.8333C10.625%2010.6675%2010.5591%2010.5085%2010.4419%2010.3913C10.3247%2010.2741%2010.1658%2010.2083%209.99999%2010.2083C9.83423%2010.2083%209.67526%2010.2741%209.55805%2010.3913C9.44084%2010.5085%209.37499%2010.6675%209.37499%2010.8333V14.1666C9.37499%2014.3323%209.44084%2014.4913%209.55805%2014.6085C9.67526%2014.7257%209.83423%2014.7916%209.99999%2014.7916C10.1658%2014.7916%2010.3247%2014.7257%2010.4419%2014.6085C10.5591%2014.4913%2010.625%2014.3323%2010.625%2014.1666V10.8333Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M14.395%202.89417C13.9983%202.73917%2013.5542%202.71333%2012.985%202.70917C12.8668%202.45956%2012.6801%202.24865%2012.4468%202.10098C12.2134%201.9533%2011.9428%201.87494%2011.6667%201.875H8.33333C8.05724%201.87486%207.78678%201.95311%207.55341%202.10063C7.32003%202.24814%207.13333%202.45888%207.015%202.70833C6.445%202.71333%206.00167%202.73917%205.605%202.89417C5.13148%203.07939%204.71966%203.39418%204.41667%203.8025C4.11083%204.21333%203.96667%204.74167%203.77%205.4675L3.24667%207.38667C2.91884%207.55207%202.63148%207.78765%202.405%208.07667C1.88667%208.74083%201.795%209.53167%201.8875%2010.4383C1.97667%2011.3183%202.25417%2012.4267%202.60083%2013.8133L2.6225%2013.9025C2.8425%2014.7792%203.02%2015.4917%203.23167%2016.0475C3.4525%2016.6275%203.73333%2017.1025%204.195%2017.4633C4.6575%2017.8242%205.18667%2017.98%205.8025%2018.055C6.3925%2018.125%207.1275%2018.125%208.03167%2018.125H11.9683C12.8725%2018.125%2013.6067%2018.125%2014.1975%2018.0542C14.8142%2017.9808%2015.3425%2017.8242%2015.8042%2017.4625C16.2667%2017.1025%2016.5467%2016.6275%2016.7675%2016.0475C16.98%2015.4917%2017.1575%2014.7792%2017.3767%2013.9017L17.3992%2013.8142C17.7458%2012.4267%2018.0225%2011.3183%2018.1125%2010.4392C18.2042%209.53083%2018.1125%208.74083%2017.5942%208.07667C17.3679%207.78774%2017.0809%207.55217%2016.7533%207.38667L16.23%205.4675C16.0325%204.74167%2015.8883%204.21333%2015.5833%203.80167C15.2802%203.39365%2014.8684%203.07916%2014.395%202.89417ZM6.06%204.05833C6.24333%203.98667%206.465%203.96583%207.01583%203.96C7.25083%204.45167%207.7525%204.79167%208.3325%204.79167H11.6658C12.2475%204.79167%2012.7492%204.45167%2012.9842%203.96C13.535%203.96583%2013.7567%203.98667%2013.94%204.05833C14.195%204.15833%2014.4167%204.3275%2014.58%204.5475C14.7267%204.745%2014.8125%205.02083%2015.055%205.91L15.35%206.99083C14.485%206.875%2013.3683%206.875%2011.9808%206.875H8.01833C6.63167%206.875%205.515%206.875%204.65%206.99083L4.945%205.91C5.18667%205.02083%205.27333%204.745%205.42%204.5475C5.58318%204.32759%205.80497%204.15807%206.06%204.05833ZM8.33333%203.125C8.27808%203.125%208.22509%203.14695%208.18602%203.18602C8.14695%203.22509%208.125%203.27808%208.125%203.33333C8.125%203.38859%208.14695%203.44158%208.18602%203.48065C8.22509%203.51972%208.27808%203.54167%208.33333%203.54167H11.6667C11.7219%203.54167%2011.7749%203.51972%2011.814%203.48065C11.8531%203.44158%2011.875%203.38859%2011.875%203.33333C11.875%203.27808%2011.8531%203.22509%2011.814%203.18602C11.7749%203.14695%2011.7219%203.125%2011.6667%203.125H8.33333ZM3.39083%208.84583C3.62333%208.54833%203.99083%208.34833%204.74917%208.23833C5.525%208.12667%206.57667%208.125%208.07083%208.125H11.9292C13.4233%208.125%2014.4742%208.12667%2015.25%208.23833C16.0092%208.34833%2016.3767%208.54833%2016.6092%208.84667C16.8417%209.14417%2016.9467%209.54833%2016.8683%2010.3117C16.7892%2011.0917%2016.5358%2012.1117%2016.1733%2013.5617C15.9425%2014.485%2015.7817%2015.125%2015.6%2015.6033C15.4233%2016.065%2015.2508%2016.3092%2015.035%2016.4783C14.8192%2016.6467%2014.54%2016.7542%2014.0492%2016.8133C13.5408%2016.8742%2012.8825%2016.875%2011.9292%2016.875H8.07083C7.1175%2016.875%206.45833%2016.8742%205.95083%2016.8133C5.45917%2016.755%205.18083%2016.6467%204.965%2016.4783C4.74833%2016.3092%204.57583%2016.065%204.4%2015.6033C4.21833%2015.125%204.0575%2014.485%203.82583%2013.5617C3.46417%2012.1117%203.21%2011.0917%203.13083%2010.3117C3.05333%209.54833%203.15833%209.14333%203.39083%208.84583Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
    display: inline-block;
    align-self: center;
}

.shop_products .add_to_cart_button:hover {
    background: #D21200 !important;
    color: #fff !important;
}

.shop_products .add_to_cart_button::after,
.qd_added_check {
    position: absolute !important;
    right: 2px !important;
    top: -7px !important;
    background: #000;
    border-radius: 50%;
    height: 20px;
    width: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0px;
    font-size: 12px;
}
.qd_added_check{
    height: 20px;
    width: 20px;
    padding: 5px;
}
.qd_added_check svg{
    fill: #fff;
}
.shop_products .added_to_cart.wc-forward {
    position: absolute;
    bottom: -22px;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: 12px;
    color: #D21200;
    font-weight: 600;
    text-decoration: underline;
}

/* カート追加後の「チェックマーク」と「お買い物カゴを表示」リンクは非表示(蓮侍様指示)。
   文言変更は JS 側で停止済。表示要素のみここで確実に隠す。
   - .qd_added_check          : ボタン右上のチェック
   - .qd_adding_cart_popup__check : 追加完了ポップアップ内の緑チェック
   - .added_to_cart.wc-forward    : WC「お買い物カゴを表示」リンク */
.qd_added_check,
.qd_adding_cart_popup__check,
.added_to_cart.wc-forward {
    display: none !important;
}
/* 商品カードボタン右上の黒丸チェック(疑似要素 ::after)も消す。
   ::before のカートアイコンは残す。 */
.shop_products .add_to_cart_button::after {
    display: none !important;
    content: none !important;
}

.shop_products .qd_card_info .red {
    color: #727272;
    font-size: 14px;
    font-weight: 600;
    line-height: 26.67px;
    margin-top: 10px;
}

.wwdc_sws_title {
    color: #E27A3F;
    font-size: 20px;
    font-weight: 600 !important;
    line-height: normal;
}

.shop_products nav.woocommerce-pagination .page-numbers {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    overflow: visible;
    border: none;
}

.shop_products nav.woocommerce-pagination ul li {
    border-right: none;
}

.shop_products nav.woocommerce-pagination ul li span.current {
    background: #D21200 !important;
    color: #fff !important;
}

.nv_divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 17px;
    width: 100%;
    position: relative;
    margin-bottom: 24px;
}

.nv_divider::before,
.nv_divider::after {
    content: "";
    flex: 1;
    border-top: 1px dashed #BD9675;
}

.nv_text {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    white-space: nowrap;
}

.nv_dot {
    width: 15px;
    height: 15px;
    background-color: #D21200;
    border-radius: 50%;
    flex-shrink: 0;
}

.qd_card_title_wrap .woocommerce-loop-product__title {
    display: -webkit-box;
    -webkit-line-clamp: 2; /* 3行→2行: 余白削減しつつ高さを揃える */
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 52px; /* 2行分を確保してカード間の高さ・線位置を揃える(旧82px=3行) */
    font-size: 20px !important;
    font-weight: 600;
    padding: 0 !important;
}

.shop_products .qd_card_actions_wrap {
    /* 旧 absolute+bottom固定 → 通常フロー化。margin-top:auto で下寄せし、余白の固定確保を不要に(#175) */
    margin-top: auto;
}

.shop_products .qd_card_actions_wrap .qd_add_cart a,
.search-results .qd_card_actions_wrap .qd_add_cart a {
    margin-top: 10px !important;
}
.wwdc_best_products .nv_text{
    font-size: 20px;
}
.wwdc_best_products .nv_divider{
    background: #FFF9F4;
    padding: 20px;
    border-radius: 30px;
}
html body .wwdc_best_products .qd_badge {
    width: unset;
    height: 87px;
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
}
html body .wwdc_best_products .qd_card_body{
    position: relative;
}
.shop_products .wwdc_best_products .qd_card .qd_card_body .qd_card_body_up{
    padding: 70px 20px 20px 20px;
    background: #fff;
    border-radius: 30px;
}
.shop_products .wwdc_best_products .qd_card_title_wrap .woocommerce-loop-product__title{
    color: #E27A3F;
}
.shop_products .wwdc_best_products .qd_card_inner .qd_card_price{
    line-height: 26.67px;
    font-weight: 600;
}
.shop_products .wwdc_best_products .qd_card_inner:hover .qd_card_price{
    background: #FFF3E8;
}
.shop_products .wwdc_best_products .qd_variation_item + .qd_variation_item {
  border-top: 1px solid #c7c7c7;
}
.shop_products .wwdc_best_products .qd_variation_item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0px 0 5px 0;
}

.shop_products .wwdc_best_products .qd_variation_item:last-child {
  border-bottom: none;
}
.shop_products .wwdc_best_products .qd_variation_name::after {
  content: ":";
  margin-left: 2px;
  color: #000;
}

.shop_products .wwdc_best_products .qd_variation_name {
  font-weight: 600;
  color: #000;
  min-width: 60px; 
  white-space: nowrap;
}

.shop_products .wwdc_best_products .qd_variation_price {
  color: #d21200;
  font-weight: 500;
}
.shop_products .wwdc_best_products .qd_card_price{
    border-radius: 10px;
}
/* Shop page end */

/* Cart page start */


.woocommerce-cart .woocommerce {
    margin: 50px 0;
}

.woocommerce-cart .wwdc__cart_intervin {
    display: flex;
    align-items: flex-start;
    gap: 24px;
}
.woocommerce-cart .wwdc__cart_intervin .wwdc_cart_rightes{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.woocommerce-cart .wwdc__cart_intervin .wwdc_cart_lefties {
    max-width: 870px;
    width: 100%;
    flex-shrink: 0;
}

.woocommerce-cart .nv_notice {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 10px;
    background: #fff;
    padding: 5px 24px;
    border-radius: 20px;
    max-width: 100%;
    margin-bottom: 10px;
}

.woocommerce-cart .nv_notice_text {
    font-size: 14px;
    color: #1E1E1E;
    font-weight: 700;
    line-height: 100%;
}

.woocommerce-cart .nv_notice_btn {
    padding: 5px 15px;
    border: 2px solid #D21200;
    border-radius: 90px;
    background: transparent;
    color: #D21200;
    font-size: 14px;
    font-weight: 700;
    line-height: 26.67px;
    cursor: pointer;
    transition: all 0.3s ease;
    flex-shrink: 0;
    font-family: var(--noto-font);
}

.woocommerce-cart .nv_notice_btn:hover {
    background: #D21200;
    color: #fff;
}

.woocommerce-cart .product-thumbnail,
  table.wwcs_confirm_table .wwcs_product_name_wrap{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    line-height: 26px !important;
}

.woocommerce-cart .product-thumbnail br {
    display: none;
}

.woocommerce-cart .product-thumbnail a:nth-of-type(2) {
    max-width: 327px;
    width: 100%;
}

.woocommerce-cart .product-thumbnail img,
 table.wwcs_confirm_table .wwcs_product_thumb img{
    box-shadow: 0px 0px 23.7px 2px #00000040 !important;
    height: 72px !important;
    width: 72px !important;
    flex-shrink: 0 !important;
    border-radius: 10px;
    border: 2px solid #fff !important;
}

.woocommerce-cart .product-thumbnail a {
    display: flex;
}

.woocommerce-cart table.shop_table thead tr{
    background-color: #D21200;
    color: #FFF;
    font-size: 16px;
    font-weight: 600;
}
table.wwcs_confirm_table thead tr{
    color: #FFF;
    font-size: 16px;
    font-weight: 600;
}

.woocommerce-cart table.shop_table tbody:not(.cart-totals tbody) {
    background: #fff;
}

.woocommerce-cart .shop_table.cart-totals tbody {
    border-top: 1px solid #E4E7E9;
    border-bottom: 1px solid #E4E7E9;
    padding: 20px 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.woocommerce-cart .shop_table.cart-totals tbody td,
.woocommerce-cart .woocommerce-shipping-totals th {
    max-width: 50%;
    width: 100%;
    color: #000;
    font-weight: 600;
}

.woocommerce-cart .shop_table.cart-totals tbody tr {
    display: flex;
}

.woocommerce-cart .shop_table.cart-totals tbody tr td:last-child,
label[for="shipping_method_0_flat_rate1"] .woocommerce-Price-amount {
    text-align: end;
    font-size: 20px;
}
.woocommerce-cart label[for="shipping_method_0_flat_rate1"] .woocommerce-Price-amount{
    color: #000;
}

.woocommerce-cart .shop_table.cart-totals tbody tr td:first-child,
.woocommerce-cart .woocommerce-shipping-totals th {
    font-size: 20px;
}

.woocommerce-cart table.shop_table thead tr th,
table.wwcs_confirm_table  thead tr th {
    padding: 10px !important;
}

.woocommerce-cart table.shop_table td,
table.wwcs_confirm_table td {
    padding: 13px !important;
    font-size: 16px;
    color: #1e1e1e;
    font-weight: 600;
    line-height: 20px;
}

.woocommerce-cart table.shop_table thead tr th:nth-of-type(1) {
    border-top-left-radius: 10px;
    white-space: nowrap;
}

.woocommerce-cart table.shop_table td small.includes_tax,
.woocommerce-cart label[for="shipping_method_0_flat_rate1"]{
    line-height: normal;
    font-size: 16px;
    color: #D21200;
}
.woocommerce-cart table.shop_table thead tr th:nth-of-type(6) {
    border-top-right-radius: 10px;
}

.woocommerce-cart .product-remove-inner {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 22px;
    width: 22px;
    position: relative;
    vertical-align: middle;
}

.woocommerce-cart .product-remove-inner a {
    display: block;
    width: 20px;
    height: 20px;
    line-height: 0;
    font-size: 0 !important;
    color: transparent !important;
    background-color: #EE5858;
    -webkit-mask: url("../img/trash.svg") no-repeat center / contain;
    mask: url("../img/trash.svg") no-repeat center / contain;
    transition: background-color 0.2s, opacity 0.2s;
}

.woocommerce-cart .product-remove-inner a:hover {
    background-color: #c0392b;
}

.woocommerce table.shop_table {
    border: none;
}

.woocommerce table.shop_table .qd_cart__qty-controls {
    width: 110px;
}
.wwdc_hidden_actions,
.woocommerce-cart .actions .button {
    display: none;
}

.woocommerce-cart .wwdc_list_progress {
    padding-bottom: 20px;
    border-bottom: 1px solid #E4E7E9;
    margin-bottom: 20px;
}

.woocommerce-cart .wwdc_list_progress ul li {
    list-style: disc;
    list-style-position: inside;
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: 35px;
}

.wwdc_actions_vbtns {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.wwdc_actions_vbtns .wwdc_cart_actions_lefties {
    display: flex;
    gap: 20px;
    align-items: center;
    flex-wrap: wrap;
}

.wwdc_actions_vbtns :is(button, a) {
    padding: 11.5px 78.38px;
    border-radius: 90px;
    font-size: 16px;
    font-weight: 600;
    line-height: 26.67px;
    color: #fff;
    transition: 0.2s ease-in;
    cursor: pointer;
}

.wwdc_actions_vbtns button:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.wwdc_actions_vbtns button:disabled:hover {
    border-color: #000;
    background-color: #000;
    color: #fff;
}

.woocommerce-cart input.name.update_cart {
    display: none;
}

.wwdc_actions_vbtns .wwdc_shop_page {
    background-color: #D21200;
    border: 1px solid #D21200;
}

.wwdc_actions_vbtns .wwdc_shop_page:hover {
    background-color: #000;
    color: #fff;
    border-color: #000;
}

.wwdc_actions_vbtns .wwdc_checkout_page {
    background-color: #000000;
    border: 1px solid #000;
}
.wwcs_required_mark.required{
    color: #d21200;
}
html body .woocommerce form .form-row .required{
    color: #d21200;
}
.wwdc_actions_vbtns .wwdc_checkout_page:hover {
    background-color: transparent;
    border-color: #000;
    color: #000;
}

.wwdc_actions_vbtns .wwdc_clearcart_page {
    padding: 11.5px 46.25px;
    border: 1px solid #000000;
    color: #000;
    text-wrap: nowrap;
}

.wwdc_actions_vbtns .wwdc_clearcart_page:hover {
    background-color: #000;
    color: #fff;
}

.woocommerce-cart .qd_cart_box {
    border: 3px solid #E5E5E5;
    background-color: #FFF9F4;
    Padding: 20px;
    border-radius: 30px;
}

.woocommerce-cart .woocommerce-cart-form {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.woocommerce-cart .wwfdc_cart_informtion .wwcart_highlight {
    color: #1E1E1E;
    font-size: 20px;
    font-weight: 600;
    line-height: 100%;
}

.woocommerce-cart .wwfdc_cart_informtion .qd_notice_list {
    position: relative;
    padding: 10px;
    background: #FFE3E0;
    border-radius: 10px;
    padding-left: 40px;
    margin-top: 18px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.woocommerce-cart .wwfdc_cart_informtion .qd_notice_list li {
    list-style: disc;
    font-size: 14px;
    line-height: 27px;
    font-weight: 600;
    color: #000;
}

.qd_cart_table_wrap {
    max-height: 500px;
    overflow-y: auto;
    height: 100%;
}

.woocommerce-cart .return-to-shop .button {
    background-color: #D21200 !important;
    color: #fff !important;
    border: none !important;
    padding: 13px 31px !important;
    border-radius: 30px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
}

.woocommerce-info {
    border-top-color: #D21200;
    font-size: 16px;
    font-weight: 600;
    color: #000;
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 20px 30px;
    margin-bottom: 30px;
}

.woocommerce-info::before {
    color: #D21200;
    position: static;
}

.woocommerce-cart .wwdc_cart_rightes .qd_member_block label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 8px;
    cursor: pointer;
}

.woocommerce-cart .wwdc_cart_rightes .qd_member_block label input {
    height: 30px;
    width: 30px;
    accent-color: #D21200;
}

.wwdc_cart_rightes .qd_member_notes {
    position: relative;
    padding: 10px;
    background: #FFE3E0;
    border-radius: 10px;
}

.wwdc_cart_rightes .qd_member_notes :is(li, p) {
    font-size: 16px;
    color: #000;
    font-weight: 600;
}

.wwdc_cart_rightes .qd_member_notes ul li {
    list-style: disc;
}

.wwdc_cart_rightes .qd_member_notes ul li a,
.woocommerce-cart .wwfdc_cart_informtion .qd_notice_list li a {
    color: #D21200;
    text-decoration: underline;
}

.wwdc_cart_rightes .qd_member_notes ul {
    padding-left: 30px;
}

.wwdc_cart_rightes .qd_cart_box {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.wwdc_cart_rightes .qd_member_login .qd_login__form_inner {
    background-color: #FFFFFF;
    border-radius: 20px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.wwdc_cart_rightes .qd_member_login .qd_login__form_inner .qd_login__field {
    flex-direction: column;
    gap: 8px;
    margin-bottom: 0;
    align-items: stretch;
}

.wwdc_cart_rightes .form_dash {
    background-color: #E4E7E9;
    outline: none;
    border: none;
    margin: 20px 0;
    height: 1px;
}

.wwdc_cart_rightes .qd_testimonial__read-more {
    width: 100%;
    border-radius: 90px;
    font-size: 16px;
}

.qd_member_register:has(.qd_testimonial__read-more.disabled) {
  cursor: not-allowed;
}

.qd_member_register:has(.qd_testimonial__read-more.disabled) .qd_testimonial__read-more {
  pointer-events: none;
  opacity: 0.5;
}

.wwdc_cart_rightes .qd_testimonial__read-more:hover{
    background-color: #000;
    color: #fff;
    border-color: #000;
}
.wwdc_cart_rightes .qd_testimonial__read-more svg {
    transition-delay: 0.1s;
}

.woocommerce-message {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.woocommerce-message::before {
    position: static;
}

/* WCエラー通知: アイコン(!)とテキストが重なる問題を全ページ共通で解消。
   アイコンは絶対配置のまま、テキスト側に十分な左パディングを確保する。
   WCコアの .woocommerce .woocommerce-error(詳細度0,2,0)に勝つため !important を付与。 */
.woocommerce-error {
    padding-left: 52px !important;
}
.woocommerce-error::before {
    left: 20px;
}

.qd_cart__btn.disabled {
    cursor: not-allowed;
    opacity: 0.5;
    /* pointer-events: none; */
    user-select: none;
}

.qd_cart_totals_wrap {
    display: flex;
    flex-direction: column;
    gap: 0;
    border-top: 2px solid #E4E7E9;
    padding-top: 16px;
}

.qd_cart_total_row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
    font-size: 16px;
    font-weight: 600;
    color: #1E1E1E;
}

.qd_cart_total_row--grand {
    border-top: 2px solid #D21200;
    border-bottom: 2px solid #D21200;
    margin-top: 8px;
    padding: 12px 0;
    font-size: 20px;
    font-weight: 700;
}

.qd_cart_total_row--grand .qd_cart_total_value {
    font-size: 20px;
    color: #D21200;
}

.qd_cart_qty_update_wrap {
    display: flex;
    justify-content: flex-end;
    padding: 10px 0;
}

.qd_cart_qty_update_wrap button[name="update_cart"] {
    background-color: #000;
    color: #fff;
    border: 1px solid #000;
    padding: 8px 24px;
    border-radius: 90px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.2s ease-in;
}

.qd_cart_qty_update_wrap button[name="update_cart"]:hover {
    background-color: transparent;
    color: #000;
}

/* Cart page end */

/* Health page start */
.qd_intro_sec .qd_container.qd_health_con {
    background: #FFFAF2;
    border-radius: 30px;
    padding: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: static;
}

.qd_health_con .qd_voice_intro {
    max-width: 100%;
    width: 100%;
    text-align: center;
    font-weight: 600;
    font-size: 16px;
    line-height: 58px;
    color: #000000;
    margin: 0;
    border: 4px solid #E27A3F;
    padding: 90px 30px 30px;
    border-radius: 40px;
    position: relative;
    background-color: #fff;
}

.qd_health_con .flot_1_quality img {
    height: 73px;
    filter: unset;
}

.qd_health_con .flot_1_quality {
    top: -5%;
    left: 50%;
    transform: translateX(-50%);
}

.qd_intro_sec.qd_health_sec {
    margin-top: 100px;
}

.qd_quality_feature_section.qd_health_feature {
    margin-top: 50px;
    margin-bottom: 0;
}

.qd_quality_feature_section.qd_health_feature .qd_quality_text_col .qd_quality_content_box {
    margin-left: -26%;
}

.qd_quality_feature_section.qd_health_feature .qd_quality_img img {
    border-radius: 20px 0px 20px 20px;
}

.qd_quality_feature_section.qd_health_feature .qd_reverse .qd_quality_img img {
    border-radius: 0px 20px 20px 20px;
}

.qd_quality_feature_section.qd_health_feature .qd_quality_img {
    padding-bottom: 137.7%;
}

.qd_quality_feature_section.qd_health_feature .qd_reverse .qd_quality_text_col .qd_quality_content_box {
    margin-left: 0;
    margin-right: -30%;
}

.qd_quality_feature_section.qd_health_feature .qd_quality_content_box {
    min-height: 520px;
    display: flex;
    align-items: center;
}

.qd_quality_feature_section.qd_health_feature .qd_quality_row {
    margin-top: 30px;
    margin-bottom: 30px;
}

.qd_quality_feature_section.qd_health_feature .qd_reverse .qd_quality_heading {
    padding: 19px 52px;
}

.qd_quality_feature_section.qd_health_feature .qd_quality_heading {
    font-weight: 600;
}

.qd_quality_feature_section.qd_health_feature .qd_quality_content_box {
    line-height: 55px;
}

.qd_plan_section.health .qd_category_header {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 50px;
}

.qd_plan_section.health {
    background: linear-gradient(180deg, #FAF4EE 0%, #FFFFFF 100%);
    padding: 100px 0;
    margin: 50px 0 0 0;
}

.qd_plan_section.health .qd_plan_item {
    padding: 38px 17px 43.81px 17px;
    display: unset;
    text-align: center;
    border-radius: 30px;
    border-color: #FFE4CA;
    background: #FFF3E8;
    max-width: calc(25% - 15px);
    width: 100%;
}

.qd_plan_section.health .qd_plan_item .qd_plan_badge {
    background-color: transparent;
    color: #000;
    font-size: 24px;
    font-weight: 600;
    padding: 0px;
    border-radius: 0;
    margin: 0;
    display: unset;
    position: static;
}

.qd_plan_section.health .qd_plan_badge img {
    display: none;
}

.qd_plan_section.health .qd_plan_item .qd_plan_badge::before {
    display: none;
}

.qd_plan_section.health .qd_plan_item .qd_category_trigger {
    left: 50%;
    transform: translateX(-50%);
    background: #FFE4CA;
    border-color: #FFFFFF;
}

.qd_plan_section.health .qd_plan_item:hover {
    box-shadow: 0px 0px 20px 0px #0000001A;
    box-shadow: 0px 25px 30px 0px #00000040;
    border: 1px solid #fff;
    background: #fff;
}

.qd_plan_section.health .qd_plan_item:hover .qd_category_trigger {
    background-color: #D21200;
    border-color: #fff;
    border-width: 2px;
}

.qd_plan_section.health .qd_plan_item:hover .qd_category_trigger img {
    filter: unset;
}

.qd_plan_section.health .qd_plan_grid {
    display: flex;
    gap: 20px;
    row-gap: 35px;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch;
}

.qd_plan_grid_5col .qd_plan_item {
    max-width: calc(20% - 16px) !important;
}

.health.plan_gradiant {
    background: #FFFAF2;
    margin: 0;
}

.qd_plan_section.health .qd_plan_inner:nth-child(3) {
    margin-bottom: 0px;
}

.qd_health_drinkplan__section {
    width: 100%;
    background: url(../img/health_bg_shape.svg) no-repeat;
    padding: 100px 0;
    background-position: -250PX 0PX;
    background-size: contain;
}

.qd_health_drinkplan__card {
    display: flex;
    align-items: flex-start;
}

.qd_health_drinkplan__image-wrap {
    position: relative;
    max-width: 40%;
    width: 100%;
    flex-shrink: 0;
    z-index: 2;
}

.qd_health_drinkplan__image-icon,
.qd_health_drinkplan__meta-icon {
    width: 120px;
    height: 120px;
    background: #fff;
    border: 5px solid #FFEAD4;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 3;

}

.qd_health_drinkplan__image-wrap .qd_health_drinkplan__image-icon {
    position: absolute;
    top: 16px;
    left: 16px;
}

.qd_health_drinkplan__image-icon :is(svg, img),
.qd_health_drinkplan__meta-icon :is(svg, img) {
    width: 70px;
    height: 70px;
}

.qd_health_drinkplan__image {
    width: 100%;
    height: 590px;
    object-fit: cover;
    display: block;
    border-radius: 20px;
}

.qd_health_drinkplan__content {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.qd_health_drinkplan__meta-wrap {
    background: linear-gradient(to bottom, #FFFFFF, #FFEAD4);
    padding: 53px 56px;
}

.qd_health_drinkplan__meta {
    display: flex;
    align-items: center;
    gap: 32px;
}

.qd_health_drinkplan__meta-item {
    display: flex;
    align-items: center;
    gap: 30px;
}

.qd_health_drinkplan__meta-text {
    display: flex;
    flex-direction: column;
}

.qd_health_drinkplan__meta-label {
    font-size: 32px;
    color: #000;
    font-weight: 600;
}

.qd_health_drinkplan__meta-value {
    font-size: 40px;
    font-weight: 600;
    color: #D21200;
    line-height: 100%;
    text-transform: uppercase;
    margin-top: 9px;
}

.qd_health_drinkplan__desc-outer {
    position: relative;
    margin-left: -190px;
    z-index: 4;
}

.qd_health_drinkplan__desc-box {
    background: #fff;
    border: 3px solid #E27A3F;
    border-radius: 0px 0px 40px 0px;
    padding: 40px;
    position: relative;
}

.qd_health_drinkplan__desc-tag {
    display: inline-block;
    background: #FFD900;
    color: #000;
    font-size: 16px;
    font-weight: 600;
    padding: 10px 30px;
    border-radius: 40px;
    margin-bottom: 0;
}

.qd_health_drinkplan__desc-arrow {
    background: #D21200;
    border-radius: 200px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.2s;
    box-shadow: 0px 4px 4px 0px #00000040;
    border: 2px solid #fff;
    padding: 8px 28px;
}

.qd_health_drinkplan__desc-arrow:hover {
    background: #a93226;
}

.qd_health_drinkplan__desc-arrow svg {
    width: 14px;
    height: 14px;
}

.qd_health_drinkplan__desc-text {
    font-size: 18px;
    line-height: 55px;
    color: #000;
    margin-top: 10px;
}

.qd_health_drinkplan__buttons {
    display: flex;
    gap: 14px;
    margin-top: 50px;
    flex-wrap: wrap;
    justify-content: center;
}

.qd_health_drinkplan__buttons .qd_health_drinkplan__btn-icon:not(.qd_delivery_first .qd_health_drinkplan__btn-icon) {
    height: 44px;
    width: 44px;
}
.qd_delivery_first .qd__btn .qd_health_drinkplan__btn-icon{
    display: flex;
}
.qd_delivery_first .qd_health_drinkplan__btn-icon img{
     height: 24px !important; 
    width: 24px !important;
}

.qd_health_drinkplan__buttons .qd_health_drinkplan__btn-icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.qd_health_drinkplan__buttons .qd__btn:hover{
    background-color: #000;
    color: #fff;
    border-color: #000;
}
.qd_health_drinkplan__buttons .qd__btn:hover .qd_health_drinkplan__btn-icon img{
    filter: brightness(100);
}
.health .qd_plan_title::after {
    background-color: #D21200;
}

.health .qd_plan_inner {
    margin-bottom: 50px;
}

.health .qd_plan_name {
    color: #000;
    font-weight: 600;
}

.qd_health_drinkplan__desc-outer .tile_btn_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Health page end */
/* guide page start */
.qd_health_sec.guide .qd_voice_intro {
    font-size: 40px;
    font-weight: 600;
    line-height: 100%;
}
.qd_health_sec.guide .qd_voice_intro p{
    font-size: 16px;
    font-weight: 600;
    line-height: 58px;
}
.qd_health_sec.guide .qd_voice_intro h2{
    font-size: 40px;
    line-height: 52px;
    letter-spacing: -1px;
    margin-bottom: 10px;
    font-weight: 600;
}
.qd_health_sec.guide .qd_health_con .qd_voice_intro:has(h2) .flot_1_quality {
    top: -5%;
}

.guide .qd_health_con .flot_1_quality {
    top: -10%;
}

.qd_quality_feature_section.qd_guide_feature .qd_quality_image_col {
    align-items: flex-end;
    justify-content: space-between;
    gap: 0;
    display: flex;
}

.qd_quality_feature_section.qd_guide_feature .qd_quality_text_col,
.qd_quality_feature_section.qd_guide_feature .qd_quality_image_col {
    max-width: 100%;
    width: 100%;
}

.qd_quality_feature_section.qd_guide_feature .qd_quality_row {
    flex-direction: column;
}

.qd_quality_feature_section.qd_guide_feature .qd_quality_img img {
    position: static;
}

.qd_quality_feature_section.qd_guide_feature .qd_quality_img {
    padding-bottom: 0%;
}

.qd_quality_feature_section.qd_guide_feature .qd_quality_heading {
    font-size: 40px;
    font-weight: 600;
    color: #000000;
}

.qd_quality_feature_section.qd_guide_feature .qd_quality_text_col .qd_quality_content_box {
    margin-left: 0%;
    margin-right: 0%;
    padding: 0px 40px;
    background: linear-gradient(0deg, #FFEAD4 0%, #fff 50%);
    font-size: 20px;
    line-height: 55px;
    min-height: 180px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.qd_quality_feature_section.qd_guide_feature .qd_quality_row.qd_reverse .qd_quality_image_col {
    flex-direction: row-reverse;
}

.qd_quality_feature_section.qd_guide_feature {
    margin-top: 0px;
}

.qd_quality_feature_section.qd_guide_feature .qd_quality_row {
    margin-bottom: 50px;
    margin-top: 50px;
}

.qd_health_sec.guide .qd_voice_intro.bottom {
    font-size: 16px;
    line-height: 42px;
    text-align: left;
}

.guide.sec .flot_1_quality {
    top: -3%;
}

/* guide page end */
/* -------------------------------------- Rules page start --------------------------------------*/

.qd_rules_section .qd_plan_title_box {
    margin-bottom: 30px;
}

.qd_rules_section .qd_plan_inner,
.wwcs_confirm_section .qd_plan_inner {
    padding: 30px;
    background-color: #FFFAF2;
    border-radius: 30px;
}

.qd_rules_section .qd_rules_detail_flex_container :is(li, p),
.qd_outside_text {
    font-size: 18px;
    line-height: 45px;
    color: #000;
    font-weight: 600;
    list-style-position: inside;
}

.qd_rules_section .rules_inner {
    display: flex;
    flex-direction: column;
    gap: 50px;
}

/* -------------------------------------- Rules page end --------------------------------------*/
/* -------------------------------------- Law page start --------------------------------------*/
.qd_law_section .qd_area_kana_label {
    max-width: 307px;
    width: 100%;
    justify-content: left;
}

.qd_law_section .qd_area_detail_flex_container {
    margin-top: 0px;
}

.qd_law_section .qd_area_district_item {
    width: 100%;
    text-align: left;
    flex-shrink: unset;
    border-radius: 10px;
    font-weight: 600;
}

.qd_law_section .qd_area_district_item li {
    list-style-type: disc;
}

.qd_law_section .qd_area_district_item ul {
    padding-left: 30px;
}

.qd_law_section .qd_plan_inner {
    padding: 40px;
    margin-bottom: 0px;
}

.qd_law_section .qd_area_detail_row {
    gap: 41px;
    align-items: center;
}

/* -------------------------------------- Law page end --------------------------------------*/
/* -------------------------------------- delivery page's start --------------------------------------*/
.qd_plan_title_box.reverse .qd_plan_title {
    flex-direction: row-reverse;
}

.qd_plan_title_box.reverse .qd_plan_title::after {
    margin-left: 0px;
    margin-right: 17px;
    background-color: #D21200;
}

.qd_delivery_first .delivery_box {
    background-color: #FFF7EF;
    background-image: none;
}

.qd_delivery_first .qd_plan_title_box {
    margin-bottom: 40px;
}

.qd_delivery_first .qd_intro_bottom_img {
    padding-bottom: 26.1%;
}

.qd_delivery_first .qd_intro_bottom_row {
    margin-bottom: -360px;
}

.delivery_box_con {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    gap: 24px;
    margin-bottom: 30px;
}

.delivery_box_con .left,
.delivery_box_con .right {
    width: 100%;
}

.delivery_box_con .left {
    max-width: 60%;
}

.delivery_box_con .right {
    max-width: 40%;
}

.delivery_box_con .right img {
    max-height: 452px;
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 30px;
}

.delivery_box.without_image {
    margin-top: 230px;
}

.qd_features__section {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.qd_features__card {
    border: 3px solid #E27A3F;
    border-radius: 0px 0px 40px 0px;
    padding: 40px;
    background: #fff;
}

.qd_features__card-header {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-bottom: 10px;
}

.qd_features__card-icon {
    width: 80px;
    height: 80px;
    border: 5px solid #FFEAD4;
    padding: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.qd_features__card-icon :is(svg, img) {
    width: 100%;
    height: 100%;
}

.qd_features__card-title {
    font-size: 32px;
    font-weight: 600;
    color: #000;
}

.qd_features__card-text {
    font-size: 18px;
    line-height: 55px;
    color: #000;
    font-weight: 300;
}

.qd_delivery_first {
    margin-bottom: 0;
}

.Features_first {
    padding: 150px 0;
    margin-top: 0;
    background-image: url(../img/yellow-shape_bg.svg);
    background-position: -370px 50px;
    background-repeat: no-repeat;
    background-size: contain;
}

.Features_first .qd_sub_heading {
    font-size: 24px;
    line-height: 55px;
    font-weight: 300;
    margin-top: 17px;
}

.Features_first .qd_category_header {
    margin-bottom: 50px;
}

.Features_first .qd_sec_title {
    font-size: 40px;
    margin-bottom: 17px;
}

.Features_first.sec {
    background-image: url(../img/orange_shape_bg.svg);
    background-position: 370px 50px;
}

.Features_first.sec .qd_features__card {
    border-color: #D21200;
}

.qd_features__card .qd_plan_title::after {
    background-color: #D21200;
}

.qd_delivery_first.qd_reverse .delivery_box_con {
    flex-direction: row-reverse;
    align-items: center;
}

.qd_delivery_first.qd_reverse .delivery_box_con .qd_plan_title_box {
    margin-bottom: 24px;
}

.qd_delivery_first.qd_reverse .qd_intro_text {
    margin: 0;
}

.qd_delivery_first.qd_reverse .delivery_box {
    background-color: #fff;
}

.qd_delivery_first.qd_reverse {
    padding: 50px 0;
}

.qd_delivery_first.qd_reverse .qd_testimonial__read-more {
    width: max-content;
    margin: 0 auto;
}

.qd_grediant {
    background-color: #FFF7EF;
}

.qd_delivery_first.qd_reverse .qd_area_district_list {
    gap: 15px;
}

.qd_delivery_first.qd_reverse .qd_area_district_list .qd_area_district_item {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 10px;
}

.qd_delivery_first.qd_reverse .btn_inside {
    height: 40px;
    width: 40px;
    border-radius: 6px;
    background: #D21200;
    border: 1px solid #D21200;
    display: flex;
    justify-content: center;
    flex-shrink: 0;
}

.qd_delivery_first.qd_reverse .qd_features__card {
    border-radius: 40px 0 40px 0;
}

.qd_delivery_first.qd_reverse .qd_container {
    display: flex;
    flex-direction: column;
    gap: 50px;
}

.delivery_box.inside_title .qd_sec_title {
    font-size: 28px;
    letter-spacing: -1px;
}

.delivery_box.inside_title .qd_category_header {
    margin-bottom: 30px;
}

.delivery_box.inside_title .delivery_box_con {
    flex-direction: row;
    align-items: flex-start;
}

.delivery_top_hero {
    margin-top: -150px;
    margin-bottom: 46px;
}

.qd_delivery_first.qd_top_img {
    margin-top: 200px;
}

.qd_top_img .delivery_box.inside_title .qd_category_header {
    margin-bottom: 40px;
}

.qd_intro_section .qd_intro_text a {
    text-decoration: underline;
}

.qd_intro_section .qd_intro_text :is(ul, ol) {
    padding-left: 30px;
}

/* -------------------------------------- delivery page's end --------------------------------------*/
/* -------------------------------------- Column page's end --------------------------------------*/
.qd_category_header.column {
    display: flex;
    flex-direction: column;
    gap: 50px;
    margin-bottom: 50px;
}

.qd_category_header.column img {
    width: unset;
    height: 37px;
    object-fit: contain;
}

.column_box .qd_intro_text {
    margin-bottom: 0px;
}

.qd_delivery_first .delivery_box.column_box {
    background-color: #FFFAF2;
    border-radius: 30px;
}

.qd_hours_container.column_qd_hours .qd_banner_circle,
.qd_hours_container.column_qd_hours .qd_banner_circle img {
    border: none;
}

.qd_hours_container.column_qd_hours .qd_banner_circle {
    max-width: 309px;
    height: auto;
}

.qd_hours_container.column_qd_hours .qd_container {
    max-width: 998px;
}

.qd_hours_container.column_qd_hours .qd_cta {
    display: inline-flex;
    align-items: center;
    font-size: 20px;
    gap: 10px;
    padding: 10px 15px;
}

.qd_hours_container.column_qd_hours .qd_cta:hover {
    transform: unset;
}

.qd_hours_container.column_qd_hours .qd_cta span {
    display: flex;
}

.qd_hours_container.column_qd_hours .qd_cta span img {
    width: 28px;
}

.qd_hours_container.column_qd_hours .qd_hours_banner_wrap {
    display: flex;
    align-items: stretch;
    justify-content: center;
    width: 100%;
    position: relative;
}

.qd_hours_container.column_qd_hours .qd_hours_banner_wrap::after {
    content: "";
    height: 100%;
    width: 15px;
    background-image: url("../img/Hour_shape.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.qd_hours_container.column_qd_hours .qd_hours_disclaimer,
.qd_hours_container.column_qd_hours .qd_hours_big_text:nth-of-type(1) {
    margin: 0;
}

.qd_hours_container.column_qd_hours .qd_hours_banner {
    background-image: none;
}

.qd_hours_container.column_qd_hours .orange {
    background-color: #e27a3f;
    padding: 20px 20px 20px 50px;
}

.qd_hours_container.column_qd_hours .orange .qd_hours_disclaimer {
    margin-top: 10px;
}

.qd_hours_container.column_qd_hours .yellow {
    background-color: #ffc222;
    padding: 20px 50px 20px 20px;
}

.qd_hours_container.column_qd_hours .qd_tag_black {
    font-size: 16px;
}

.qd_hours_container.column_qd_hours .qd_hours_banner.yellow .qd_tag_black {
    margin-bottom: 10px;
}

.qd_hours_container.column_qd_hours .qd_hours_banner.yellow .qd_hours_disclaimer {
    margin-bottom: 10px;
}

.qd_hours_container.column_qd_hours .qd_hours_big_text {
    font-size: 24px;
    margin-bottom: 10px !important;
}

.qd_hours_container.column_qd_hours .qd_hours_disclaimer {
    font-size: 16px;
}

.qd_hours_container.column_qd_hours .yellow .qd_hours_big_text {
    color: #D21200;
}

.qd_rules_section.column_sec .qd_plan_inner {
    background-color: #FFF7EF;
    border-radius: 40px;
}

.column_img_overlay {
    width: 100%;
    position: relative;
    margin-bottom: -391px;
    margin-top: 10px;
}

.column_img_overlay__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
}


.column_img_overlay__overlay {
    display: none;
}

.column_img_overlay__content {
    position: absolute;
    bottom: 62px;
    left: 48px;
    display: flex;
    flex-direction: column;
    gap: 0;
    background: linear-gradient(to top, #FFEAD4 0%, #FFFFFF 65%);
    padding: 20px;
    border-radius: 20px;
    max-width: 709px;
    width: 100%;
}

.column_img_overlay__headline {
    display: inline-block;
    color: #D21200;
    font-size: 32px;
    font-weight: 600;
    line-height: 42px;
    margin-bottom: 10px;
}

.column_img_overlay__sub {
    color: #000;
    font-size: 20px;
    line-height: 41px;
    font-weight: 600;
}

.column_img_overlay__link {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
}

.qd_rules_section.first {
    margin-bottom: 391px;
}

.qd_rules_section.column_sec.second .column_img_overlay__content :is(span, a) {
    font-size: 32px;
}

.qd_rules_section.column_sec.second .column_img_overlay__content a .qd_red {
    color: #D21200;
}

.qd_rules_section.column_sec.second .column_img_overlay {
    margin-bottom: -171px;
}

.qd_rules_section.column_sec.second {
    margin-bottom: 171px;
}

.qd_plate_faq.column .qd_plate_card_badge {
    background: #FFC222;
    backdrop-filter: unset;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 59px;
    padding: 0 20px;
    width: max-content;
    border: none;
    color: #000000;
}

.qd_plate_faq.column .qd_plate_card_sub {
    font-size: 16px;
    line-height: 25px;
    margin-bottom: 20px;
}

.qd_plate_faq.column .qd_plate_card {
    padding-bottom: 70px;
    box-shadow: none;
}

.qd_plate_faq.column .qd_arrow_btn {
    position: absolute;
    bottom: 24px;
    border-radius: 200px;
}

.column_recom {
    padding: 50px 0;
    background-color: transparent;
}

.column_recom .qd_plan_inner {
    margin-bottom: 0px;
}

.qd_plan_section.column_recom .qd_plan_grid {
    grid-template-columns: repeat(5, 1fr);
}

.qd_btn_wrap {
    margin-top: 50px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.qd_btn_wrap .qd_cta {
    font-size: 18px;
    display: inline-flex;
    gap: 10px;
    align-items: center;
    padding: 11.5px 30px;
    line-height: normal;
    box-shadow: none;
    border-radius: 200px;
}

.qd_btn_wrap .qd_cta span,
.page-template-Column-03 .column_img_overlay__content .qd_cta span {
    display: flex;
}

.qd_btn_wrap .qd_cta span :is(img, svg),
.page-template-Column-03 .column_img_overlay__content .qd_cta span :is(img, svg) {
    height: 24px;
    width: 24px;
}

.card_inner_secondary_title {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
    padding: 30px 30px 0 30px;
}

.card_inner_secondary_title__line {
    flex: 1;
    border: none;
    border-top: 2px dotted #BD9675;
    height: 0;
}

.card_inner_secondary_title__dot {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background-color: #D21200;
    flex-shrink: 0;
}

.card_inner_secondary_title__text {
    font-size: 20px;
    font-weight: 600;
    color: #000;
    line-height: 1;
}

.column_support .delivery_box {
    margin-top: 0px;
    background-color: #FFEEE4;
    border-radius: 30px;
}

.column_support {
    margin: 50px 0;
}

.column_support .delivery_box_con .right img {
    max-height: 100%;
    border-radius: 0px;
    margin-bottom: -35px;
}

.column_support .delivery_box_con {
    margin-bottom: 0px;
    background-image: url("../img/column_2_girlsupport_1.png");
    background-position: 94% bottom;
    background-size: 42%;
    background-repeat: no-repeat;
}

.column_support .delivery_box_con .left {
    display: flex;
    flex-direction: column;
    gap: 24px;
    max-width: 100%;
    padding: 30px;
}

.column_support .delivery_box_con .left .qd_intro_text {
    font-size: 18px;
    line-height: 55px;
    font-weight: 600;
}

.column_support.has_left_img .qd_intro_content_box {
    background-color: #FFF7EF;
}

.column_support.has_left_img .delivery_box_con {
    margin-bottom: 0px;
    background-image: url("../img/column_2_girlsupport_2.png");
    background-position: 6% bottom;
    background-size: 33%;
    background-repeat: no-repeat;
}

.column_support.has_left_img .delivery_box_con .left {
    padding: 30px 30px 30px 44%;
}

.qd_rules_section.column_has_grediant {
    padding: 100px 0 550px 0;
    background-color: #FFEEE4;
    margin-bottom: 0px !important;
}

.qd_rules_section.column_has_grediant .qd_plan_inner {
    background-color: #FFFFFF;
}

.qd_rules_section.column_has_grediant .column_img_overlay {
    margin-bottom: -500px;
}

.qd_rules_section.column_sec.second.column_has_grediant .column_img_overlay {
    margin-bottom: -500px;
}

.page-template-Column-03 .column_img_overlay__content .qd_cta {
    width: max-content;
    display: inline-flex;
    align-items: center;
    font-size: 24px !important;
    margin-top: 10px;
    border-radius: 200px;
}
.column_img_overlay__content .qd_cta{
    box-shadow: none;
    gap: 10px;
}
.column_img_overlay__content .qd_cta:hover,
.qd_btn_wrap .qd_cta:hover{
    transform: unset;
}

.page-template-Column-03 .column_img_overlay__headline {
    font-size: 40px !important;
    line-height: 52px;
}

.page-template-Column-03 .column_img_overlay__sub {
    font-size: 32px !important;
    line-height: 47px;
}

.page-template-Column-03 .column_img_overlay__content .qd_cta span {
    gap: 10px;
}
.column_img_overlay__content .qd_cta span img{
    height: 44px !important;
    width: 44px !important;
}
.column_sec.has_orange .qd_plan_inner {
    background-color: #FFEEE4;
}

.column_sec.has_orange .qd_plan_inner .column_img_overlay {
    margin-bottom: 0px;
}

.page-template-Column-03 .qd_plan_section.column_recom .qd_plan_grid {
    grid-template-columns: repeat(3, 1fr);
}
.page-template-Column-04 .qd_plan_section.column_recom .qd_plan_grid {
    grid-template-columns: repeat(4, 1fr);
}
.page-template-Column-04 .delivery_box.without_image {
    margin-top: 50px;
}
.page-template-Column-04 .delivery_box_con .right {
    max-width: 30%;
}
.page-template-Column-04 .delivery_box_con .left {
    max-width: 70%;
}
.page-template-Column-04 .qd_plan_section.column_recom{
    margin-top: 100px;
}
.page-template-Column-04 .delivery_box.without_image.second .delivery_box_con{
    margin: 30px 0;
}
.page-template-Column-05 .delivery_box.without_image{
    margin-top: 0px;
}
.page-template-Column-05 .delivery_box_con .right {
    max-width: 20%;
}
.page-template-Column-05 .delivery_box_con .left {
    max-width: 80%;
}
.qd_intro_content_box_wrap{
    display: flex;
    flex-direction: column;
    gap: 50px;
}
.qd_intro_content_box.has_img_box .delivery_box_con:last-child {
    margin-bottom: 0;
}
.page-template-Column-05 .qd_intro_section.wtrn_section.qd_delivery_first{
    margin-bottom: 100px;
}
.qd_intro_text_wrap{
    display: flex;
    flex-direction: column;
    gap: 30px;
}
/* -------------------------------------- Column page's end --------------------------------------*/

/* -------------------------------------- Accoount page start --------------------------------------*/
.woocommerce-account .post-content{
    margin: 50px 0;
}
.woocommerce-account .wwdc_loyal_icon{
    display: flex;
}
.woocommerce-account .wwdc_loyal_arrow{
    display: flex;
    padding: 10px 20px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 90px;
    border: 2px solid #FFF;
    background: #F0E8E1;
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout .wwdc_loyal_arrow{
    opacity: 0;
}
.woocommerce-account .wwdc_loyal_label{
    color: #000;
}
.woocommerce-account .woocommerce-MyAccount-navigation-link:hover,
.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active{
    background-color: #E73429;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link:hover .wwdc_loyal_label,
.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active .wwdc_loyal_label{
    color: #fff;
}
.woocommerce-account .woocommerce-MyAccount-content{
    padding: 20px;
    border: 3px solid #E27A3F;
    border-radius: 30px;
    background-color: #FFF9F4;
}
.woocommerce-account .wwdc_loyal_title_wrap{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.woocommerce-account .wwdc_loyal_title_wrap .wwdc_loyal_title{
    color:#D21200;
    font-size: 28px;
    font-weight: 600;
}
.wwdc_loyal_desc{
    color:#000;
    font-size: 16px;
    font-weight: 600;
}
.woocommerce-account .wwdc_loyal_wrapper{
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.woocommerce-account .wwdc_loyal_box{
    background-color: #fff;
    border-radius: 40px;
    padding: 40px;
}
.woocommerce-account .wwdc_loyal_box .qd_plan_title{
    font-size: 24px;
    flex-direction: row;
}
.woocommerce-account .wwdc_loyal_box .qd_plan_title::after{
    margin-left: 17px;
    margin-right: 0px;
}
.woocommerce-account .wwdc_loyal_table {
    border-collapse: collapse;
    width: 100%;
    font-size: 16px;
    font-weight: 600;
    color: #000;
}
.woocommerce-account .qd_plan_title_box{
    margin-bottom: 30px;
}
.wwdc_loyal_table th,
.wwdc_loyal_table td {
    border: 1px solid #D1D1D1;
    padding: 10px 30px;
}

.wwdc_loyal_table th {
    background-color: #FFFAF2;
    text-align: left;
}

.wwdc_loyal_table td {
    background-color: #FFECD8;
    /* text-transform: capitalize; */
}
.wwdc_loyal_table td span{
    color: #D21200;
}
.wwdc_loyal_box:nth-child(3) th{
    text-align: right;
}
.woocommerce-account .address_book.billing_address_book{
    display: none;
}
.woocommerce-account.woocommerce-account .address_book header{
    border-bottom: none;
}
.woocommerce-account .wc-address-book-add-new-address .wc-address-book-add-shipping-button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a,
.wwdcs_edit_form_load{
    padding: 11.5px 30px;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    background-color: #D21200;
    border-radius: 90px;
    line-height: 26.67px;
    transition: 0.4s ease;
}
.wwdcs_edit_form_load{
     border: none;
    cursor: pointer;
}
.wwdcs_clasic{
    margin-bottom: 30px;
}
.wwdcs_clasic .qd_account_text li{
    list-style: disc;
    list-style-position: inside;
}
.woocommerce-account .wc-address-book-add-new-address .wc-address-book-add-shipping-button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a:hover,
.wwdcs_edit_form_load:hover{
    background-color: #000;
    color: #fff;
}
.woocommerce-account .shipping_address_book header h3{
    font-size: 28px;
    font-weight: 600 !important;
    color: #D21200 !important;
}
.woocommerce-account .address-notice-box{
    background-color: #FFFFFF;
    border-radius: 40px;
    padding: 20px;
}
.woocommerce-account .address_book.shipping_address_book{
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin-top: 0;
}
.woocommerce-account .qd_account_text{
     font-size: 16px;
    font-weight: 600 ;
    color: #000;
}
.woocommerce-account table.shop_table th{
    font-size: 14px;
    color: #fff;
    font-weight: 600;
}
.woocommerce-account table.shop_table thead tr{
    border-radius: 10px 10px 0px 0px ;
}
.woocommerce-account table.shop_table{
    border-radius: 10px;
    overflow: hidden;
    margin: 0;
}
.woocommerce-account table.shop_table tbody tr{
    background-color: #fff;
}
.woocommerce-account .qd_account_edit :is(a,button),
.woocommerce-account .qd_account_remove :is(a,button){
    position: relative;
    display: flex;
    flex-direction: column-reverse;
    justify-content: center;
    align-items: center;
    gap: 9px;
    text-wrap: nowrap;
}
.woocommerce-account .qd_account_edit a::after,
.woocommerce-account .qd_account_remove button::after{
    content: "";
    height: 20px;
    width: 20px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
}
.woocommerce-account .qd_account_edit a::after{
    background-image: url("../img/edit_icon.svg");
}
.woocommerce-account .qd_account_remove button::after{
     background-image: url("../img/delete_icon.svg");
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{
    display: none;
    flex-direction: column;
    gap: 20px;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address{
    width: 100%;
    background: #fff;
    border-radius: 20px;
    padding: 20px 20px 20px 20px;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 10px;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title::before,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title::after{
    display: none;
}
.woocommerce-account .qd_cta{
    font-size: 24px;
    border: none;
    font-family: unset;
    cursor: pointer;
    display: inline-flex;
    padding: 7px 30px;
    gap: 15px;
    box-shadow: none;
    align-items: center;
    border-radius: 200px;
}
.woocommerce-account .head_qd_btn{
    background-color: #000;
}
.qd_reg__step_inner_account{
    margin-top: 30px;
    padding: 20px;
}
html body .qd_reg__step_inner_account .qd_login__field .qd_login__input {
    width: 100% !important;
}
.qd_cta.qd_black{
    background-color: #000;
}
html body .btn_wrap_account :is(a,button){
    padding: 17px 30px !important;
}
html body .btn_wrap_account .has_arrow_btn img{
    transform: rotate(180deg);
}
.qd-preview__title {
     color: #D21200;
     font-size: 28px;
     font-weight: 600;
     margin-bottom: 10px;
}
.qd-preview__subtitle {
    font-size: 20px;
    color: #000;
    font-weight: 600;
}
.qd_reg__step_inner_account:has(.qd-preview__table){
    padding: 40px;
}
.my_account_orders .woocommerce-orders-table__header{
    color: #000 !important;
}
.my_account_orders{
    background: #fff;
    padding: 20px;
    border-radius: 20px;
}
.my_account_orders .woocommerce-orders-table__cell-order-actions{
    display: flex;
    align-items: center;
    gap: 10px;
}
.my_account_orders .woocommerce-orders-table__cell-order-actions a{
    background-color: #D21200;
    color: #fff;
    border-radius: 100px;
    transition: 0.2s ease;
}
.my_account_orders .woocommerce-orders-table__cell-order-actions a:hover{
    background-color: #000;
    color: #fff;
}
.my_account_orders th{
    color: unset !important;
}
.woocommerce-EditAccountForm label{
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
}
.woocommerce-EditAccountForm fieldset{
    padding: 20px;
    border-radius: 20px;
    border-color: #E27A3F;
    margin-bottom: 20px;
}
.woocommerce-EditAccountForm fieldset legend{
    padding: 10px 20px;
    background: #FFF9F4;
    border-radius: 20px;
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-EditAccountForm button.woocommerce-Button,
.woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button{
    padding: 11.5px 30px;
    background-color: #D21200;
    color: #fff;
    line-height: normal;
    font-size: 24px;
    font-family: unset;
    border-radius: 100px;
    transition: 0.2s ease;
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-EditAccountForm button.woocommerce-Button:hover,
.woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button:hover{
    background-color: #000;
    color: #fff;
}
.woocommerce .woocommerce-MyAccount-content form.woocommerce-EditAccountForm .woocommerce-form-row.form-row{
        margin-bottom: 20PX;
}
.woocommerce-account.woocommerce-dashboard p a{
    color: #D21200;
}
.woocommerce-view-order .addresses {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
}
.woocommerce-view-order .addresses address{
    background: #fff;
    border-radius: 16px;
    padding: 15px;
    margin-top: 10px;
    min-height: 150px;
}
.woocommerce-account.woocommerce-view-order table.shop_table th{
    color: #000;
}
.woocommerce-account.woocommerce-view-order .woocommerce-table--order-details{
    border-radius: 20px;
    background: #fff;
    padding: 20px;
    margin: 20px 0;
}
.woocommerce-account.woocommerce-view-order .woocommerce-order-details{
    margin-top: 20px;
}
.woocommerce-account.woocommerce-view-order tfoot td .woocommerce-button{
    background-color: #D21200;
    color: #fff;
    border-radius: 100px;
}
.woocommerce-account.woocommerce-view-order tfoot td .woocommerce-button.pay{
    background-color: #000;
}
.woocommerce-MyAccount-content .woocommerce-info{
    margin: 0;
    border-radius: 20px;
}
.woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button{
    margin-left: auto;
}
html body.woocommerce-account .woocommerce-error{
    border-top-color: #D21200;
        border-radius: 20px;
}
ul.woocommerce-error  li,
ul.woocommerce-error  li a{
    color: #D21200;
}
ul.woocommerce-error  li a{
    text-decoration: underline;
}
.woocommerce-MyAccount-content .qd_reg.ed_inner_form{
    margin: 0;
}
.woocommerce-MyAccount-content .ed_inner_form .qd_reg__box{
    padding: 0;
    border: none;
}
.qd_reg.ed_inner_form .wwdcs_changeof_loc {
    grid-column: span 2;
}
.qd_reg.ed_inner_form .qd_password_link{
    color: #D21200;
    text-decoration: underline;
    font-weight: 700;
    font-size: 16px;
        text-decoration-thickness: from-font;
}

/* -------------------------------------- Accoount page end --------------------------------------*/


/* -------------------------------------- Checkout page start --------------------------------------*/
.wwcs-multi-step-checkout{
    margin: 50px 0;
    border: 3px solid #E5E5E5;
    padding: 20px;
    border-radius: 30px;
    background-color: #FFF9F4;
}
.wwcs_date_unit{
    font-size:16px;
    font-weight: 600;
    color: #1e1e1e;
}
.wwcs-multi-step-checkout .woocommerce-error{
    border-radius: 20px;
}
.wwcs-multi-step-checkout .wwcs_section_header{
    margin-bottom: 30px;
}
.wwcs-multi-step-checkout .wwcs_section_header .wwcs_required_note{
    color: #D21200;
    font-size: 16px;
    font-weight: 600;
}
.wwcs-multi-step-checkout .wwcs_section_header .wwdc_loyal_desc{
    margin-bottom: 10px;
}
/* 各セクションカード(角丸40px)を分離して間隔を確保し、
   隣接カードの角丸が継ぎ目でえぐれて団子状に連結するのを防ぐ */
.wwcs-multi-step-checkout .qd_reg__step_inner{
    margin-bottom: 24px;
}
.wwcs-multi-step-checkout .wwcs_step > .qd_reg__step_inner:last-child{
    margin-bottom: 0;
}
.wwcs-multi-step-checkout .woocommerce-input-wrapper{
    width: 100%;
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields{
    display: flex;
    align-items: center;
    gap: 16px;
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields .wwcs_field_row{
    max-width: 815px;
    width: 100%;
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields .wwcs_field_row--split{
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields .wwcs_field_row--split .wwcs_half_field{
    flex: 1;
    min-width: 0;
}
/* 分割フィールド(姓名等)内の form-row 左パディング(3px)を除去し、入力欄の開始位置を通常行(303px)に揃える */
.wwcs-multi-step-checkout .wwcs_split_field_inputs .form-row{
    padding-left: 0;
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields .wwcs_field_row label:not(.wwcs_checkbox_label):not(.wwcs_radio_label){
    width: 160px;
    max-width: 160px;
    flex-shrink: 0;
    display: inline-block;
    vertical-align: middle;
    box-sizing: border-box;
    font-size: 16px;
    font-weight: 600;
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields .wwcs_field_row label .optional{
    display: none;
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields #shipping_delivery_time{
    font-size: 16px;
    font-weight: 600;
    color: #000;
    font-family: unset;
}
.wwcs-multi-step-checkout .wwdcs_notices{
    display: flex;
    flex-direction: column;
    font-size: 16px;
    font-weight: 600;
}
.wwcs-multi-step-checkout .wwcs_form_wrapper.qd_reg__step_inner{
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.wwcs-multi-step-checkout .wwcs_form_wrapper.qd_reg__step_inner .black{
    color: #1e1e1e;
}
.wwcs-multi-step-checkout .wwcs_form_wrapper.qd_reg__step_inner .grey{
    color: #8A8A8F;
}
.wwcs-multi-step-checkout .wwcs_field_row.wwcs_postcode_row,
.wwcs-multi-step-checkout .wwcs_phone_row,
.wwcs-multi-step-checkout .wwcs_fax_row{
    display: flex;
    align-items: center;
    gap: 10px;
}
.wwcs-multi-step-checkout .wwcs_postcode_wrap,
.wwcs-multi-step-checkout .wwcs_phone_wrap,
.wwcs-multi-step-checkout .wwcs_fax_wrap{
    display: flex;
    align-items: center;
    max-width: 100%;
    gap: 8px;
    width: 100%;
}

.wwcs-multi-step-checkout .wwdcs_checkout-fields.qd_has_post .wwcs_postcode_con_wrap{
    max-width: 100%;
    width: 100%;
}
.wwcs-multi-step-checkout :is(.wwcs_address_search,.wwcs_calendar_picker){
    padding: 10px 21px;
    background-color: #1E1E1E;
    color: #fff;
    border: none;
    outline: none;
    border-radius: 10px;
    font-size: 16px;
    font-weight: 600;
    font-family: unset;
    cursor: pointer;
    min-width: 219px;
    width: 100%;
    max-width: 200px;
    letter-spacing: -1px;
}
.wwcs-multi-step-checkout .wwcs_note.wwcs_note_info.qd_reg__note{
    max-width: 948px;
    width: 100%;
    margin-left: auto;
}
.wwcs-multi-step-checkout .wwcs_note.wwcs_note_info.qd_reg__note.qd_note_full{
    max-width: 100%     
    ;
}
.wwcs-multi-step-checkout .wwcs_note.wwcs_note_info.qd_reg__note.footer{
    max-width: 100%;
}
.woocommerce-error:has(.wwcs-multi-step-checkout){
    border-radius: 20px;
}
.woocommerce-error li:has(.wwcs-multi-step-checkout){
    color: #D21200;
}
.wwcs_error_msg{
    color: #D21200;
    font-weight: 400;
    font-size: 16px;
}
html body form.wwcs-multi-step-checkout input[type="checkbox"],
html body form.wwcs-multi-step-checkout input[type="radio"]{
    width: max-content;
}
html body form.wwcs-multi-step-checkout .wwcs_action_row .wwcs_btn img:not(.wwcs_action_row .wwcs_btn.wwcs_prev_step img){
    transform: rotate(180deg);
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields.has_select .wwcs_field_row{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}
.qd_check_label_wrap .wwcs_field_row{
    display: flex;
    align-items: center;
    margin: 20px 0 0 0;
}
.qd_check_label_wrap .wwcs_field_row .wwcs_label{
    max-width: 230px !important;
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields.has_select .wwcs_field_row
 .wwcs-multi-step-checkout .wwdcs_checkout-fields.has_select .wwcs_radio_wrap{
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields.has_select .wwcs_radio_wrap .wwcs_radio_label{
    display: flex;
    align-items: center;
    gap: 12px;
}
html body .wwcs-multi-step-checkout :is(input[type="checkbox"],input[type="radio"]){
    width: 24px !important;
    height: 24px;
    padding: 0;
    appearance: auto;
    -webkit-appearance: auto;
    accent-color: #d21200;
}
html body .wwcs-multi-step-checkout .form-row::before,
html body .wwcs-multi-step-checkout .form-row::after{
    display: none;
}
.woocommerce-form-login-toggle:has(+ form.wwcs-multi-step-checkout){
    margin-top: 50px;
}
.woocommerce form .form-row.woocommerce-validated input.input-text, .woocommerce form .form-row.woocommerce-validated select{
    border-color: #E4E7E9;
}
.wwcs_note.qd_optional_note{
    max-width: 950px;
    margin-left: auto;
    width: 100%;
    margin-top: -10px;
    color: #E73429;
}
html body .wwcs-multi-step-checkout .wwcs_postcode_con_wrap{
    width: 100%;
}
.woocommerce form.wwcs-multi-step-checkout .form-row :is(select), .woocommerce form.wwcs-multi-step-checkout :is(select){
    background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hldnJvbi1kb3duIj48cG9seWxpbmUgcG9pbnRzPSI2IDkgMTIgMTUgMTggOSI+PC9wb2x5bGluZT48L3N2Zz4=") !important;
    background-repeat: no-repeat !important;
    background-size: 16px !important;
    background-position: calc(100% - .5em) 50% !important;

}
.woocommerce form.wwcs-multi-step-checkout .wwcs_address_book_section .wwcs_field_row,
.woocommerce form.wwcs-multi-step-checkout .wwcs_delivery_date_row{
    max-width: 100%;
    display: flex;
    align-items: center;
}
.woocommerce form.wwcs-multi-step-checkout .wwcs_address_book_section .wwcs_field_row .qd_login__field,
.woocommerce form.wwcs-multi-step-checkout .wwcs_delivery_date_row .wwcs_delivery_date_wrap,
.woocommerce form.wwcs-multi-step-checkout .qd_time_fields .wwcs_field_row .wwcs_select_wrap{
    width: 100%;
}
.woocommerce form.wwcs-multi-step-checkout .wwcs_delivery_date_row{
    gap: 10px;
}
.woocommerce form.wwcs-multi-step-checkout .wwcs_date_selects{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    position: relative;
}
.woocommerce form.wwcs-multi-step-checkout .wwcs_calendar_picker{
    margin-left: 160px;
}
.woocommerce form.wwcs-multi-step-checkout .qd_time_fields .wwcs_field_row{
    display: flex;
    gap: 10px;
}
.woocommerce form.wwcs-multi-step-checkout .wwcs_field_row:has(.wwcs_textarea_wrap){
    max-width: 100%;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.woocommerce form.wwcs-multi-step-checkout .wwcs_field_row .wwcs_textarea_wrap{
    display: flex;
    flex: 1;
    min-width: 0;
    /* 備考: ラベルが wrapper 内包のため左padding除去+gap統一で textarea を 303px に揃える */
    padding-left: 0;
    column-gap: 10px;
    align-items: flex-start;
}
html body .woocommerce form.wwcs-multi-step-checkout textarea{
    min-height: 145px;
    border-color: #E4E7E9 !important;
    border-radius: 10px !important;
}
html body .woocommerce form.wwcs-multi-step-checkout .wwcs_customer_id_notes li{
    color: #1E1E1E;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    list-style-type: disc;
    list-style-position: inside;
}
html body .woocommerce form.wwcs-multi-step-checkout .wwcs_customer_id_notes{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
html body .ui-widget.ui-widget-content{
    top: 60px !important;
    right: 0px;
    left: unset !important;
}
.wwcs-multi-step-checkout table{
    border-collapse: collapse;
    width: 100%;
}
.wwcs-multi-step-checkout table.wwcs_confirm_table{
    margin-top: 30px;
    box-shadow: 0px 4px 4px 0px #00000040;
    border-radius: 10px;
}
.wwcs-multi-step-checkout table.wwcs_confirm_table tbody tr{
    cursor: pointer;
}
.wwcs-multi-step-checkout table.wwcs_confirm_table tbody tr:hover{
    background-color: #FFECD8;
}
.wwcs-multi-step-checkout table.wwcs_confirm_table tbody tr.active{
    background-color: #FFECD8;  
} 
.wwcs-multi-step-checkout table.wwcs_confirm_table thead tr{
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.wwcs-multi-step-checkout .qd_plan_title{
    font-size: 16px;
}
.wwcs-multi-step-checkout table tbody tr th{
    max-width: 30%;
    width: 100%;
}
table.wwcs_confirm_table thead tr th{
    text-align: left;
}
.wwcs_order_total_row{
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.wwcs_order_total_row .wwcs_order_total_label{
    font-size: 24px;
    font-weight: 600;
    color: #000000;
    line-height: normal;
}
.wwcs_order_total_row .wwcs_order_total_amount{
    font-size: 16px;
    font-weight: 500;
    color: #000000;
    line-height: normal;
}
.wwcs_order_total_row{
    margin-top: 5px;
}
.wwcs_order_total_row .wwcs_order_total_label{
    font-size: 16px;
    font-weight: 500;
}
.wwcs_order_total_row--grand{
    border-top: 2px solid #c83232;
    padding-top: 15px;
    margin-top: 15px;
}
.wwcs_order_total_row--grand .wwcs_order_total_label{
    font-size: 20px;
    font-weight: 700;
}
.wwcs_order_total_row--grand .wwcs_order_total_amount{
    font-size: 20px;
    font-weight: 700;
}
.wwcs_edit_link{
    color: #c83232;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    margin-left: 10px;
}
.wwcs_edit_link:hover{
    text-decoration: underline;
}
.wwcs_title_dot + .wwcs_edit_link::before{
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    background: #c83232;
    border-radius: 50%;
    margin-right: 6px;
    vertical-align: middle;
}
.wwcs_confirm_sub_title{
    color: #c83232;
    font-size: 16px;
    font-weight: 700;
    margin: 20px 0 5px;
    padding: 0;
}
.wwcs_payment_desc_box{
    background: #fef0f0;
    padding: 15px 20px;
    font-size: 13px;
    line-height: 1.8;
    margin-bottom: 20px;
    border-radius: 4px;
}
.wwcs_step3_terms_link{
    text-align: right;
    margin-bottom: 15px;
    font-size: 16px;
}
.wwcs_step3_terms_link a{
    color: #c83232;
    text-decoration: underline;
}
.wwcs_btn_back{
    background: #333;
    color: #fff;
    border: none;
    border-radius: 25px;
    padding: 12px 30px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
}
.wwcs_btn_back:hover{
    background: #555;
}
.wwcs-multi-step-checkout table.wwcs_confirm_table{
    margin-top: 5px;
}
.wwcs_step_3 .wwcs_confirm_table_wrap table.wwcs_confirm_table tbody tr{
    cursor: default;
}
.wwcs_step_3 .wwcs_confirm_table_wrap table.wwcs_confirm_table tbody tr th{
    background: #fdf5e6;
    width: 35%;
    min-width: 200px;
    padding: 10px 15px;
    font-size: 16px;
    font-weight: 500;
    border-bottom: 1px solid #eee;
}
.wwcs_step_3 .wwcs_confirm_table_wrap table.wwcs_confirm_table tbody tr td{
    padding: 10px 15px;
    font-size: 16px;
    border-bottom: 1px solid #eee;
}
#wwcs_payment_method_area .shop_table.woocommerce-checkout-review-order-table{
    display: none;
}
#wwcs_submit_order.button.alt{
    background:#c83232;
    color:#fff;
    border:none;
    border-radius:25px;
    font-size:16px;
    font-weight:700;
    padding:14px 40px;
    cursor:pointer;
}
#wwcs_submit_order.button.alt:hover{
    background:#a82828;
}
.woocommerce-checkout .woocommerce-form-login-toggle{
    display: none;
}
.wwcs_customer_id_row{
    margin: 40px 0;
    display: flex;
    align-items: center;
    gap: 30px;
}
.wwcs_customer_id_row .wwcs_checkbox_label{
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    color: #1e1e1e;
    font-weight: 600;
    flex-shrink: 0;
    user-select: none;
    cursor: pointer;
}
.wwcs_customer_id_row .wwcs_password_wrap{
    max-width: 50%;
    width: 100%;
}
html body .wwcs_customer_id_row .wwcs_checkbox_label input[type="checkbox"]{
    height: 32px;
    width: 32px;
}
.wwcs_section_title_red{
    color: #D21200;
    font-size:16px;
    font-weight: 700;
}
/* 見出し横の注記(※)を入力欄の開始位置に揃える（タイトル列を固定幅にしてgrid配置） */
.wwcs-multi-step-checkout .wwcs_section_title_red:has(.wwcs_section_title_note){
    display: grid;
    grid-template-columns: 167px 1fr;
    align-items: center;
    column-gap: 0;
}
.wwcs_next_step{
    justify-self: end;
}
#wwcs_shipping_form_section .wwcs_section_title_red{
    margin-bottom: 30px;
}
#wwcs_shipping_form_section  .spacing_qd_fields{
    margin: 10px 0;
}
#wwcs_shipping_state_field .woocommerce-input-wrapper{
    max-width: 288px;
    margin-right: auto;
    width: 100%;
}
.qd_phone_fields{
    margin: 20px 0;
}
.qd_step3_checkbox .wwcs_field_row{
    max-width: 445px !important;
    white-space: nowrap;
}
.wwcs_checkbox_label{
    display: flex;
    align-items: center;
    gap: 10px;
}
.qd_last_note{
    margin-top: 0px !important;
}
.wwcs_step.wwcs_step_3 .wwcs_form_wrapper{
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.woocommerce-checkout-payment #place_order{
    display: none;
}
.wwcs_receipt_options{
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 20px;
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields .wwcs_field_row .wwcs_radio_label{
    display: flex;
    align-items: center;
    gap: 10px;
    max-width: max-content;
}
.wwcs_radio_label input{
    flex-shrink: 0;
}
.wwcs_receipt_wrap{
    margin-top: 20px;
}
.wwcs_field_row.wwcs_payment_method_row{
    BACKGROUND: #FFF;
    margin-bottom: 20px;
    BORDER-RADIUS: 20PX;
    PADDING: 20PX;
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 100% !important;
}
#wwcs_receipt_name_block{
    margin-top: 20px;
}
#wwcs_receipt_section :is(#wwcs_receipt_name_block .wwcs_field_row,.wwcs_receipt_row){
    max-width: 100%;
}
#wwcs_receipt_section .wwcs_receipt_name_wrap{
    margin-top: 10px;
}
#wwcs_receipt_section .wwcs_receipt_name_row{
    display: flex;
    align-items: stretch;
    gap: 20px;
    margin: 20px 0 0 0;
}
#wwcs_receipt_section .wwcs_receipt_name_row #billing_receipt_title,
#billing_receipt_title {
    background-color: #fff !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order {
  border: 1px solid #E5E5E5;
  border-radius: 10px;
  overflow: hidden;
}

.woocommerce-checkout .shop_table thead tr {
  background: var(--theme-bg);
  border-bottom: 2px solid #E5E5E5;
}

.woocommerce-checkout .shop_table thead th {
  text-transform: uppercase;
  color: #121212;
  text-align: left;
  background: #FFF9F4;
}

.woocommerce-checkout .shop_table thead th.product-total {
  text-align: right;
}

.woocommerce-checkout .shop_table tbody tr.cart_item {
  border-bottom: 1px solid var(--theme-border-light);
  transition: background var(--theme-transition);
}

.woocommerce-checkout .shop_table tbody tr.cart_item:hover {
  background: var(--theme-bg);
}

.woocommerce-checkout .shop_table tbody td {
  padding: 13px 20px;
  vertical-align: middle;
  line-height: 1.5;
}

.woocommerce-checkout .shop_table td.product-total {
  text-align: right;
  white-space: nowrap;
  font-weight: 500;
}

.woocommerce-checkout .shop_table .product-quantity {
    display: inline-block;
    margin-left: 6px;
    padding: 0px 11px;
    background: #FFF9F4;
    border: 1px solid #E5E5E5;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    color: #121212;
    font-style: normal;
}

.woocommerce-checkout .shop_table .tax_label {
  font-size: 12px;
  color: var(--theme-text-muted);
  margin-left: 3px;
}

.woocommerce-checkout .shop_table tfoot tr {
  border-top: 1px solid var(--theme-border-light);
}

.woocommerce-checkout .shop_table tfoot th,
.woocommerce-checkout .shop_table tfoot td {
  padding: 10px 20px;
  font-size: 13px;
  color: var(--theme-text-mid);
  vertical-align: middle;
}

.woocommerce-checkout .shop_table tfoot td {
  text-align: right;
}

.woocommerce-checkout .shop_table tr.cart-subtotal th,
.woocommerce-checkout .shop_table tr.cart-subtotal td {
  font-weight: 500;
  background: var(--theme-bg);
}

.woocommerce-checkout .shop_table tr.woocommerce-shipping-totals th {
  font-weight: 500;
}

.woocommerce-checkout .shop_table tr.woocommerce-shipping-totals td {
  font-size: 13px;
  color: var(--theme-text);
}

.woocommerce-checkout .shop_table .woocommerce-shipping-methods {
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-checkout .shop_table .woocommerce-shipping-methods li {
  font-size: 13px;
}

.woocommerce-checkout .shop_table .woocommerce-shipping-methods label {
  color: #121212;
  font-weight: 400;
}


.woocommerce-checkout .shop_table tr.order-total {
  border-top: 2px solid #E5E5E5 !important;
  background: var(--theme-bg);
}

.woocommerce-checkout .shop_table tr.order-total th,
.woocommerce-checkout .shop_table tr.order-total td {
  padding: 16px 20px;
  font-size: 16px;
}

.woocommerce-checkout .shop_table tr.order-total .woocommerce-Price-amount {
  font-size: 20px;
  color: #D21200;
}

.woocommerce-checkout .shop_table .includes_tax {
  font-size: 12px;
  color: var(--theme-text-muted);
  font-weight: 400;
  margin-left: 6px;
}

.woocommerce-checkout #payment.woocommerce-checkout-payment {
  background: #FFF9F4;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  overflow: hidden;
  padding: 0;
}

.woocommerce-checkout #payment .wc_payment_methods {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  background: #FFF9F4;
  border-bottom: 0px !important;
}

.woocommerce-checkout #payment .wc_payment_method {
  background: #FFF9F4;
  border: 1.5px solid #E5E5E5;
  border-radius: 20px;
  overflow: hidden;
}

.woocommerce-checkout #payment .wc_payment_method:hover {
  border-color: #c8b8ae;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

.woocommerce-checkout #payment .wc_payment_method:has(> input[name="payment_method"]:checked) {
  border-color: #D21200;
  box-shadow: 0 0 0 3px rgba(200, 57, 43, 0.10);
}

.woocommerce-checkout #payment .wc_payment_method input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

.woocommerce-checkout #payment .wc_payment_method label {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 13px 16px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    color: #000;
    user-select: none;
    max-width: 100%;
}

.woocommerce-checkout #payment .wc_payment_method label:hover {
  background: #fdf0ee;
}

.woocommerce-checkout #payment .wc_payment_method label::before {
  content: '';
  flex-shrink: 0;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  border: 2px solid #E5E5E5;
  background: #fff;
}

.woocommerce-checkout #payment .wc_payment_method:has(> input[name="payment_method"]:checked) label::before {
  border-color: #D21200;
  background: #D21200;
  box-shadow: inset 0 0 0 3.5px #fff;
}

.woocommerce-checkout #payment .wc_payment_method:has(> input[name="payment_method"]:checked) label {
  color: #D21200;
  background: #fdf0ee;
  font-weight: 600;
  max-width: 100%;
}

.woocommerce-checkout #payment .payment_box {
    max-width: 97%;
    margin-left: 20px !important;
    margin-right: 20px !important;
    background: #dcdcdc !important;
    border-radius: 10px !important;
}
.woocommerce-checkout #payment .payment_box::before{
    border-color: #dcdcdc !important;
    border-right-color: transparent !important;
    border-left-color: transparent !important;
    border-top-color: transparent !important;
}
.woocommerce-checkout #payment .payment_box p {
  margin: 0;
}

@keyframes paySlideIn {
  from { opacity: 0; transform: translateY(-3px); }
  to   { opacity: 1; transform: translateY(0); }
}

.woocommerce-checkout #payment .place-order {
  padding: 0 !important;
  margin: 0;
}
/* -------------------------------------- Checkout page end --------------------------------------*/

/* --------------------------------------- 404 page start --------------------------------------- */
.inner_404 {
  padding: 100px 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.inner_404 .error {
  background: #FFF9F4;
  border: 1px solid #FFEAD4;
  border-radius: 20px;
  padding: 2.5rem 3rem;
  max-width: 520px;
  width: 90%;
  text-align: center;
  position: relative;
}

.inner_404 .error::before {
  content: "404";
  font-size: 40px;
  font-weight: 500;
  color: #d21200;
  transform: translateX(-50%);
  line-height: 1;
  letter-spacing: -4px;
  pointer-events: none;
}

.inner_404 .error h2,
.inner_404 .error p,
.inner_404 .error a {
  position: relative;
  z-index: 1;
}

.inner_404 .error h2 {
    font-size: 28px;
    font-weight: 600;
    color: #1a1a1a;
    margin-top: 20px;
    margin-bottom: 10px;        
}

.inner_404 .error p {
  font-size: 12px;
  color: #1E1E1E;
  line-height: 1.8;
  margin-bottom: 0.5rem;
}

.inner_404 .error p:last-of-type {
  margin-bottom: 1.75rem;
}

.inner_404 .error a {
  display: inline-block;
  font-size: 13px;
  font-weight: 500;
  color: #1a1a1a;
  text-decoration: none;
  border: 0.5px solid rgba(0,0,0,0.25);
  border-radius: 8px;
  padding: 8px 20px;
  transition: background 0.15s;
}

.inner_404 .error a:hover {
  background: #f5f4f1;
}

/* --------------------------------------- 404 page end --------------------------------------- */

/* --------------------------------------- new home banner section start --------------------------------------- */
.qd_home_banner_wrapper {
    padding:191px 0 121px 0px;
    margin: 0px auto;
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url('../img/Hero_banner_bg_new.webp');
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.qd_home_banner_wrapper::after{
    content: "";
    height: 100%;
    width: 100%;
    background-color: rgba(0,0,0,0.5);
    inset: 0;
    position: absolute;
    z-index: 0;
}
.qd_home_banner_wrapper .qd_container{
    z-index: 1;
}
.qd_home_banner_wrapper .qd_title {
    color: #ffffff;
}

.qd_home_banner_wrapper .qd_description {
    color: #ffffff;
    font-weight: 600;
}

/* Search Bar */
.qd_home_banner_search_form {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0px 0px 30px 0px;
    width: 100%;
    gap: 10px;
}

.qd_home_banner_search_form .qd_cta{
    text-wrap: nowrap;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 12px 30px;
}
.qd_home_banner_input_wrapper {
    position: relative;
    width: 100%;
}

.qd_home_banner_input {
    width: 100%;
    height: 100%;
    padding: 29px 30px;
    border-radius: 50px;
    border: none;
    font-size: 16px;
    color: #333333;
    background-color: #f8f8f8;
    box-sizing: border-box;
    outline: none;
    font-family: unset !important;
}
.qd_home_banner_input::placeholder{
    color: #AFAFAF;
    font-size: 24px;
    line-height: 32px;
}

.qd_home_banner_search_icon {
    position: absolute;
    right: 30px;
    top: 50%;
    display: flex;
    align-items: center;
    transform: translateY(-50%);
}

.qd_home_banner_search_btn {
    width: 140px;
    height: 54px;
    background-color: #d31300;
    color: #ffffff;
    border: none;
    border-radius: 27px;
    font-size: 18px;
    font-weight: 700;
    margin-left: 10px;
    cursor: pointer;
    font-family: sans-serif;
    transition: background-color 0.2s;
}

.qd_home_banner_search_btn:hover {
    background-color: #b01000;
}

/* Quick Search Section */
.qd_home_banner_quick_label {
    color: #ffffff;
    font-size: 28px;
    font-weight: 700;
    margin: 0px 0px 10px 0px;
    text-align: center;
    line-height: 43px;
}

.qd_home_banner_btn_grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
    max-width: 90%;
    margin: 0 auto;
}

.qd_home_banner_quick_btn {
    background-color: #FFC222;
    color: #222222;
    text-decoration: none;
    padding: 6px 30px;
    border-radius: 200px;
    display: flex;
    align-items: center;
    font-size: 24px;
    font-weight: 700;
    line-height:38px;
    gap: 10px;
    box-shadow: 0px 4px 4px 0px #00000040;
    transition: background-color 0.2s;
}

.qd_home_banner_quick_btn:hover {
    background-color: #f0bc20;
}

.qd_home_banner_btn_icon {
    margin-right: 6px;
    display: flex;
    flex-shrink:0;
    align-items: center;
}

/* --------------------------------------- new home banner section end --------------------------------------- */

.lost_reset_password{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 0;
}
.lost_reset_password p{
    font-size: 16px;
    font-weight: 600;
    color: #000;
}

.lost_reset_password .woocommerce-Input--text {
    border-color: #949697 !important;
    border-radius: 10px !important;
    padding: 10px 0 !important;
    margin: 20px 0 13px !important;
}
/* メールアドレスのラベルと入力欄を横並びに */
.lost_reset_password .form-row-first {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 20px 0 13px;
    width: auto;
}
.lost_reset_password .form-row-first label {
    margin: 0;
    white-space: nowrap;
    flex: 0 0 auto;
}
.lost_reset_password .form-row-first .woocommerce-Input--text {
    margin: 0 !important;
    padding: 10px 12px !important;
    width: 320px !important;
    flex: 0 0 auto;
}
.page-template-page-searchtemplate .woocommerce-ordering{
    display: none;
}

#qd_rec_loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

#qd_rec_loader .spinner {
    width: 40px;
    height: 40px;
    border: 4px solid #ddd;
    border-top: 4px solid #e60023;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin: 0 auto;
}

@keyframes spin {
    100% { transform: rotate(360deg); }
}

.qd_reco_empty{
    display: flex;
    text-align: center;
    color: red;
    font-size: 20px;
    margin: 0 auto;
    font-weight: 700;
}
.qd_reco_empty.inactive{
    display: none;
}
.wwcs_radio_wrap{
        display: flex;
    align-items: center;
    gap: 10px;
}
.wwcs-multi-step-checkout .wwdcs_checkout-fields .wwcs_field_row:has(.wwcs_radio_wrap),
.wwcs-multi-step-checkout .wwdcs_checkout-fields .wwcs_field_row:has(.wwcs_checkbox_wrap){
    justify-content: start;
    gap: 10px;
}
.qd_plan_title_boxs{
    display: flex;
    flex-direction: column;
    gap: 18px;
    margin-bottom: 8px;
}
.policy_checkout_wrap{
    border: 3px solid #E5E5E5;
    padding: 20px;
    border-radius: 30px;
}
.policy_checkout_wrap .wwcs_confirm_section{
    max-height: 450px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #D21200 #f1f1f1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.scroll-container::-webkit-scrollbar {
  width: 6px;
}
.scroll-container::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 40px;
}
.scroll-container::-webkit-scrollbar-thumb {
  background: #d92b2b;
  border-radius: 40px;
}
.scroll-container::-webkit-scrollbar-button {
  display: none;
}
.policy_checkout_wrap h2{
    font-size: 18px;
}
.policy_checkout_wrap .wwcs_confirm_section h2,
.policy_checkout_wrap .wwcs_confirm_section h3{
    font-size: 16px;
}
.policy_checkout_wrap .wwcs_confirm_section p,
.policy_checkout_wrap .wwcs_confirm_section li{
    font-size: 14px;
}
.wwcs_step_3 .wwfdc_cart_informtion .wwcart_highlight{
    font-size: 18px;
}
.wwcs_step_3 .wwfdc_cart_informtion .qd_notice_list{
    position: relative;
    padding: 10px;
    background: #FFE3E0;
    border-radius: 10px;
    padding-left: 40px;
    margin-top: 18px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    max-height: 450px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #D21200 #f1f1f1;
}
.wwcs_step_3 .wwfdc_cart_informtion .qd_notice_list li{
    list-style: disc;
    font-size: 14px;
    line-height: 27px;
    font-weight: 600;
    color: #000;
}
.wwcs_step_3 .wwfdc_cart_informtion .qd_notice_list li a{
    color: #D21200;
    text-decoration: underline;
}
.wwcs_step_3 .wwfdc_cart_informtion .qd_notice_list .dashed-border{
    display: none;
}
.policy_checkout_wrap.red{
    margin-top: 30px;
}
.policy_checkout_wrap.red .wwcs_confirm_section{
    background-color: #FFE3E0;
    border: 1px dashed #D21200;
    border-radius: 10px;
    padding: 10px;
}
.wwcs_confirm_section::-webkit-scrollbar-button:start:decrement,
.wwcs_confirm_section::-webkit-scrollbar-button:end:increment {
    display: none;
    width: 0;
    height: 0;
    background: transparent;
}
.wwcs_action_row.wwcs_action_row_right{
    margin-top: 20px;
}
.wwcs-multi-step-checkout .wwcs_address_book_section
{
    display: none;
}

/* ================================================
   シート4: 配送エリアページ
   ================================================ */
.qd_area_banner {
    background-size: cover;
    background-position: center;
    min-height: 500px;
    display: flex;
    align-items: flex-end;
    padding-bottom: 40px;
}
.qd_area_banner h1 {
    font-size: 40px;
    margin-bottom: 16px;
}
.qd_area_banner p {
    font-size: 16px;
    margin-bottom: 80px;
}

.qd_area_delivery_row {
    display: flex;
    gap: 24px;
    align-items: stretch;
    margin: 30px 0;
}
.qd_area_delivery_banner {
    display: block;
    flex: 1;
    text-decoration: none;
    border-radius: 16px;
    overflow: hidden;
    transition: transform 0.3s, box-shadow 0.3s;
}
.qd_area_delivery_banner:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}
.qd_area_delivery_banner .qd_area_banner_img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 16px;
}

.qd_area_banner_label {
    display: inline-block;
    font-size: 20px;
    font-weight: 700;
    padding: 8px 24px;
    border-radius: 30px;
    margin-bottom: 12px;
}
.qd_label_red { background: #D21200; color: #fff; }
.qd_label_orange { background: #E27A3F; color: #fff; }

.qd_area_stats {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin: 30px 0;
    background: #fff;
    border: 3px solid #D21200;
    border-radius: 20px;
    padding: 20px 40px;
}
.qd_area_stats_header {
    background: #D21200;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    padding: 6px 16px;
    border-radius: 10px;
}
.qd_area_stats_label {
    font-size: 18px;
    color: #333;
    font-weight: 600;
}
.qd_area_stats_number {
    font-size: 40px;
    font-weight: 700;
    color: #D21200;
}

.qd_area_button_grid {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    margin: 30px 0;
}
.qd_area_btn {
    display: inline-block;
    padding: 12px 24px;
    background: #FFF3E8;
    border: 2px solid #FFEAD4;
    border-radius: 30px;
    font-size: 16px;
    font-weight: 600;
    color: #392E2D;
    text-decoration: none;
    transition: all 0.3s;
}
.qd_area_btn:hover, .qd_area_btn.current {
    background: #D21200;
    color: #fff;
    border-color: #D21200;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(210, 18, 0, 0.3);
}

.qd_area_bottom_info {
    display: flex;
    align-items: center;
    gap: 40px;
    margin: 40px 0;
}
.qd_area_bottom_text {
    flex: 1;
    font-size: 18px;
    line-height: 1.8;
}
.qd_area_map {
    flex: 1;
}
.qd_area_map img {
    width: 100%;
    height: auto;
}

.qd_area_sub_desc {
    text-align: center;
    font-size: 16px;
    color: #666;
    margin-bottom: 30px;
}

.qd_area_voices_grid,
.qd_area_features_grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-top: 24px;
}
.qd_area_voice_card,
.qd_area_feature_card {
    background: #FFF9F4;
    border: 3px solid #FFEAD4;
    border-radius: 20px;
    padding: 24px;
}
.qd_area_voice_title,
.qd_area_feature_card h3 {
    font-size: 16px;
    font-weight: 700;
    color: #D21200;
    margin-bottom: 12px;
}
.qd_voice_icon, .qd_feature_icon {
    margin-right: 4px;
}

.qd_area_cta_section {
    background: #FFF3E8;
    text-align: center;
    padding: 60px 20px;
}
.qd_area_cta_desc {
    font-size: 18px;
    color: #666;
    margin-bottom: 30px;
}
.qd_area_cta_grid {
    display: flex;
    gap: 30px;
    justify-content: center;
    max-width: 800px;
    margin: 0 auto;
}
.qd_area_cta_box {
    flex: 1;
    background: #fff;
    border-radius: 20px;
    padding: 30px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}
.qd_area_cta_box h3 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 16px;
}
.qd_area_cta_box .qd_cta {
    display: inline-block;
    margin-bottom: 8px;
    font-size: 20px;
}

/* ================================================
   シート5: 商品カードのホバーエフェクト・クリック
   ================================================ */
.qd_card_inner {
    cursor: pointer;
    transition: background-color 0.3s, box-shadow 0.3s;
    border-radius: 20px;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.qd_card_inner .qd_card_body {
    flex: 1;
    display: flex;
    flex-direction: column;
}
.qd_card_inner .qd_card_body_bottom {
    flex: 1;
    display: flex;
    flex-direction: column;
}
.qd_card_inner .qd_card_actions_wrap {
    margin-top: auto;
}
.qd_card_inner:hover {
    filter: drop-shadow(0 4px 13.1px rgba(0, 0, 0, 0.25));
}
.qd_card_inner:hover .qd_card_body_bottom {
    background-color: #FFEAD4;
}
.qd_card_people {
    font-size: 13px;
    color: #D21200;
    margin: 4px 0;
}
.qd_card_count {
    font-size: 14px;
    font-weight: 600;
    color: #E27A3F;
    margin: 4px 0;
}

/* サイズ選択ボタン */
.qd_size_select_btn {
    background: #E27A3F !important;
    color: #fff !important;
    border: none !important;
    border-radius: 30px !important;
    padding: 14px 20px !important;
    font-weight: 600 !important;
    cursor: pointer;
    transition: background 0.3s;
}
.qd_size_select_btn:hover {
    background: #D21200 !important;
}

/* ================================================
   シート5-No.4: サイズ選択モーダル
   ================================================ */
.qd_size_modal_overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: qd_fadeIn 0.2s ease;
}
@keyframes qd_fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}
.qd_size_modal {
    background: #fff;
    border-radius: 24px;
    padding: 36px 32px;
    max-width: 420px;
    width: 90%;
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.25);
    animation: qd_slideUp 0.25s ease;
}
@keyframes qd_slideUp {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}
.qd_size_modal_title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 24px;
    text-align: center;
    padding-bottom: 16px;
    border-bottom: 2px solid #FFEAD4;
}
.qd_size_modal_field {
    margin-bottom: 20px;
}
.qd_size_modal_field label {
    display: block;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 8px;
    color: #392E2D;
}
.qd_size_select {
    width: 100%;
    padding: 12px 16px;
    border: 2px solid #FFEAD4;
    border-radius: 12px;
    font-size: 16px;
    background: #FFF9F4;
    color: #392E2D;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23999' fill='none' stroke-width='2'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    cursor: pointer;
}
.qd_size_select:focus {
    outline: none;
    border-color: #D21200;
}
.qd_size_price {
    font-size: 24px;
    font-weight: 700;
    color: #D21200;
    margin: 0;
}
.qd_size_modal .qd_quantity {
    display: flex;
    align-items: center;
    gap: 0;
    border: 2px solid #FFEAD4;
    border-radius: 12px;
    overflow: hidden;
    width: fit-content;
}
.qd_size_modal .qd_quantity_btn {
    width: 44px;
    height: 44px;
    border: none;
    background: #FFF9F4;
    font-size: 20px;
    font-weight: 700;
    color: #392E2D;
    cursor: pointer;
    transition: background 0.2s;
}
.qd_size_modal .qd_quantity_btn:hover {
    background: #FFEAD4;
}
.qd_size_modal .qd_size_qty {
    width: 56px;
    height: 44px;
    border: none;
    border-left: 2px solid #FFEAD4;
    border-right: 2px solid #FFEAD4;
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    color: #392E2D;
    -moz-appearance: textfield;
}
.qd_size_modal .qd_size_qty::-webkit-outer-spin-button,
.qd_size_modal .qd_size_qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.qd_size_modal_actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 28px;
}
.qd_size_confirm {
    display: block;
    width: 100%;
    padding: 14px;
    background: #D21200;
    color: #fff;
    border: none;
    border-radius: 30px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s;
    box-shadow: 0 6px 16px rgba(210, 18, 0, 0.25);
}
.qd_size_confirm:hover {
    background: #B00F00;
}
.qd_size_cancel {
    display: block;
    width: 100%;
    padding: 12px;
    background: transparent;
    color: #999;
    border: 2px solid #ddd;
    border-radius: 30px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s;
}
.qd_size_cancel:hover {
    background: #f5f5f5;
    color: #666;
    border-color: #bbb;
}

/* ================================================
   シート6: コラムテンプレート（Figma column_template01）
   ================================================ */

/* コラムKVオーバーライド */
.single-column .wtrn_secondry_banner {
    padding: 180px 20px 60px;
}
.single-column .wtrn_secondry_banner h1 {
    font-size: 32px;
    line-height: 1.4;
    margin-bottom: 16px;
}
.single-column .wtrn_secondry_banner p {
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 40px;
    font-weight: 400;
}
.single-column .wtrn_secondry_banner .breadcrumb {
    font-size: 13px;
    gap: 8px;
}

/* 記事ブロック（Figma: ベージュ背景ボックス内に★見出し+画像+本文） */
.qd_col_article {
    padding: 0;
    margin: 0;
}
.qd_col_article.wtrn_section {
    margin: 0;
}
.qd_col_article .qd_container {
    background: #FBF6F0;
    border-radius: 12px;
    padding: 40px 44px;
    margin-bottom: 24px;
}
.qd_col_sub_heading {
    font-size: 24px;
    font-weight: 700;
    color: #C43E00;
    margin-bottom: 16px;
    line-height: 1.6;
}
.qd_col_star {
    color: #E27A3F;
    margin-right: 6px;
    font-size: 16px;
}
.qd_col_images {
    display: flex;
    gap: 16px;
    margin: 24px 0;
}
.qd_col_images.one {
    justify-content: center;
}
.qd_col_images.one img {
    max-width: 100%;
    max-height: 350px;
    object-fit: cover;
    border-radius: 10px;
}
.qd_col_images.two img {
    flex: 1;
    min-width: 0;
    height: 280px;
    object-fit: cover;
    border-radius: 10px;
}
.qd_col_images img {
    display: block;
}
.qd_col_body {
    font-size: 18px;
    line-height: 1.8;
    color: #444;
    margin-top: 16px;
}
.qd_col_body p {
    margin-bottom: 14px;
}

/* リストセクション（Figma: 黄金グラデーション背景 + 装飾付きカード） */
.qd_col_list_section {
    padding: 80px 0 60px;
    position: relative;
    background: linear-gradient(180deg, rgba(243,200,120,0.30) 0%, rgba(255,230,180,0.20) 30%, rgba(255,245,220,0.12) 70%, rgba(255,250,240,0.06) 100%);
}
.qd_col_list_section.wtrn_section {
    margin: 40px 0 0;
}
.qd_col_list_deco {
    position: absolute;
    top: 0;
    left: 0;
    width: 280px;
    height: 280px;
    background: linear-gradient(135deg, rgba(226,122,63,0.30) 0%, rgba(255,194,34,0.15) 40%, transparent 100%);
    border-radius: 0 0 100% 0;
    z-index: 0;
}
.qd_col_list_section .qd_container {
    position: relative;
    z-index: 1;
}
.qd_col_list_header {
    text-align: center;
    margin-bottom: 20px;
}
.qd_col_list_header h2 {
    font-size: 40px;
    font-weight: 700;
    color: #333;
    line-height: 1.3;
}
.qd_col_list_intro {
    text-align: center;
    font-size: 18px;
    color: #888;
    margin-bottom: 36px;
    line-height: 1.6;
}
.qd_col_list_card {
    background: #FFFBF5;
    border: 1px solid #FFEAD4;
    border-left: 4px solid #E27A3F;
    border-radius: 10px;
    padding: 30px 32px;
    margin-bottom: 20px;
    position: relative;
    overflow: hidden;
}
.qd_col_list_card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, rgba(226,122,63,0.08) 0%, transparent 100%);
    border-radius: 0 0 80px 0;
    pointer-events: none;
}
.qd_col_list_card h3 {
    font-size: 24px;
    font-weight: 700;
    color: #333;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 12px;
}
.qd_col_check_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: #FDDEC8;
    border: 2px solid #E27A3F;
    border-radius: 8px;
    flex-shrink: 0;
}
.qd_col_check_icon::after {
    content: '✓';
    color: #D05A1A;
    font-size: 18px;
    font-weight: 700;
}
.qd_col_list_card p {
    font-size: 18px;
    line-height: 1.8;
    color: #555;
    padding-left: 44px;
}

/* レコメンド（Figma: 横並び行カード） */
.qd_col_rec_section {
    padding: 80px 0;
    background: #FAFAFA;
}
.qd_col_rec_section.wtrn_section {
    margin: 50px 0 0;
}
.qd_col_rec_list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 24px;
}
.qd_col_rec_row {
    display: flex;
    align-items: center;
    gap: 20px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 10px;
    padding: 14px 18px;
    text-decoration: none;
    color: inherit;
    transition: box-shadow 0.2s;
}
.qd_col_rec_row:hover {
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
}
.qd_col_rec_thumb {
    width: 150px;
    height: 102px;
    border-radius: 8px;
    overflow: hidden;
    flex-shrink: 0;
}
.qd_col_rec_thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.qd_col_rec_info {
    flex: 1;
    min-width: 0;
    overflow: visible;
}
.qd_col_rec_info h3 {
    font-size: 24px;
    font-weight: 700;
    color: #D21200;
    margin-bottom: 6px;
    white-space: normal;
    word-break: break-word;
}
.qd_col_rec_info p {
    font-size: 18px;
    color: #999;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.6;
    white-space: normal;
    word-break: break-word;
}

/* 商品カテゴリ推薦（Figma: ロゴ+パーティプレート+アラカルト） */
.qd_col_products_section {
    padding: 60px 0 40px;
    background: #fff;
}
.qd_col_products_section.wtrn_section {
    margin: 0;
}
.qd_col_products_logo {
    text-align: center;
    margin-bottom: 30px;
}
.qd_col_logo_img {
    height: 32px;
    display: inline-block;
}
.qd_col_logo_dot {
    display: block;
    color: #E27A3F;
    font-size: 12px;
    margin-top: 6px;
}
.qd_col_product_group {
    margin-bottom: 40px;
}
.qd_col_product_group_title {
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    color: #333;
    margin-bottom: 20px;
}
.qd_col_product_link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #333;
    font-weight: 600;
    margin-bottom: 12px;
    text-decoration: none;
    border-bottom: 1px solid #ddd;
    padding-bottom: 4px;
}
.qd_col_product_link span {
    font-size: 12px;
    color: #E27A3F;
}
.qd_col_product_row {
    display: flex;
    gap: 20px;
    margin-bottom: 24px;
    overflow-x: auto;
}
.qd_col_product_card {
    flex: 0 0 auto;
    width: 140px;
    text-align: center;
}
.qd_col_product_thumb {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto 8px;
    background: #f5f5f5;
}
.qd_col_product_thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.qd_col_product_name {
    font-size: 12px;
    font-weight: 600;
    color: #333;
    margin-bottom: 6px;
    line-height: 1.4;
}
.qd_col_product_prices {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px;
}
.qd_col_price_tag {
    display: inline-block;
    font-size: 12px;
    color: #999;
    background: #F8F4EC;
    padding: 2px 8px;
    border-radius: 10px;
}

/* ================================================
   コラム一覧（Figma: column_list）
   ================================================ */
.single-column .wtrn_secondry_banner h1,
.post-type-archive-column .wtrn_secondry_banner h1 {
    font-size: 32px;
    line-height: 1.4;
    margin-bottom: 16px;
}
.post-type-archive-column .wtrn_secondry_banner p {
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 40px;
    font-weight: 400;
}
.post-type-archive-column .wtrn_secondry_banner .breadcrumb {
    font-size: 13px;
    gap: 8px;
}
.qd_column_archive {
    padding: 60px 0 40px;
}
.qd_column_archive.wtrn_section {
    margin: 0;
}
.qd_column_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}
.qd_column_card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    transition: box-shadow 0.2s, transform 0.2s;
}
.qd_column_card:hover {
    box-shadow: 0 4px 20px rgba(0,0,0,0.12);
    transform: translateY(-2px);
    background-color: #FFF7EF;
}
.qd_column_card_link {
    text-decoration: none;
    color: inherit;
    display: block;
}
.qd_column_card_image {
    width: 100%;
    height: 200px;
    overflow: hidden;
}
.qd_column_card_image img,
.qd_column_card_img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.qd_column_card_noimage {
    width: 100%;
    height: 100%;
    background: #f0ebe4;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #bbb;
    font-size: 14px;
}
.qd_column_card_body {
    padding: 16px 20px 20px;
}
.qd_column_card_meta {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    font-size: 12px;
    color: #999;
}
.qd_column_card_cat {
    background: #FFF3E8;
    color: #E27A3F;
    padding: 2px 10px;
    border-radius: 10px;
    font-size: 12px;
    font-weight: 600;
}
.qd_column_card_title {
    font-size: 16px;
    font-weight: 700;
    color: #333;
    line-height: 1.5;
    margin-bottom: 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.qd_column_card_excerpt {
    font-size: 12px;
    color: #888;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 10px;
}
.qd_column_card_more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #D21200;
    font-weight: 600;
}
.qd_column_card_more img {
    width: 14px;
    height: 14px;
}
.qd_column_pagination {
    margin-top: 40px;
    text-align: center;
}
.qd_column_pagination .nav-links {
    display: flex;
    justify-content: center;
    gap: 8px;
}
.qd_column_pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    font-size: 14px;
    color: #333;
    text-decoration: none;
    border: 1px solid #ddd;
    transition: all 0.2s;
}
.qd_column_pagination .page-numbers.current {
    background: #E27A3F;
    color: #fff;
    border-color: #E27A3F;
}
.qd_column_pagination .page-numbers:hover:not(.current) {
    background: #FFF3E8;
    border-color: #E27A3F;
}
.qd_column_empty {
    text-align: center;
    padding: 80px 0;
    color: #999;
    font-size: 16px;
}

/* SP専用コンパクト検索ボタン（PCは非表示） */
.qd_sp_search_btn {
    display: none;
    align-items: center;
    gap: 4px;
    background: #f5f5f5;
    color: #333;
    text-decoration: none;
    font-size: 12px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 20px;
    border: 1px solid #ddd;
}

/* ================================================
   SP ボトムナビゲーション（PCは非表示）
   ================================================ */
.qd_sp_bottom_nav {
    display: none;
}
/* DEV deploy test 2026年 5月22日 金曜日 17時38分03秒 JST */

/* ================================================
   タクソノミー一覧・詳細テンプレート
   ================================================ */
.qd_tax_term_labels {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin: 30px 0;
}
.qd_tax_term_btn {
    display: inline-block;
    padding: 6px 16px;
    background: #fff;
    border: 2px solid #D21200;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
    color: #D21200;
    text-decoration: none;
    transition: all 0.3s;
}
.qd_tax_term_btn:hover,
.qd_tax_term_btn.current {
    background: #D21200;
    color: #fff;
    border-color: #D21200;
}
.qd_tax_product_header {
    margin: 20px 0;
}
.qd_tax_product_count {
    font-size: 16px;
    font-weight: 600;
    color: #392E2D;
}
.qd_tax_product_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    list-style: none;
    padding: 0;
    margin: 0 0 40px;
}
.qd_pagination {
    text-align: center;
    margin: 40px 0;
}
.qd_pagination .page-numbers {
    display: inline-block;
    padding: 8px 14px;
    margin: 0 4px;
    border: 2px solid #FFEAD4;
    border-radius: 8px;
    font-weight: 600;
    color: #392E2D;
    text-decoration: none;
    transition: all 0.3s;
}
.qd_pagination .page-numbers.current,
.qd_pagination .page-numbers:hover {
    background: #D21200;
    color: #fff;
    border-color: #D21200;
}
.qd_no_products {
    text-align: center;
    padding: 60px 20px;
    font-size: 18px;
    color: #999;
}
.qd_term_count {
    font-size: 12px;
    color: #999;
    margin-left: 4px;
}

/* ================================================
   シート11: ターム詳細ページ
   ================================================ */
.qd_taxdetail_banner {
    background-size: cover;
    background-position: center;
    position: relative;
}
.qd_taxdetail_banner::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    z-index: 0;
}
.qd_taxdetail_banner .qd_container {
    position: relative;
    z-index: 1;
}
.qd_tax_desc_text {
    text-align: left;
    color: #555;
    font-size: 18px;
    line-height: 1.8;
    margin-bottom: 30px;
}
/* Figma準拠サブ見出し装飾（点線+テキスト中央） */
.qd_tax_sub_divider {
    text-align: center;
    position: relative;
    margin: 40px 0 30px;
}
.qd_tax_sub_divider::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    border-top: 2px dashed #FFCDB2;
}
.qd_tax_sub_divider span {
    position: relative;
    display: inline-block;
    background: #fff;
    padding: 0 20px;
    font-size: 18px;
    font-weight: 700;
    color: #392E2D;
}
.qd_tax_sub_divider .qd_dot_accent {
    color: #D21200;
}
/* ランキングセクション */
.qd_tax_ranking {
    margin: 0;
    padding: 0;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.qd_tax_ranking_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}
.qd_tax_ranking_card {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.qd_tax_ranking_img {
    display: block;
    margin-bottom: 0;
    width: 80%;
    height: 80%;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto;
}
.qd_tax_ranking_img img {
    width: 100%;
    height: 80%;
    border-radius: 0;
    object-fit: cover;
    object-position: center;
    display: block;
    margin: 0 auto;
    transform: none;
}
.qd_tax_ranking_body {
    position: relative;
    text-align: center;
    border: 2px solid #FFEAD4;
    border-radius: 12px;
    padding: 80px 16px 16px;
    margin-top: -65px;
    background: #fff;
    width: 100%;
}
.qd_tax_ranking_badge {
    display: block;
    position: absolute;
    top: -16px;
    left: 50%;
    transform: translateX(-50%);
    width: 150px;
    height: auto;
    text-align: center;
}
.qd_tax_ranking_name {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #392E2D;
    text-decoration: none;
    margin-bottom: 10px;
    line-height: 1.4;
}
.qd_tax_ranking_name:hover {
    color: #D21200;
}
.qd_tax_ranking_price {
    display: block;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    font-size: 14px;
    font-weight: 600;
    color: #392E2D;
    margin-bottom: 14px;
    border: 1px solid #ccc;
    border-radius: 20px;
    padding: 8px 16px;
}
.qd_tax_ranking_cart {
    display: flex;
    width: 100%;
    box-sizing: border-box;
    justify-content: center;
    align-items: center;
    gap: 6px;
    background: #D21200;
    color: #fff !important;
    border: none;
    border-radius: 8px;
    padding: 10px 28px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s;
    text-decoration: none;
}
.qd_tax_ranking_cart:hover {
    background: #b01000;
}
.qd_tax_products_section .shop_products {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.qd_tax_products_section ul.products {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0 0 40px;
}
.qd_tax_products_section ul.products::before,
.qd_tax_products_section ul.products::after {
    display: none !important;
    content: none !important;
}
.qd_tax_products_section ul.products li.product {
    max-width: 23.5% !important;
    margin: 0 2% 2em 0 !important;
    float: none !important;
}
.qd_tax_products_section ul.products li.product:nth-child(4n) {
    margin-right: 0 !important;
}
.qd_tax_products_section .qd_card_img_wrap {
    height: auto;
    aspect-ratio: 1;
    margin-bottom: -50px;
}
.qd_tax_products_section .qd_card_img_wrap img {
    object-fit: cover;
    object-position: center;
}
/* ←→ ページネーション */
.qd_tax_pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin: 40px 0;
}
.qd_tax_page_btn {
    display: inline-block;
    padding: 10px 24px;
    border: 2px solid #D21200;
    border-radius: 8px;
    font-weight: 700;
    font-size: 14px;
    color: #D21200;
    text-decoration: none;
    transition: all 0.3s;
}
.qd_tax_page_btn:hover {
    background: #D21200;
    color: #fff;
}
.qd_tax_page_info {
    font-size: 14px;
    font-weight: 600;
    color: #666;
}
/* ほかの条件で商品を探す（Figma準拠テキストカード） */
.qd_taxdetail_other_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin: 30px 0;
}
.qd_taxdetail_other_card {
    display: block;
    padding: 24px;
    border: 2px dashed #FFCDB2;
    border-radius: 12px;
    text-decoration: none;
    background: #fff;
    transition: all 0.3s;
}
.qd_taxdetail_other_card:hover {
    border-color: #D21200;
    border-style: solid;
    box-shadow: 0 4px 12px rgba(210, 18, 0, 0.1);
}
.qd_taxdetail_other_title {
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: #D21200;
    margin-bottom: 10px;
    text-align: center;
}
.qd_taxdetail_other_desc {
    font-size: 13px;
    color: #555;
    line-height: 1.7;
    margin: 0;
}

.qd_category_circle_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: #392E2D;
    transition: transform 0.3s;
}
.qd_category_circle_item:hover {
    transform: translateY(-3px);
}
.qd_category_circle_img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #FFEAD4;
}
.qd_category_grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    margin: 30px 0;
}

/* ================================================
   シート10: タクソノミー一覧ページ
   ================================================ */
.qd_taxlist_banner {
    background-size: cover;
    background-position: center;
}
.qd_taxlist_catch {
    font-size: 16px;
    color: rgba(255,255,255,0.85);
    margin-top: 8px;
}
.qd_taxlist_desc {
    text-align: left;
    color: #666;
    font-size: 18px;
    margin-bottom: 30px;
}
/* ターム一覧カード */
.qd_taxlist_grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    margin: 30px 0;
}
.qd_taxlist_card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    border: 2px solid #F0E0D0;
    border-radius: 20px;
    background: #FFF3E8;
    padding: 12px;
    gap: 0;
    transition: all 0.3s;
}
.qd_taxlist_card:hover {
    border-color: #BDBDBD;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
}
.qd_taxlist_card_img {
    width: 100%;
    aspect-ratio: 1;
    overflow: hidden;
    border-radius: 14px;
}
.qd_taxlist_card_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.qd_taxlist_card_noimg {
    width: 100%;
    height: 100%;
    background: #f5f0eb;
    border-radius: 14px;
}
.qd_taxlist_card_body {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 14px 8px 6px;
    background: #fff;
    border-radius: 10px;
    margin-top: 10px;
}
.qd_taxlist_card_name {
    font-size: 14px;
    font-weight: 700;
    color: #000;
    text-align: center;
}
.qd_taxlist_card_arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 30px;
    background: #D21200;
    border-radius: 8px;
    font-size: 14px;
    color: #fff;
    margin-top: 6px;
    margin-bottom: 4px;
    flex-shrink: 0;
    transition: all 0.3s;
}
.qd_taxlist_card:hover .qd_taxlist_card_arrow {
    background: #B00E00;
}
/* タクソノミーレコメンド */
.qd_taxlist_rec_grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin: 30px 0;
}
.qd_taxlist_rec_card {
    display: block;
    padding: 24px;
    border: 2px solid #E27A3F;
    border-radius: 16px;
    background: #fff;
    text-decoration: none;
    color: #392E2D;
    transition: all 0.3s;
}
.qd_taxlist_rec_card:hover {
    background: #FDF0E8;
}
.qd_taxlist_rec_card h3 {
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 8px;
    color: #392E2D;
}
.qd_taxlist_rec_card p {
    font-size: 14px;
    color: #666;
    margin: 0;
}
/* 下部バナー */
.qd_taxlist_banner_grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
.qd_taxlist_banner_item {
    display: block;
    border-radius: 16px;
    overflow: hidden;
    transition: transform 0.3s, box-shadow 0.3s;
}
.qd_taxlist_banner_item:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}
.qd_taxlist_banner_item img {
    width: 100%;
    height: auto;
    display: block;
}

/* ========== お客様の声: カテゴリカード一覧 (/voice/) ========== */
.qd_voice_catch {
    font-size: 16px;
    color: #FFF;
    margin-top: 8px;
}
.qd_voice_cat_section .qd_voice_cat_desc {
    text-align: center;
    color: #555;
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 30px;
}
.qd_voice_cat_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin: 30px 0;
}
.qd_voice_cat_card {
    display: block;
    border: 2px solid #E27A3F;
    border-radius: 16px;
    background: #FFF;
    padding: 24px;
    text-decoration: none;
    color: #333;
    position: relative;
    transition: background 0.3s, box-shadow 0.3s;
}
.qd_voice_cat_card:hover {
    background: #FFF7EF;
    box-shadow: 0 4px 16px rgba(226,122,63,0.15);
}
.qd_voice_cat_card_name {
    font-size: 18px;
    font-weight: 700;
    color: #E27A3F;
    margin: 0 0 8px;
}
.qd_voice_cat_card_desc {
    font-size: 14px;
    color: #666;
    line-height: 1.6;
    margin: 0 0 12px;
}
.qd_voice_cat_card_count {
    font-size: 13px;
    color: #999;
}
.qd_voice_cat_card_arrow {
    position: absolute;
    right: 20px;
    bottom: 20px;
    font-size: 18px;
    color: #E27A3F;
}


.qd_voice_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin: 30px auto;
    max-width: 1300px;
}
.qd_voice_card {
    display: block;
    text-decoration: none;
    color: #333;
    background: #FFF;
    border-radius: 12px;
    border: 1px solid #E0E0E0;
    border-left: 4px solid #E27A3F;
    overflow: hidden;
    transition: box-shadow 0.3s;
}
.qd_voice_card:hover {
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
}
.qd_voice_card__image {
    margin: 0;
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
}
.qd_voice_card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.qd_voice_card__body {
    padding: 16px 20px 20px;
}
.qd_voice_card__date {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #888;
    margin-bottom: 8px;
}
.qd_voice_card__clock {
    width: 16px;
    height: 16px;
    opacity: 0.6;
}
.qd_voice_card__title {
    font-size: 16px;
    font-weight: 700;
    color: #333;
    margin: 0 0 10px;
    line-height: 1.5;
}
.qd_voice_card__excerpt {
    font-size: 14px;
    color: #666;
    line-height: 1.7;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.qd_voice_back {
    text-align: left;
    margin-top: 30px;
}
.qd_voice_back_link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 24px;
    border: 2px solid #E27A3F;
    border-radius: 30px;
    color: #E27A3F;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.3s, color 0.3s;
}
.qd_voice_back_link:hover {
    background: #E27A3F;
    color: #FFF;
}
.qd_voice_back_link img {
    width: 16px;
    height: 16px;
}
.qd_voice_empty {
    text-align: center;
    color: #999;
    padding: 40px 0;
}
.qd_voice_list_section .qd_voice_intro {
    text-align: center;
    color: #555;
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 30px;
    max-width: 1300px;
    margin-left: auto;
    margin-right: auto;
}

/* ========== お客様の声: CTA ========== */
.qd_voice_cta {
    background: #FFF7EF;
}
.qd_voice_cta_inner {
    text-align: center;
    padding: 30px 0;
}
.qd_voice_cta_inner p {
    font-size: 16px;
    color: #555;
    margin-bottom: 16px;
}
.qd_voice_cta_inner .qd_cta {
    display: inline-block;
}

/* ========== 注文完了モーダル ========== */
.wwcs_modal_overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    z-index: 99999;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    overflow-y: auto;
    padding: 40px 16px;
}
.wwcs_modal_box {
    background: #fff;
    border-radius: 12px;
    max-width: 900px;
    width: 100%;
    padding: 40px 48px 36px;
    position: relative;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
}
.wwcs_modal_close {
    position: absolute;
    top: 16px;
    right: 20px;
    background: none;
    border: none;
    font-size: 24px;
    color: #333;
    cursor: pointer;
    line-height: 1;
    padding: 4px 8px;
}
.wwcs_modal_close:hover {
    color: #000;
}
.wwcs_modal_header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
}
.wwcs_modal_success_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #09AD00;
    color: #fff;
    font-size: 20px;
    flex-shrink: 0;
}
.wwcs_modal_success_text {
    font-size: 16px;
    font-weight: 700;
    color: #09AD00;
    margin: 0;
}
.wwcs_modal_order_number {
    text-align: center;
    font-size: 16px;
    color: #333;
    margin-bottom: 20px;
    padding: 16px 0;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background: #fafafa;
}
.wwcs_modal_order_number strong {
    font-size: 32px;
    color: #D21200;
    letter-spacing: 0.08em;
    margin-left: 12px;
}
.wwcs_modal_description {
    margin-bottom: 24px;
    line-height: 1.8;
}
.wwcs_modal_description p {
    font-size: 16px;
    color: #333;
    margin: 0 0 8px;
}
.wwcs_modal_description p:last-child {
    color: #c00;
    font-weight: 500;
}
.wwcs_modal_description a {
    color: #333;
    text-decoration: underline;
}
.wwcs_modal_buttons {
    display: flex;
    gap: 16px;
    margin-bottom: 32px;
}
.wwcs_modal_buttons .wwcs_btn {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 52px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    border: none;
    transition: opacity 0.2s;
}
.wwcs_modal_buttons .wwcs_btn:hover {
    opacity: 0.85;
}
.wwcs_btn_secondary {
    background: #f5f5f5;
    color: #333;
    border: 1px solid #ccc !important;
}
.wwcs_btn_primary {
    background: #333;
    color: #fff;
}
.wwcs_modal_recommended {
    border-top: 1px solid #e0e0e0;
    padding-top: 24px;
}
.wwcs_modal_recommended_title {
    font-size: 16px;
    font-weight: 700;
    color: #333;
    margin-bottom: 16px;
    text-align: center;
}
.wwcs_modal_recommended_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}
.wwcs_modal_recommended_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.wwcs_modal_recommended_img_link img {
    width: 100%;
    max-width: 120px;
    height: auto;
    border-radius: 8px;
    object-fit: cover;
}
.wwcs_modal_recommended_info {
    padding-top: 8px;
}
.wwcs_modal_recommended_name {
    font-size: 13px;
    color: #333;
    margin: 0 0 6px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.wwcs_product_labels {
    display: flex;
    gap: 4px;
    justify-content: center;
    margin-bottom: 8px;
    flex-wrap: wrap;
}
.wwcs_label_badge {
    display: inline-block;
    font-size: 12px;
    padding: 2px 8px;
    border-radius: 4px;
    border: 1px solid #999;
    color: #555;
    line-height: 1.4;
}
.wwcs_btn_sm {
    font-size: 12px !important;
    height: 32px !important;
    padding: 0 12px !important;
    border-radius: 6px !important;
}

/* WC標準 payment_box description は非表示（カスタムセクションで置き換え） */
.wwcs_payment_section .payment_box {
    display: none !important;
}
/* ========== クレジットカード入力フォーム（トークン決済） ========== */
#wwcs_cc_form {
    margin-top: 16px;
    padding: 24px 20px;
    background: #fff;
    border: 1px solid #E5E5E5;
    border-radius: 12px;
}
li.payment_method_gmopg_credit #wwcs_cc_form {
    margin: 12px 0 0;
    width: 100%;
    box-sizing: border-box;
}
.wwcs_cc_table {
    width: 100%;
    border-collapse: collapse;
}
.wwcs_cc_table th {
    text-align: left;
    font-size: 16px;
    font-weight: 700;
    color: #333;
    padding: 10px 12px 10px 0;
    white-space: nowrap;
    vertical-align: middle;
    width: 180px;
}
.wwcs_cc_table td {
    padding: 10px 0;
    vertical-align: middle;
}
.wwcs_cc_table .wwcs_required_mark {
    color: #D21200;
    font-size: 14px;
    font-weight: 700;
    margin-left: 0;
}
.wwcs_cc_input_full {
    width: 100%;
    max-width: 320px;
    height: 44px;
    padding: 0 12px;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 16px;
    box-sizing: border-box;
}
.wwcs_cc_input_short {
    width: 140px;
    height: 44px;
    padding: 0 12px;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 16px;
    box-sizing: border-box;
}
.wwcs_cc_field_note {
    display: inline-block;
    font-size: 14px;
    color: #888;
    margin-left: 8px;
    vertical-align: middle;
}
.wwcs_cc_expiry_fields {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: nowrap;
}
#wwcs_cc_form select {
    padding: 10px 32px 10px 12px;
    height: 44px;
    box-sizing: border-box;
    line-height: normal;
}
.wwcs_cc_expiry_fields .wwcs_select_sm {
    flex: 1 1 100px;
    min-width: 80px;
    max-width: 160px;
}
.wwcs_date_unit {
    font-size: 16px;
    color: #333;
}
#cc_pay_method {
    width: auto;
    min-width: 140px;
    max-width: 240px;
}
#wwcs_cc_form .wwcs_error_wrap {
    margin: 0;
    padding: 4px 0 0 0;
}
/* 代金引換 領収書ブロック */
#wwcs_cod_receipt_block {
    margin-top: 12px;
    padding: 16px 20px 20px;
    background: transparent;
    border: none;
    border-top: 1px solid #E5E5E5;
    width: 100%;
    box-sizing: border-box;
}
#wwcs_cod_receipt_block label {
    display: inline !important;
    padding: 0 !important;
    color: #1E1E1E !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    background: transparent !important;
    cursor: default;
    gap: 0 !important;
}
#wwcs_cod_receipt_block label::before {
    display: none !important;
}
#wwcs_cod_receipt_block label:hover {
    background: transparent !important;
}
#wwcs_cod_receipt_block .wwcs_radio_label {
    display: flex !important;
    align-items: center;
    gap: 6px !important;
    cursor: pointer;
    font-weight: 400 !important;
}
#wwcs_cod_receipt_block .wwcs_radio_label input[type="radio"] {
    position: static !important;
    opacity: 1 !important;
    width: 16px !important;
    height: 16px !important;
    pointer-events: auto !important;
    appearance: auto !important;
    -webkit-appearance: auto !important;
    accent-color: #D21200;
}
.wwcs_cod_receipt_inner .wwcs_receipt_row {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 12px;
}
.wwcs_cod_receipt_inner .wwcs_receipt_row:last-child {
    margin-bottom: 0;
}
.wwcs_cod_receipt_inner .wwcs_label {
    display: inline;
    white-space: nowrap;
    flex-shrink: 0;
    width: auto;
    font-size: 14px;
    font-weight: 600;
    color: #1E1E1E;
}
.wwcs_radio_inline {
    display: flex;
    align-items: center;
    gap: 20px;
    flex: 1;
}
.wwcs_radio_inline .wwcs_radio_label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    cursor: pointer;
    white-space: nowrap;
}
.wwcs_receipt_name_wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
}
.wwcs_receipt_name_wrap .wwcs_input {
    flex: 1;
}
.wwcs_receipt_name_wrap .wwcs_select_sm {
    width: 80px;
    flex-shrink: 0;
}
/* 請求書払い注記 */
.wwcs_payment_note {
    margin-top: 8px;
    font-size: 13px;
    color: #D21200;
    padding-left: 4px;
}
/* 決済方法ラジオ: CODの注記テキスト */
.wwcs_payment_method_note {
    font-size: 14px;
    color: #D21200;
    margin-left: 8px;
}
/* カードブランドアイコン */
.wwcs_card_brands {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-left: 12px;
    vertical-align: middle;
}
.wwcs_card_brands img {
    height: 22px;
    width: auto;
}
@media (max-width: 640px) {
    #wwcs_cc_form {
        padding: 16px 12px;
    }
    .wwcs_cc_table th {
        display: block;
        width: 100%;
        padding: 8px 0 4px;
    }
    .wwcs_cc_table td {
        display: block;
        padding: 0 0 4px;
    }
    .wwcs_cc_input_full {
        max-width: 100%;
    }
    .wwcs_cc_input_short {
        width: 120px;
    }
    .wwcs_cc_field_note {
        display: block;
        margin-left: 0;
        margin-top: 4px;
    }
    .wwcs_cod_receipt_inner .wwcs_receipt_row {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
    .wwcs_receipt_name_wrap {
        width: 100%;
    }
    .wwcs_receipt_name_wrap .wwcs_input {
        max-width: none;
    }
}

/* ========== 注文完了: 注文内容確認テーブル ========== */
.wwcs_order_detail_section {
    background: #f7f7f7;
    padding: 40px 0;
    margin-top: 0;
}
.wwcs_order_detail_header {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 20px;
    font-weight: 700;
    color: #333;
    margin-bottom: 16px;
}
.wwcs_order_detail_header .qd_dot_accent {
    display: inline-block;
    width: 14px;
    height: 14px;
    background: #c00;
    border-radius: 50%;
}
.wwcs_order_detail_header::after {
    content: '';
    flex: 1;
    border-bottom: 2px dashed #ccc;
    margin-left: 12px;
}
.wwcs_order_table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 24px;
}
.wwcs_order_table thead th {
    background: #5a1a1a;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    padding: 10px 14px;
    text-align: left;
    white-space: nowrap;
}
.wwcs_order_table thead th:nth-child(n+4) {
    text-align: center;
}
.wwcs_order_table thead th:last-child {
    text-align: right;
}
.wwcs_order_table tbody td {
    padding: 14px;
    border-bottom: 1px solid #eee;
    font-size: 14px;
    color: #333;
    vertical-align: middle;
}
.wwcs_order_table tbody td:first-child {
    font-size: 13px;
    color: #666;
    white-space: nowrap;
}
.wwcs_order_table tbody td:nth-child(n+4) {
    text-align: center;
}
.wwcs_order_table tbody td:last-child {
    text-align: right;
    white-space: nowrap;
}
.wwcs_order_table .wwcs_product_cell {
    display: flex;
    align-items: center;
    gap: 12px;
}
.wwcs_order_table .wwcs_product_cell img {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 6px;
    flex-shrink: 0;
}
.wwcs_order_table .wwcs_product_cell_info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.wwcs_order_table .wwcs_product_cell_name {
    font-size: 14px;
    font-weight: 500;
    color: #333;
}
.wwcs_order_table .wwcs_product_cell_labels {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
}
.wwcs_order_table .wwcs_product_cell_labels span {
    font-size: 12px;
    padding: 1px 8px;
    border: 1px solid #999;
    border-radius: 4px;
    color: #555;
}
.wwcs_order_total_row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 14px;
}
.wwcs_order_total_label {
    font-size: 20px;
    font-weight: 700;
    color: #333;
}
.wwcs_order_total_value {
    font-size: 24px;
    font-weight: 700;
    color: #c00;
}

/* thankyouページ用カード（モーダルではなくインライン表示） */
.wwcs_thankyou_card {
    background: #fff;
    border-radius: 12px;
    max-width: 900px;
    width: 100%;
    margin: 0 auto 0;
    padding: 40px 48px 36px;
    position: relative;
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}
.wwcs_thankyou_card .wwcs_modal_close {
    position: absolute;
    top: 16px;
    right: 20px;
}
.wwcs_thankyou_card .wwcs_modal_buttons .wwcs_btn {
    text-decoration: none;
}
.wwcs_thankyou_card .wwcs_modal_description p:nth-last-child(1) {
    color: #c00;
    font-weight: 500;
}
.woocommerce-order > .woocommerce-order-details,
.woocommerce-order > .woocommerce-customer-details,
.woocommerce-order > section.woocommerce-order-details,
.woocommerce-order > .woocommerce-bacs-bank-details,
.woocommerce-order > .wc-bacs-bank-details-heading,
.woocommerce-order > p:not(.woocommerce-notice) {
    display: none !important;
}

/* ============================================================= */
/* シート20: フッター全面書き換え — Figma仕様準拠                  */
/* ============================================================= */

/* --- フッター全体 --- */
.wwquick_footer .qd_footer_sections {
    width: 100%;
    max-width: 1200px;
    margin: 30px auto 0;
}

.wwquick_footer .qd_footer_sections h2 {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
}

.wwquick_footer .qd_footer_sections a {
    font-size: 12px;
    color: #000;
    text-decoration: none;
    transition: color 0.2s;
}

.wwquick_footer .qd_footer_sections a:hover {
    color: #D21200;
    text-decoration: underline;
}

/* --- セクション1: カスタムタクソノミーリンク 2列 --- */
.qd_footer_taxonomy_grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px 40px;
    padding: 30px 0;
    border-top: 1px solid rgba(0,0,0,0.16);
    border-bottom: 1px solid rgba(0,0,0,0.16);
}

.qd_footer_tax_block {
    margin-bottom: 8px;
}

.qd_footer_tax_title {
    margin-bottom: 10px;
}

.qd_footer_tax_title a {
    font-size: 16px !important;
    font-weight: 700;
    color: #000;
}

.qd_footer_tax_title a:hover {
    color: #D21200;
}

.qd_footer_term_list {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.qd_footer_term_tag {
    display: inline-block;
    padding: 2.5px 5px;
    font-size: 12px !important;
    line-height: 1.4;
    color: #000;
    text-decoration: none;
    border: 1px solid #999;
    border-radius: 3px;
    transition: background-color 0.2s, color 0.2s, border-color 0.2s;
}

.qd_footer_term_tag:hover {
    background-color: #D21200;
    color: #fff !important;
    border-color: #D21200;
}

/* --- セクション2: 配送エリア一覧 --- */
.qd_footer_area_section {
    padding: 30px 0;
    border-bottom: 1px solid rgba(0,0,0,0.16);
}

.qd_footer_section_title {
    margin-bottom: 16px;
    font-size: 16px;
    font-weight: 700;
    color: #000;
}

.qd_footer_section_title a {
    font-size: 16px !important;
    font-weight: 700;
    color: #000;
}

.qd_footer_section_title a:hover {
    color: #D21200;
}

.qd_footer_title_red {
    color: #D21200 !important;
}

.qd_footer_area_grid {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.qd_footer_area_row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.qd_footer_area_label {
    flex-shrink: 0;
    font-size: 12px;
    font-weight: 700;
    color: #000;
}

.qd_footer_area_label a {
    display: inline-block;
    padding: 2.5px 8px;
    font-weight: 700;
    color: #000;
    border: 1px solid #999;
    border-radius: 3px;
}

.qd_footer_area_items {
    flex: 1;
    font-size: 12px;
    line-height: 1.8;
    color: #333;
}

.qd_footer_slash {
    color: #999;
    margin: 0 2px;
}

/* --- セクション3: コラムリンク --- */
.qd_footer_column_section {
    padding: 30px 0;
    border-bottom: 1px solid rgba(0,0,0,0.16);
}

.qd_footer_column_list {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.qd_footer_column_link {
    display: inline-block;
    padding: 2.5px 5px;
    font-size: 12px !important;
    line-height: 1.4;
    color: #000;
    text-decoration: none;
    border: 1px solid #999;
    border-radius: 3px;
    transition: background-color 0.2s, color 0.2s, border-color 0.2s;
}

.qd_footer_column_link:hover {
    background-color: #D21200;
    color: #fff !important;
    border-color: #D21200;
    text-decoration: none;
}

/* --- セクション4: GUIDE --- */
.qd_footer_guide_section {
    padding: 30px 0;
    border-bottom: 1px solid rgba(0,0,0,0.16);
}

.qd_footer_guide_list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 6px 20px;
}

.qd_footer_guide_list li {
    display: flex;
    align-items: center;
}

.qd_footer_guide_list li:not(:last-child)::after {
    content: "|";
    margin-left: 20px;
    color: #999;
}

.qd_footer_guide_list li a {
    font-size: 12px;
    color: #000;
    text-decoration: none;
}

.qd_footer_guide_list li a:hover {
    color: #D21200;
    text-decoration: underline;
}

/* --- セクション5: Quick Link --- */
.qd_footer_quicklink_section {
    padding: 30px 0;
    border-bottom: 1px solid rgba(0,0,0,0.16);
}

.qd_footer_quicklink_list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 6px 20px;
}

.qd_footer_quicklink_list li {
    display: flex;
    align-items: center;
}

.qd_footer_quicklink_list li:not(:last-child)::after {
    content: "|";
    margin-left: 20px;
    color: #999;
}

.qd_footer_quicklink_list li a {
    font-size: 12px;
    color: #000;
    text-decoration: none;
}

.qd_footer_quicklink_list li a:hover {
    color: #D21200;
    text-decoration: underline;
}

/* --- コピーライト（上書き） --- */
.wwquick_footer .wwquick_footer_copyright {
    font-size: 12px;
    line-height: 1.5;
    font-weight: 400;
    color: #000;
    margin-top: 30px;
}

/* --- レスポンシブ: SP対応 --- */
@media screen and (max-width: 768px) {
    .qd_footer_taxonomy_grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .qd_footer_area_row {
        flex-direction: column;
        gap: 4px;
    }

    .qd_footer_area_label {
        width: 100%;
    }

    .qd_footer_guide_list,
    .qd_footer_quicklink_list {
        flex-direction: column;
        gap: 8px;
    }

    .qd_footer_guide_list li:not(:last-child)::after,
    .qd_footer_quicklink_list li:not(:last-child)::after {
        display: none;
    }
}

/* =========================================================
   /category/ タクソノミー一覧ページ
   ========================================================= */
.qd_category_main {
    padding-top: 0;
}

.qd_cat_cards_section {
    margin-bottom: 40px;
}

.qd_cat_cards_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.qd_cat_main_card {
    display: flex;
    flex-direction: column;
    padding: 20px 24px;
    border: 3px dashed #E27A3F;
    border-radius: 30px;
    background: #fff;
    color: #1E1E1E;
    text-decoration: none;
    position: relative;
    transition: background 0.3s;
    gap: 10px;
}

.qd_cat_main_card:hover {
    background: #FFF3E8;
}

.qd_cat_main_card_label {
    font-size: 16px;
    font-weight: 600;
    padding-right: 24px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.qd_cat_main_card_bullet {
    color: #E73429;
    font-size: 12px;
    flex-shrink: 0;
}

.qd_cat_main_card_desc {
    font-size: 12px;
    font-weight: 400;
    color: #666;
    margin-top: 4px;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.qd_cat_main_card_arrow {
    position: absolute;
    top: 20px;
    right: 20px;
}

.qd_cat_main_card_arrow img {
    width: 16px;
    height: 16px;
    filter: brightness(0) saturate(100%) invert(24%) sepia(89%) saturate(2637%) hue-rotate(351deg) brightness(92%) contrast(95%);
}

/* パーティプレート / アラカルト セクション */
.qd_tax_section {
    margin-bottom: 32px;
    text-align: center;
}

.qd_tax_bullet {
    display: inline-block;
    width: 10px;
    height: 10px;
    background: #E73429;
    border-radius: 50%;
    vertical-align: middle;
}

.qd_tax_section_title {
    font-size: 20px;
    font-weight: 700;
    color: #1E1E1E;
    margin: 0 0 20px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.qd_tax_filter_card {
    background: #FAF4EE;
    border-radius: 20px;
    padding: 20px 24px;
    margin-bottom: 16px;
}

.qd_tax_filter_card:last-child {
    margin-bottom: 0;
}

.qd_tax_filter_label {
    font-size: 14px;
    font-weight: 600;
    color: #1E1E1E;
    margin: 0 0 12px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.qd_tax_filter_buttons {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
}

.qd_tax_filter_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 0;
    padding: 10px 4px;
    border: 1px solid #D9CDC2;
    border-radius: 8px;
    background: #fff;
    color: #444;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.3s, border-color 0.3s;
    white-space: nowrap;
    box-sizing: border-box;
}

.qd_tax_filter_btn:hover {
    background: #E73429;
    color: #fff;
    border-color: #E73429;
}

@media (max-width: 768px) {
    .qd_cat_cards_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }

    .qd_cat_main_card {
        padding: 12px 10px;
    }

    .qd_cat_main_card_label {
        font-size: 13px;
    }

    .qd_cat_main_card_desc {
        font-size: 12px;
    }

    .qd_tax_section_title {
        font-size: 16px;
    }

    .qd_tax_filter_card {
        padding: 14px 12px;
    }

    .qd_tax_filter_buttons {
        flex-wrap: wrap;
    }

    .qd_tax_filter_btn {
        flex: 0 0 calc((100% - 8px) / 2);
        padding: 8px 4px;
        font-size: 12px;
    }
}

/* =========================================================
   GMO決済エラーモーダル (シート24 No.5)
   ========================================================= */
.qd-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
}

.qd-modal-content {
    background: #fff;
    border-radius: 12px;
    padding: 32px 28px;
    max-width: 440px;
    width: 90%;
    text-align: center;
}

.qd-modal-title {
    font-size: 16px;
    font-weight: 700;
    color: #E73429;
    margin: 0 0 16px;
    line-height: 1.6;
}

.qd-modal-desc {
    font-size: 14px;
    color: #333;
    margin: 0 0 24px;
    line-height: 1.8;
}

.qd-modal-close-btn {
    display: inline-block;
    background: #E73429;
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 10px 40px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
}

.qd-modal-close-btn:hover {
    opacity: 0.85;
}

/* =============================================
   決済エラーモーダル
============================================= */
.wwcs_payment_error_box {
    text-align: center;
    max-width: 420px;
    padding: 32px 24px;
}

.wwcs_payment_error_icon {
    font-size: 40px;
    color: #E73429;
    line-height: 1;
    margin-bottom: 12px;
}

.wwcs_payment_error_title {
    font-size: 18px;
    font-weight: 700;
    color: #333;
    margin-bottom: 12px;
}

.wwcs_payment_error_msg {
    font-size: 14px;
    color: #666;
    margin-bottom: 24px;
    line-height: 1.6;
}

#wwcs_payment_error_retry {
    min-width: 200px;
}

/* =========================================================
   シート30 No.4: 提供スタイル2タイプ - プレート/皿数を赤背景カードから赤テキストに
   ========================================================= */
.qd_plate_section .qd_plate_options_wrap .qd_plate_option {
    background-color: transparent !important;
    color: #D21200 !important;
    padding: 0 !important;
    margin-top: 6px !important;
    border-radius: 0 !important;
}
.qd_plate_section .qd_plate_options_wrap .qd_plate_option::after {
    display: none !important;
}
.qd_plate_section .qd_plate_options_wrap .qd_plate_option_title {
    color: #D21200 !important;
    font-size: 24px !important;
    flex-direction: row !important;
    gap: 2px !important;
}
.qd_plate_section .qd_plate_options_wrap .qd_plate_option_title span {
    font-size: 14px;
    align-self: flex-end;
    padding-bottom: 2px;
}
.qd_plate_section .qd_plate_options_wrap .qd_plate_people_item {
    color: #000000 !important;
}
.qd_plate_section .qd_plate_options_wrap .qd_plate_people_item::before {
    display: none !important;
}

/* =========================================================
   シート30 No.2: トップ「人気のおすすめメニュー」推奨カード
   ========================================================= */
.qd_rec_section .track-outer {
    overflow: visible;
}
.qd_rec_section .slider-track.qd_rec_products {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    transform: none !important;
    width: 100% !important;
    justify-content: center;
    margin-bottom: 20px;
}
.qd_rec_section .qd_rec_card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    flex: 0 0 calc((100% - 48px) / 3);
    max-width: calc((100% - 48px) / 3);
    transition: box-shadow 0.2s ease;
    border-radius: 8px;
    isolation: isolate;
}
.qd_rec_section .qd_rec_card .qd_card_img_wrap {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.qd_rec_section .qd_rec_card .qd_card_img_wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.qd_rec_section .qd_rec_card .qd_card_body {
    padding: 16px;
    transition: background-color 0.2s ease;
    border-radius: 20px;
    background: #fff;
    flex: 1 1 auto;
}
.qd_rec_section .qd_rec_card:hover .qd_card_body {
    background-color: #FFEAD4;
}
.qd_rec_section .qd_rec_card .qd_rec_card_title {
    color: #727272;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 12px;
    /* 旧 .qd_card_title 由来の 2 行クランプを明示継承 */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    /* タイトル1行/2行でカード高さが変動し直下の破線(qd_action_wrap)がカード毎にズレる
       のを防ぐため常に2行分(=line-height 1.4 × 2)を確保。emで各ブレークポイントに追従 (#161/#160) */
    min-height: 2.8em;
}
.qd_rec_section .qd_rec_card .qd_action_wrap {
    border-top: 1px dashed #727272;
    border-bottom: 1px dashed #727272;
    padding: 12px 0;
    margin-top: 12px;
    text-align: center;
}
.qd_rec_section .qd_rec_card .qd_card_price {
    color: #E27A3F;
    font-size: 28px;
    font-weight: bold;
}
.qd_rec_section .qd_rec_card .qd_card_ppl {
    color: #727272;
    font-size: 16px;
    margin-top: 4px;
}

/* おすすめメニュー: 横3列→横5列・カードを小型化（カテゴリ円カード程度のサイズ感へ） */
.qd_rec_section .slider-track,
.qd_rec_section .qd_rec_products {
    gap: 16px;
}
.qd_rec_section .qd_rec_card {
    flex: 0 0 calc((100% - 64px) / 5);
    max-width: calc((100% - 64px) / 5);
}
.qd_rec_section .qd_rec_card .qd_card_img_wrap {
    /* media-trc.css の各ブレークポイントが width/height/min-height を当てるため !important で正方形固定 */
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1 / 1;
    margin-bottom: -45px;
}
.qd_rec_section .qd_rec_card .qd_card_body {
    padding: 12px;
    border-radius: 14px;
}
.qd_rec_section .qd_rec_card .qd_rec_card_title {
    font-size: 16px;
    margin-bottom: 8px;
    text-align: center;
}
.qd_rec_section .qd_rec_card .qd_action_wrap {
    padding: 8px 0;
    margin-top: 8px;
}
.qd_rec_section .qd_rec_card .qd_card_price {
    font-size: 18px;
}
.qd_rec_section .qd_rec_card .qd_card_ppl {
    font-size: 13px;
}

.qd_rec_section .qd_rec_dots {
    display: flex;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: center;
}
.qd_rec_section .qd_rec_dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #ccc;
    cursor: pointer;
    transition: background 0.2s;
}
.qd_rec_section .qd_rec_dot.active {
    background: #D21200;
}
.qd_rec_section .qd_rec_slider_nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 20px;
}
.qd_rec_section #qd_rec_loader {
    text-align: center;
    padding: 40px;
}
.qd_rec_section .spinner {
    display: inline-block;
    width: 32px;
    height: 32px;
    border: 3px solid #eee;
    border-top-color: #D21200;
    border-radius: 50%;
    animation: qd_rec_spin 0.8s linear infinite;
}
@keyframes qd_rec_spin {
    to { transform: rotate(360deg); }
}
/* タブレット: おすすめカード 3列 */
@media (max-width: 1099px) {
    .qd_rec_section .slider-track.qd_rec_products {
        gap: 14px;
    }
    .qd_rec_section .qd_rec_card {
        flex: 0 0 calc((100% - 28px) / 3);
        max-width: calc((100% - 28px) / 3);
    }
}
/* SP: おすすめカード 2列 */
@media (max-width: 768px) {
    .qd_rec_section .slider-track.qd_rec_products {
        gap: 12px;
    }
    .qd_rec_section .qd_rec_card {
        flex: 0 0 calc((100% - 12px) / 2);
        max-width: calc((100% - 12px) / 2);
    }
    .qd_rec_section .qd_rec_card .qd_card_body {
        padding: 10px;
    }
    .qd_rec_section .qd_rec_card .qd_rec_card_title {
        font-size: 14px;
    }
    .qd_rec_section .qd_rec_card .qd_card_price {
        font-size: 16px;
    }
    .qd_rec_section .qd_rec_card .qd_card_ppl {
        font-size: 12px;
    }
}

/* =========================================================
   シート36: マイページ 注文履歴一覧 + 注文詳細
   ========================================================= */
.qd-orders-wrap {
    background: #fff;
    border: 1px solid #ffeacf;
    border-radius: 12px;
    padding: 30px;
}
.qd-orders-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 12px;
}
.qd-orders-title {
    font-size: 24px;
    font-weight: bold;
    color: #333;
    margin: 0;
}
.qd-orders-contact {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 13px;
    color: #666;
}
.qd-orders-contact-btn {
    display: inline-block;
    padding: 8px 18px;
    background: #fff;
    color: #c83232;
    border: 1px solid #c83232;
    border-radius: 20px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
}
.qd-orders-contact-btn:hover { background: #c83232; color: #fff; }
.qd-orders-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}
.qd-orders-table thead th {
    background: #d4001a;
    color: #fff;
    padding: 12px 14px;
    text-align: left;
    font-weight: bold;
    font-size: 16px;
}
.qd-orders-table thead th:first-child { border-radius: 6px 0 0 0; }
.qd-orders-table thead th:last-child  { border-radius: 0 6px 0 0; }
.qd-orders-table tbody td {
    padding: 14px;
    border-bottom: 1px solid #eee;
    font-size: 16px;
    color: #333;
}
.qd-orders-table tbody tr:last-child td { border-bottom: none; }
.qd-orders-table a { color: #c83232; text-decoration: none; }
.qd-orders-legend {
    text-align: right;
    color: #666;
    font-size: 12px;
    margin-top: 10px;
}
.qd-orders-pagination { display: flex; justify-content: center; gap: 12px; margin-top: 20px; }
.qd-orders-pagination a {
    padding: 8px 16px;
    background: #f5f5f5;
    color: #333;
    text-decoration: none;
    border-radius: 4px;
    font-size: 13px;
}
.qd-orders-empty { text-align: center; padding: 40px; color: #666; }

/* 注文履歴 - 旧EC(Shop Maker)注文履歴への導線 */
.qd-orders-legacy-notice {
    background: #fff8ef;
    border: 1px solid #ffd9a8;
    border-radius: 8px;
    padding: 14px 18px;
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 1.7;
    color: #665;
}
.qd-orders-legacy-link {
    color: #c83232;
    font-weight: 600;
    text-decoration: underline;
}
.qd-orders-legacy-link:hover { color: #a01f1f; }

/* 注文履歴 - PDF DL ボタン */
.qd-orders-pdf-cell {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    white-space: nowrap;
}
.qd-orders-pdf-btn {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    background: #fff;
    color: #c83232 !important;
    border: 1px solid #c83232;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    text-decoration: none !important;
    transition: background 0.2s, color 0.2s;
}
.qd-orders-pdf-btn:hover {
    background: #c83232;
    color: #fff !important;
}
.qd-orders-th-pdf { min-width: 240px; }

/* 注文詳細 */
.qd-view-order-wrap {
    background: transparent;
}
.qd-back-link {
    display: inline-block;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    margin-bottom: 16px;
}
.qd-back-link:hover { color: #c83232; }
.qd-section {
    background: #fff;
    border: 1px solid #ffeacf;
    border-radius: 12px;
    padding: 24px 28px;
    margin-bottom: 20px;
}
.qd-section-row {
    display: flex;
    gap: 28px;
    flex-wrap: wrap;
}
.qd-section-block { flex: 1; min-width: 280px; }
.qd-section-title {
    font-size: 16px;
    font-weight: bold;
    color: #333;
    margin: 0 0 12px;
    padding-bottom: 6px;
    border-bottom: 1px dotted #c83232;
    display: flex;
    align-items: center;
    gap: 6px;
}
.qd-dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #c83232;
}
.qd-sub-title {
    font-size: 16px;
    font-weight: bold;
    color: #c83232;
    margin: 18px 0 8px;
}
.qd-info-table {
    width: 100%;
    border-collapse: collapse;
    border-radius: 6px;
    overflow: hidden;
}
.qd-info-table tr { border-bottom: 1px solid #fff; }
.qd-info-table tr:last-child { border-bottom: none; }
.qd-info-table th {
    width: 35%;
    padding: 10px 14px;
    text-align: left;
    font-weight: normal;
    font-size: 16px;
    color: #333;
    background: #FFFAF2;
    vertical-align: middle;
}
.qd-info-table td {
    padding: 10px 14px;
    font-size: 16px;
    color: #333;
    background: #FFECD8;
    vertical-align: middle;
}
.qd-items-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    margin-bottom: 16px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    border-radius: 6px;
    overflow: hidden;
}
.qd-items-table thead th {
    background: #d4001a;
    color: #fff;
    padding: 12px 10px;
    text-align: left;
    font-weight: bold;
    font-size: 16px;
}
.qd-items-table thead th:first-child { border-radius: 6px 0 0 0; }
.qd-items-table thead th:last-child  { border-radius: 0 6px 0 0; }
.qd-items-table tbody td {
    padding: 14px 10px;
    border-bottom: 1px solid #eee;
    font-size: 16px;
    color: #333;
    vertical-align: middle;
}
.qd-items-table tbody tr:last-child td { border-bottom: none; }
.qd-items-table .qd-item-img { width: 70px; }
.qd-items-table .qd-item-img img { width: 60px; height: 60px; object-fit: cover; border-radius: 8px; }
.qd-items-table .qd-col-qty, .qd-items-table .qd-col-price, .qd-items-table .qd-col-total, .qd-items-table .qd-col-sku { white-space: nowrap; }
.qd-totals { margin-top: 12px; }
.qd-total-row {
    display: flex;
    justify-content: space-between;
    padding: 4px 14px;
    font-size: 16px;
    color: #333;
}
.qd-total-grand {
    font-weight: bold;
    font-size: 16px;
    border-top: 2px solid #c83232;
    padding-top: 12px;
    margin-top: 8px;
}
@media (max-width: 768px) {
    .qd-orders-wrap, .qd-section { padding: 16px; }
    .qd-orders-header { flex-direction: column; align-items: flex-start; }
    .qd-orders-table thead { display: none; }
    .qd-orders-table tbody tr { display: block; border-bottom: 2px solid #ddd; padding: 10px 0; }
    .qd-orders-table tbody td { display: block; padding: 4px 0; border: none; }
    .qd-orders-pdf-cell { padding-top: 8px !important; }
    .qd-section-row { flex-direction: column; }
    .qd-info-table th { width: 40%; }
    .qd-items-table thead { display: none; }
    .qd-items-table tbody tr { display: block; border-bottom: 1px solid #eee; padding: 10px 0; }
    .qd-items-table tbody td { display: block; padding: 4px 0; border: none; }
}

/* =========================================================
   WYSIWYG本文のリスト表示を復活
   全体リセット style.css の `li{list-style:none}` を本文コンテナ内で打ち消す
   対象: 汎用ページ(.post-content) / FAQ回答(.qd_faq_answer) / ニュース詳細(.qd_news_detail_content)
   ========================================================= */
.post-content ul,
.entry-content ul,
.qd_faq_answer ul,
.qd_news_detail_content ul {
    list-style: square; /* ・→■(四角マーカー) */
    padding-left: 1.5em;
    margin: 0 0 1em;
}
.post-content ol,
.entry-content ol,
.qd_faq_answer ol,
.qd_news_detail_content ol {
    list-style: decimal;
    padding-left: 1.5em;
    margin: 0 0 1em;
}
.post-content ul li,
.post-content ol li,
.entry-content ul li,
.entry-content ol li,
.qd_faq_answer ul li,
.qd_faq_answer ol li,
.qd_news_detail_content ul li,
.qd_news_detail_content ol li {
    list-style: inherit;
    margin: 0 0 .3em;
}

/* =========================================================
   共通CTAバナー (Figma: 当日注文も12時までOK！) / 全ページ共通フッター
   ========================================================= */
.qd_cta_banner {
    padding: 64px 0;
    background-color: #fff;
    background-image: repeating-linear-gradient(90deg, #FBEFE3 0, #FBEFE3 1px, transparent 1px, transparent 14px);
}
.qd_cta_banner .qd_container {
    max-width: 1080px;
}
/* ヘッダー */
.qd_cta_banner_head {
    text-align: center;
    margin-bottom: 40px;
}
.qd_cta_banner_title {
    font-size: 40px;
    font-weight: 700;
    color: #1e1e1e;
    line-height: 1.3;
    margin: 0 0 16px;
}
.qd_cta_banner_divider {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 420px;
    margin: 0 auto 16px;
}
.qd_cta_banner_divider::before,
.qd_cta_banner_divider::after {
    content: "";
    flex: 1;
    border-top: 2px dashed #E27A3F;
    opacity: .55;
}
.qd_cta_banner_dot {
    flex: 0 0 auto;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #D21200;
    margin: 0 10px;
}
.qd_cta_banner_lead {
    font-size: 20px;
    color: #1e1e1e;
    line-height: 1.6;
    margin: 0;
}
/* 2カード */
.qd_cta_banner_grid {
    display: flex;
    gap: 30px;
    justify-content: center;
    max-width: 900px;
    margin: 0 auto 48px;
}
.qd_cta_banner_card {
    flex: 1;
    min-width: 0;
    background: #fff;
    border: 3px solid #E27A3F;
    border-radius: 20px;
    padding: 32px 24px;
    text-align: center;
}
.qd_cta_banner_card_title {
    font-size: 24px;
    font-weight: 700;
    color: #1e1e1e;
    margin: 0 0 20px;
}
.qd_cta_banner_btn {
    display: inline-block;
    font-size: 18px;
    font-weight: 700;
    border-radius: 999px;
    padding: 14px 28px;
    text-decoration: none;
    transition: opacity .2s ease, background .2s ease, color .2s ease;
}
/* 2ボタン共通挙動: 初期=オレンジ塗り / ホバー=白(枠線オレンジ) */
.qd_cta_banner_btn--fill,
.qd_cta_banner_btn--outline {
    background: #E27A3F;
    color: #fff;
    border: 2px solid #E27A3F;
    box-shadow: 0 4px 8px rgba(0, 0, 0, .18);
}
.qd_cta_banner_btn--fill:hover,
.qd_cta_banner_btn--outline:hover {
    background: #fff;
    color: #E27A3F;
}
.qd_cta_banner_note {
    font-size: 16px;
    color: #333;
    margin: 18px 0 0;
}
/* もっとカンタン検索 */
.qd_cta_banner_quick {
    text-align: center;
}
.qd_cta_banner_quick_label {
    font-size: 20px;
    font-weight: 700;
    color: #1e1e1e;
    margin: 0 0 18px;
}
.qd_cta_banner_tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px 24px;
    max-width: 760px;
    margin: 0 auto;
}
.qd_cta_banner_tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #FFEAD4;
    color: #222;
    font-size: 15px;
    font-weight: 600;
    border-radius: 999px;
    padding: 9px 22px;
    text-decoration: none;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .15);
    transition: background .2s ease, transform .2s ease;
}
.qd_cta_banner_tag:hover {
    background: #FFD9B0;
    color: #222;
    transform: translateY(-1px);
}
.qd_cta_banner_tag_icon {
    flex: 0 0 auto;
    color: #222;
}
@media (max-width: 768px) {
    .qd_cta_banner { padding: 40px 0; }
    .qd_cta_banner_title { font-size: 26px; }
    .qd_cta_banner_lead { font-size: 16px; }
    .qd_cta_banner_grid { flex-direction: column; gap: 20px; margin-bottom: 36px; }
    .qd_cta_banner_card { padding: 24px 18px; }
    .qd_cta_banner_card_title { font-size: 20px; }
    .qd_cta_banner_btn { font-size: 16px; padding: 12px 22px; }
    .qd_cta_banner_quick_label { font-size: 18px; }
    .qd_cta_banner_tags { gap: 10px 14px; }
    .qd_cta_banner_tag { font-size: 13px; padding: 8px 16px; }
}
