
@charset "utf-8";
@import url(./font/font.css);
@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;400;500;600;700;800;900&display=swap);
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@200..900&family=Noto+Serif:ital,wght@0,100..900;1,100..900&display=swap');

body {
    font-family:
        "Noto Serif SC",
                -apple-system,
        BlinkMacSystemFont,
        sans-serif;
    color: #222;
    background: #faf8f5; 
}


h2,
h3,
.text-lead,
.main-hero__sub,
.gnb,
.sig3__title,
.sub-brand-origin .brand-origin__farm-heading {
/*    font-family: "Nanum Myeongjo";*/
}

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


a {
    color: inherit;
    text-decoration: none;
      transition: 0.2s;
}


/* 기본은 CSS */
main [id] {
  scroll-margin-top: 150px;
}

ul {
    list-style: none;
}

.page-wrap {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

/* 헤더 */
.site-header {
    position: sticky;
    top: 0;
    z-index: 1000;

    border-bottom: 0;
    background-image: url(../images/common/pattern_01.png);
    background-repeat: repeat-x;
    background-size: auto 18px;
    background-position: 0 -8px;
}

.site-header.is-scrolled {
    border-bottom: 1px solid #dadada;
    background-color: #fff; /* 변경할 색상 */
    box-shadow: 0 2px 6px rgba(0,0,0,0.06);
}


.header-inner,
.mega-inner,
.body-inner,
.footer-inner {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 40px;
}

.header-inner {
    /* height: 88px; */
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 14px;
}

.logo {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.16em;
}
.logo img {
    height: 98px;
}
.logo span.sub {
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.12em;
    color: #a38a6a;
}

.gnb {
    flex: 1;
    display: flex;
    justify-content: center;
    gap: 72px;
    font-size: 20px;
    font-weight: 600;
    height: 100px;
    align-items: center;
}
.gnb > li {
    position: relative;
    cursor: pointer;
    padding: 8px 0;
}
.gnb > li::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    transform-origin: center;
    transform: scaleX(0);
    background: #c89f56;
    transition: transform 0.2s ease-out;
}
.gnb > li:hover::after {
    transform: scaleX(1);
}

.header-utils {
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 14px;
}
.search-btn {
    width: 30px;
    height: 30px;
    border-radius: 6px;
    border: 1px solid #B4792C;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    background: #B4792C;
}



header .menu-btn {display: none;}
header .search-btn { position: absolute; top: 51px; right: 15px; z-index: 10; font-size: 1em; color: #5E5241;}
header .search-btn.on { font-weight: 900; color: #000;}
header .search-btn.on:after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background-color: #000;}

header .search-form { display: none; position: fixed; top: 110px; left: 0;}
header .search-form.on,
header .search-form .close {display: block; /* 표시 */ opacity: 1; transform: translateY(0); /* 원래 위치로 이동 */}
header .search-form .inner {padding: 60px 15px;position: relative;}




.is-banner #wrap {padding-top: 0;}
.is-banner #header { position: relative;}
.search-form { width: 100%; background-color: #fff; text-align: center; background-color: rgba(255, 255, 255, 1); backdrop-filter: blur(10px); box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); opacity: 0; transform: translateY(20px); /* 위로 숨긴 상태 */ transition: opacity 0.3s ease, transform 0.3s ease; /* 부드러운 전환 */ display: none; }
.search-form .inner {position: relative;max-width: 1440px;width: 100%;margin: 0 auto;}
.search-form form {position: relative;max-width: 632px;margin: 0 auto;width: 100%;}




.search-form input { width: 100%; border: 0; padding: 18px 48px 13px 6px; border-bottom: 1px solid #d6d6d6; font-weight: 300; font-size: 1.5em; box-sizing: border-box; outline: none;}
.search-form input::placeholder { line-height: 30px; color: #999;}
.search-form input:focus,.search-form input:valid {border-color: #222;}
.search-form button {position: absolute;top: 0;right: 0;width: 48px;height: 60px;background: url(../images/icon/ico_search.png) no-repeat 0px 0px;text-indent: -999em;background-size: auto 50px;}
.search-form .close {display: none;position: absolute;top: 20px;right: 15px;width: 30px;height: 30px;background: url(../images/icon/btn_close.png) no-repeat 0 0;text-indent: -999em;}
.search-form .page-nav .inner {padding-top: 39px;}

.search-icon {}
.search-icon a {
    width: 30px;
    height: 30px;
    border-radius: 6px;
    border: 1px solid #B4792C;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #B4792C;
}
.search-icon img {width: 20px;height: 20px;}


@media (max-width: 960px) {

   .search-icon {
    position: absolute;
    right: 20px;
}
}



.lang-button:before {
    display: block;
    position: absolute;
    width: 0.6rem;
    height: 0.6rem;
    right: 1rem;
    margin-top: 7px;
    border: 1px solid #b2b2b2;
    border-top: 0;
    border-left: 0;
    content: "";
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(45deg);
}

.lang-select {
    position: relative;
    font-size: 14px;
    color: #5E5241;
}

.lang-button {
    min-width: 130px;
    padding: 7px 14px;
    border-radius: 6px;
    border: 1px solid #d5d8dd;
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    cursor: pointer;
    font-family: "Montserrat";
    font-size: 13px;
    color: #5E5241;
}

.lang-arrow {
    font-size: 12px;
}

/* 드롭다운 */
.lang-list {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    min-width: 130px;
    background: #fff;
    border-radius: 6px;
    border: 1px solid #d5d8dd;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
    padding: 10px 0;
    list-style: none;
    z-index: 1000;

    opacity: 0;
    visibility: hidden;
    transform: translateY(4px);
    transition:
        opacity 0.18s ease,
        transform 0.18s ease,
        visibility 0s linear 0.18s;
}

.lang-select.is-open .lang-list {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0s;
}

.lang-option {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 14px;
    cursor: pointer;
    white-space: nowrap;
}

.lang-option:hover {
    background: #f5f7fa;
}

.lang-option.is-active span:last-child {
    font-weight: 600;
}

.lang-option a {display: contents; }

/* 플래그 (심플 스타일) */
.flag {
    width: 21px;
    height: 21px;
    border-radius: 50%;
    display: inline-block;
}

.flag-kr,
.flag-us,
.flag-jp,
.flag-tw,
.flag-cn {
    background-repeat: no-repeat;
    background-size: cover;
}

.flag-kr {
    background-image: url(../images/icon/kr.png);
}
.flag-us {
    background-image: url(../images/icon/us.png);
}
.flag-jp {
    background-image: url(../images/icon/jp.png);
}
.flag-tw {
    background-image: url(../images/icon/tw.png);
}
.flag-cn {
    background-image: url(../images/icon/cn.png);
}

/* 메가 메뉴 */
.mega-menu {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    background: #fff;
    border-bottom: 1px solid #eee;
    box-shadow: 0 16px 30px rgba(0, 0, 0, 0.04);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition:
        opacity 0.18s ease-out,
        transform 0.18s ease-out,
        visibility 0s linear 0.18s;
    pointer-events: none;
}

/* 헤더에 마우스가 올라가 있으면 전체 펼침 */
.gnb:hover .mega-menu,
.gnb:focus-within .mega-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(1px);
    transition-delay: 0s;
    pointer-events: auto;
}

.mega-inner {
    /* display: grid; */
    /* grid-template-columns: repeat(6, minmax(0, 1fr)); */
    padding: 32px 40px 36px;
    font-size: 13px;
    width: 1200px;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
}

.mega-col h3 {
    font-size: 15px;
    font-weight: 600;
    margin-top: 24px;
    margin-bottom: 12px;
    color: #B4792C;
}
.mega-col h3:first-child {
    margin-top: 0;
}

.mega-col ul li + li {
    margin-top: 6px;
}
.mega-col li {
    color: #5E5241;
}
.mega-col li::before {
    content: "• ";
    color: #bcb3a5;
}

/* 바디 */
main {
    flex: 1;
    background: #f9f7f4;
}
.body-inner {
    padding: 0 40px 40px;
    margin-top: 2px !important;
}

.body-placeholder {
    max-width: 720px;
}
.body-placeholder h1 {
    font-size: 32px;
    margin-bottom: 16px;
}
.body-placeholder p {
    font-size: 15px;
    line-height: 1.7;
    color: #5E5241;
}

.sns-wrap {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    padding: 16px 0;
}

.sns-item {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.25s ease;
    cursor: pointer;
}

.sns-item svg {
    width: 40px;
    height: 40px;
    fill: #fff;
    opacity: 0.9;
    transition: 0.25s ease;
}
.sns-item img {
    width: 24px;
    height: 24px;
    opacity: 0.9;
    transition: 0.25s ease;
}
/* 호버 시 강조 */
.sns-item:hover {
    border-color: #fff;
}
.sns-item:hover svg {
    opacity: 1;
    transform: scale(1.08);
}

/* 푸터 */
footer {
    background: #333;
    color: #f5f5f5;
    padding: 0;
    font-size: 11px;
    font-family: Montserrat;
    letter-spacing: 0.03rem;
    line-height: 1.4;
}
.footer-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 32px;
}
.footer-actions {
    display: flex;
    gap: 12px;
}
.footer-actions a {
    width: 98px;
    height: 28px;
    background: rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
}

.footer-contact h3 { font-family: "Montserrat"; }
.footer-contact strong {
    display: block;
    margin-bottom: 4px;
    font-family: "Montserrat";
    font-weight: 700;
    font-size: 36px;
    letter-spacing: 0.06rem;
}
.footer-contact p {
    letter-spacing: 0;
    color: #cfcfcf;
}

.footer-contact p b {
    color: #fff;
}
.footer-middle {
    border-top: 1px solid rgba(255, 255, 255, 0.15);
    padding: 18px 0;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.footer-bottom {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-end;
    text-align: right;
    color: #cfcfcf;
}
.footer-links {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 4px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0;
}
.footer-copy {
    color: #aaa;
}

@media (max-width: 1024px) {
    .header-inner {
        display: flex;
        padding: 0;
        flex-direction: column;
    }
    .mega-inner {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 24px 20px 28px;
    }
    .gnb {
        gap: 16px;
        font-size: 15px;
        text-align: center;
        justify-content: left;
        overflow-x: auto;
        white-space: nowrap;
        width: 100%;
        letter-spacing: -0.03rem;
        padding: 0 20px;
    }
    
    .logo {
    display: flex;
    align-items: center;
}
.logo img {
    height: 70px;
    padding-top: 5px;
}
    
  .header-utils {
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 14px;
    position: absolute;
    top: 30px;
    width: 100%;
}  

    .search-btn {
    width: 30px;
    height: 30px;
    border-radius: 6px;
    border: 1px solid #B4792C;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    background: #B4792C;
}

.lang-button:before {
    display: block;
    position: absolute;
    width: 0.4rem;
    height: 0.4rem;
    right: 0.7rem;
    margin-top: 6px;
    border: 1px solid #b2b2b2;
    border-top: 0;
    border-left: 0;
    content: "";
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(45deg);
}

    /* 드롭다운 */
.lang-list {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    min-width: 100px;
    background: #fff;
    border-radius: 6px;
    border: 1px solid #d5d8dd;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
    padding: 6px 0;
    list-style: none;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transform: translateY(4px);
    transition:
        opacity 0.18s ease,
        transform 0.18s ease,
        visibility 0s linear 0.18s;
}

.lang-select.is-open .lang-list {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0s;
}

.lang-option {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 3px 10px;
    cursor: pointer;
    white-space: nowrap;
}

.lang-option:hover {
    background: #f5f7fa;
}

.lang-option.is-active span:last-child {
    font-weight: 600;
}

/* 플래그 (심플 스타일) */
.flag {
    width: 21px;
    height: 21px;
    border-radius: 50%;
    display: inline-block;
}

.lang-select {
    position: relative;
    font-size: 12px;
    color: #5E5241;
    left: 20px;
}

.lang-button {
    min-width: 100px;
    padding: 5px 10px;
    border-radius: 6px;
    border: 1px solid #d5d8dd;
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    cursor: pointer;
    font-family: "Montserrat";
    font-size: 11px;
    color: #5E5241;
}

.lang-arrow {
    font-size: 12px;
}
    footer {  margin-top: 60px; }
    .footer-inner {
    padding: 0 30px;
}
    .footer-top {
        display: flex;
        flex-direction: row;
        align-items: center;
        padding: 20px 0;
        gap: 0px;
        justify-content: space-between;
    }

    .footer-actions {
    gap: 6px;
}

    .footer-actions a {
    width: 76px;
    font-size: 12px;
}


    .footer-top .sns-bg-demo {}
    .footer-top .sns-bg-demo .sns-wrap {
    padding: 0;
    gap: 6px;
}

    .footer-top .sns-bg-demo .sns-wrap .sns-item {
    width: 36px;
    height: 36px;
}
    .footer-top .sns-bg-demo .sns-wrap .sns-item img  {
    width: 18px;
    height: 18px;
}
    .footer-middle {
    flex-direction: column;
}

 .footer-middle h2 {
    font-family: "Montserrat";
    font-size: 14px;
}
    
    .footer-bottom {
    text-align: left;
    align-items: flex-start;
    margin-top: 20px;
}


    .footer-bottom br { display
                    : none }
    .footer-contact strong {

    font-size: 30px;

}
    
}

/* 우측 퀵메뉴 */
.quick-right {
    position: fixed;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    z-index: 900;
}

.quick-right ul {
    list-style: none;
    margin: 0;
    padding: 20px 7px;
    width: 65px;
    background: #ffffff;
    border-radius: 30px 0 0 30px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
    border: 1px solid #e4e4e4;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.quick-right li + li {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #f0f0f0;
}

.quick-right a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    text-decoration: none;
    color: #5E5241;
    font-size: 11px;
    line-height: 1.4;
    transition: color 0.2s ease;
}

.quick-icon img {
    display: block;
    width: 30px;
    height: 30px;
    transition: filter 0.2s ease;
}

.quick-label {
    white-space: nowrap;
}

/* Hover 시 텍스트 컬러 */
.quick-right a:hover {
    color: #b4792c;
}

/* Hover 시 아이콘 컬러 (#B4792C 변환 필터 적용) */
.quick-right a:hover .quick-icon img {
    filter: invert(44%) sepia(66%) saturate(518%) hue-rotate(356deg) brightness(95%) contrast(91%);
}

/* 모바일에서는 숨김 */
@media (max-width: 768px) {
    .quick-right {
        display: none;
    }
    
      
    
}



/* ===========================
   브랜드 소개 > 소월당 탄생 배경
   (sub-brand-origin 전용)
   =========================== */

.sub-brand-origin {
    max-width: 1440px;
    margin: 0 auto;
    padding-bottom: 100px;
}

/* 상단 비주얼 */
.brand-origin__hero img {
    width: 100%;
    display: block;
    border-radius: 4px;
}

/* 탭 메뉴 */
.sub_tabs {
    margin: 0;
    border-bottom: 1px solid #e1e1e1;
  position: relative;
  z-index: 50;
}

.sub_tabs.is-fixed {
  position: fixed;
  top: 115px;
  left: 0;
  width: 100%;
  background: #fff; /* 필요시 */
  box-shadow: 0 2px 8px rgba(0,0,0,0.06); /* 선택 */
}

.sub_tabs ul {
    display: flex;
    gap: 30px;
    padding: 12px 0;
    font-size: 16px;
    color: #333;
    justify-content: center;
}

.sub_tabs li a {
    cursor: pointer;
    padding: 5px 30px;
    transition: 0.2s ease;
}

.sub_tabs li.is-active a,
.sub_tabs li a:hover {
    padding: 5px 30px;
    border-radius: 999px;
    background: #D6A84E;
    color: #fff;
    font-weight: 600;
}

/* 인트로 */
.sub-brand-origin .brand-origin__intro {
    text-align: center;
    margin: 80px auto;
}

.sub-brand-origin .brand-origin__intro-title {
    font-size: 42px;
    letter-spacing: 0;
    margin-bottom: 18px;
}

.sub-brand-origin .brand-origin__intro-title span {
    font-family: "Songti SC", "Noto Serif CJK SC", "Source Han Serif SC", serif;
    font-size: 64px;
    margin-left: 6px;
font-weight: unset;
}

.sub-brand-origin .brand-origin__intro-text {
    font-size: 18px;
    line-height: 1.9;
    color: #5E5241;
    max-width: 800px;
    margin: 0 auto 28px;
    letter-spacing: -0.03rem;
}

.sub-brand-origin .brand-origin__intro-button {
    display: inline-block;
    padding: 18px 36px;
    font-size: 18px;
    border-radius: 10px;
    border: 1px solid #d3c3a0;
    background: #fff;
    color: #8a6b36;
}

/* 스토리 섹션 (2단) */
.sub-brand-origin .brand-origin__story {
    display: grid;
    grid-template-columns: 2fr 1.6fr;
    gap: 100px;
    align-items: center;
}

.sub-brand-origin .brand-origin__story-images {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.sub-brand-origin .brand-origin__story-images img {
    width: 100%;
    display: block;
}

.sub-brand-origin .brand-origin__story-text {
    font-size: 18px;
    line-height: 1.6;
    color: #5E5241;
  
}

.text-lead {
    font-size: 20px !important;
    font-weight: 700;
    line-height: 1.7;
    margin-bottom: 18px !important;
    color: #333 !important;
}


.sub-brand-origin .brand-origin__story-text p + p {
    margin-top: 14px;
}

/* 산지 전경 이미지 */
.sub-brand-origin .brand-origin__farm-hero {
    margin-bottom: 70px;
}

.sub-brand-origin .brand-origin__farm-hero figure {
    position: relative;
}

.sub-brand-origin .brand-origin__farm-hero img {
    width: 100%;
    display: block;
}

.sub-brand-origin .brand-origin__farm-hero figcaption {
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 18px;
    padding: 12px 32px;
    background: #8A8B66;
    color: #fff;
    border-radius: 0;
}

/* 울산 두서면 설명 */
.sub-brand-origin .brand-origin__farm-desc {
    display: grid;
    grid-template-columns: 1.3fr 2fr;
    gap: 40px;
    align-items: flex-start;
    margin-bottom: 80px;
}

.sub-brand-origin .brand-origin__farm-heading {
    font-size: 42px;
    font-weight: bold;
    line-height: 1.2;
    letter-spacing: 0.08em;
    /* white-space: pre-line; */
}

.sub-brand-origin .brand-origin__farm-text {
    font-size: 18px;
    line-height: 1.4;
    color: #5E5241;
}

.sub-brand-origin .brand-origin__farm-text p + p {
    margin-top: 12px;
}

/* 하단 이미지 그리드 */
.sub-brand-origin .brand-origin__photos-top {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
    justify-content: center;
}

.sub-brand-origin .brand-origin__photo-large,
.sub-brand-origin .brand-origin__photo-column img,
.sub-brand-origin .brand-origin__photos-bottom img {
    width: auto;
    max-width: 100%;
    display: block;
}

.sub-brand-origin .brand-origin__photos-bottom {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
    justify-content: center;
    flex-direction: column-reverse;
    align-items: center;
}

/* 반응형 */
@media (max-width: 960px) {
    
    .body-inner {
        
        padding: 0 !important;
        
    }

    
    .brand-origin__hero { overflow: hidden; width: 100%; display: flex; justify-content: center; }
    
    .brand-origin__hero img { width:auto; height: 120px; border-radius: 0}
    
    .sub-brand-origin .brand-origin__farm-hero figcaption {

    font-size: 14px;
        padding: 6px 20px;}
    
    /* 탭 메뉴 */
.sub_tabs {
    margin: 0;
    border-bottom: 1px solid #e1e1e1;
}
    
.sub_tabs.is-fixed {
  position: fixed;
    top: 120px;}
    
    
    .sub_tabs.is-fixed ul { padding: 12px 0}

.sub_tabs ul {
    column-gap: 3px;
    padding: 16px 10px;
    font-size: 14px;
    overflow-x: auto;
    white-space: nowrap;
    width: 100%;
    letter-spacing: -0.03rem;
/*    justify-content: flex-start;*/
}

.sub_tabs li a {
    padding: 5px 15px;
}

.sub_tabs li.is-active a,
.sub_tabs li a:hover {
    padding: 5px 15px;
    background: #847d70;
}
    
    .sub-brand-origin {
        padding-bottom: 60px;
    }

    .sub-brand-origin .brand-origin__story {
        grid-template-columns: 1fr;
    
    }

    .sub-brand-origin .brand-origin__farm-desc {
        grid-template-columns: 1fr;
    }

    .sub-brand-origin .brand-origin__farm-heading {
        font-size: 20px;
    }

    .sub-brand-origin .brand-origin__photos-top {
        grid-template-columns: 1fr;
    }
}


/* ===========================
   브랜드 소개 > 브랜드 철학
   (sub-brand-philo 전용)
   =========================== */

.sub-brand-philo {
    max-width: 1440px;
    margin: 0 auto;
    padding-bottom: 120px;
}

/* 상단 비주얼 */
.sub-brand-philo img {
    /*width: 100%;*/
    display: block;
    border-radius: 4px;
}


/* 상단 인트로 (브랜드 철학 제목 & 한 줄 설명) */
.sub-brand-philo .brand-philo__intro {
    text-align: center;
    padding: 40px 0;
}

.sub-brand-philo .brand-philo__intro-title {
    font-size: 42px;
    letter-spacing: 0;
    margin-bottom: 18px;
}

.sub-brand-philo .brand-philo__intro-text {
    font-size: 18px;
    line-height: 1.9;
    color: #5E5241;
    max-width: 720px;
    margin: 0 auto;
    letter-spacing: -0.03rem;
}

/* 공통 섹션(이미지 + 텍스트 2단) */
.sub-brand-philo .brand-philo__section {
    display: grid;
    /* grid-template-columns: minmax(0, 1.55fr) minmax(0, 1.3fr); */
    gap: 60px;
    align-items: center;
    margin: 0;
}

.sub-brand-philo .brand-philo__section-image img {
    width: 100%;
    display: block;
}

.sub-brand-philo .brand-philo__section-text {
    font-size: 16px;
    line-height: 1.9;
    color: #4B515B;
    letter-spacing: -0.04rem;
    text-align: center;
}

.sub-brand-philo .brand-philo__section-text2 {
 width: 600px;
 text-align: left;
 margin-left: 100px;
 color: #333;
}


/* 섹션 타이틀 & 본문 */
.sub-brand-philo .brand-philo__section-title {
    font-size: 40px;
    line-height: 1.5;
    margin-bottom: 20px;
    letter-spacing: -0.04rem;
}

.sub-brand-philo .brand-philo__section-lead {
    font-size: 16px;
    line-height: 1.9;
    color: #5E5241;
    margin-bottom: 14px;
}

.sub-brand-philo .brand-philo__section-body p + p {
    margin-top: 10px;
}

/* 이미지-텍스트 순서 반전 섹션 (하단 장인정신 영역) */
.sub-brand-philo .brand-philo__section--reverse {
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 1.55fr);
}

.sub-brand-philo .brand-philo__section--reverse .brand-philo__section-image {
    order: 1;
}
.sub-brand-philo .brand-philo__section--reverse .brand-philo__section-text {
    order: 2;
    padding: 0 40px;
}

/* 중간 가로 이미지 행 (2~3장 가로 배치) */
.sub-brand-philo .brand-philo__gallery-row {
    display: flex;
    gap: 18px;
    justify-content: center;
    margin: 60px 0 80px;
}

.sub-brand-philo .brand-philo__gallery-row img {
    display: block;
    max-width: 100%;
    height: auto;
}

/* 맨 아래 4장 썸네일 행 */
.sub-brand-philo .brand-philo__gallery-row--4 {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 40px;
}

.sub-brand-philo .brand-philo__gallery-row--4 img {
    width: 100%;
    display: block;
}

/* 반응형 */
@media (max-width: 960px) {
    .sub-brand-philo {
        padding-bottom: 80px;
    }

    .sub-brand-philo .brand-philo__section {
        grid-template-columns: 1fr;
        gap: 32px;
        margin: 0px 0 20px;
    }

    .sub-brand-philo .brand-philo__section--reverse .brand-philo__section-image,
    .sub-brand-philo .brand-philo__section--reverse .brand-philo__section-text {
        order: initial; /* 모바일에서는 자연스러운 순서 */
    }

    .sub-brand-philo .brand-philo__section-image img {}

    .sub-brand-philo .brand-philo__gallery-row {
        flex-wrap: wrap;
        margin: 40px 0 60px;
    }

    .sub-brand-philo .brand-philo__gallery-row--4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .sub-brand-philo .brand-philo__section-title {
        font-size: 24px;
    }
    .sub-brand-philo .brand-philo__intro-title {
        font-size: 32px;
    }

    .sub-brand-philo .brand-philo__section-text {font-size: 14px;}

    .sub-brand-philo .brand-philo__section-text2 {
    width: unset;
    margin-left: unset;
}
}





/* ===========================
   공통 Divider (가로 라인)
   =========================== */
.divider {
    width: 100%;
    height: 1px;
    background-color: #e5e5e5;
    margin: 100px 0;
}

/* 금색 버전 */
.divider--gold {
    background-color: #D6A84E;
}

/* 여백 작은 버전 */
.divider--sm {
    margin: 60px 0;
}

/* 여백 넓은 버전 */
.divider--lg {
    margin: 180px 0;
}

/* 여백  버전 */
.divider--none {
    margin: 0;
}

.mt0 { margin-top: 0}

.mt40 { margin-top: 40px}

.mt60 { margin-top: 60px}

.mb40 { margin-bottom: 40px}


/* ===========================
   세로 Divider (vertical)
   =========================== */
.divider-vertical {
    width: 1px;
    height: 100%;
    background-color: #e5e5e5;
}

/* 세로 라인의 높이를 고정하고 싶을 때 */



.divider-vertical--100 {
    height: 100px;
}

.divider-vertical--200 {
    height: 200px;
}

.divider-vertical--fill {
    height: 100%;
}

/* 금색 세로 라인 */
.divider-vertical--gold {
    background-color: #D6A84E;
}

/* ===========================
   Inner Divider (좌우 여백 고정)
   섹션 안에서 좌우 폭을 제한하고 싶을 때
   =========================== */

/* 기본: 좌우 40px 여백 안에서 가로 라인 */
.divider-inner {
    width: calc(100% - 80px); /* 양쪽 40px 씩 */
    margin: 100px auto;
    height: 1px;
    background-color: #e5e5e5;
}

/* 금색 버전 */
.divider-inner--gold {
    background-color: #D6A84E;
}

/* 좁은 내부 여백 (양쪽 20px) */
.divider-inner--sm {
    width: calc(100% - 40px);
}

/* 넓은 내부 여백 (양쪽 80px) */
.divider-inner--lg {
    width: calc(100% - 160px);
}

/* Inner + small spacing */
.divider-inner--space-sm {
    margin: 80px auto;
}

/* Inner + small2 spacing */
.divider-inner--space-sm0 {
    margin: 0 auto;
}

/* Inner + large spacing */
.divider-inner--space-lg {
    margin: 180px auto;
}

/* ===========================
   브랜드 소개 > 대표 인사말
   (sub-brand-greeting 전용)
   =========================== */

.sub-brand-greeting {
    max-width: 1440px;
    margin: 0 auto;
    padding-bottom: 120px;
}

/* 제목 영역 */
.sub-brand-greeting .brand-greeting__title-box {
    text-align: center;
    margin: 120px 0 100px;
}

.sub-brand-greeting .brand-greeting__title {
    font-size: 38px;
    letter-spacing: -0.02em;
    z-index: 100;
    position: relative;
}

.sub-brand-greeting .brand-greeting__title .title-kanji {
    position: relative;
    font-family: "Songti SC", "Noto Serif CJK SC", "Source Han Serif SC", serif;
    font-size: 64px;
    margin-left: 6px;
    
    
}

.sub-brand-greeting .brand-greeting__title .title-kanji::after {
    content: "";
    width: 100px;
    height: 97px;
    background: url('./images/common/gold_brush.png') no-repeat center/contain;
    position: absolute;
    right: -180px;
    top: -50px;
    z-index: -1;
}

/* 이미지 + 텍스트 2단 구성 */
.sub-brand-greeting .brand-greeting__content {
    display: grid;
    grid-template-columns: 1.4fr 1.6fr;
    gap: 80px;
    align-items: center;
    padding: 0 40px;
    margin-top: 60px;
}

.sub-brand-greeting .brand-greeting__image img {
    width: 100%;
    display: block;
    border-radius: 4px;
}

/* 텍스트 */
.sub-brand-greeting .brand-greeting__text {
    font-size: 17px;
    line-height: 1.9;
    color: #444;
    letter-spacing: -0.03em;
}

.sub-brand-greeting .brand-greeting__text p + p {
    margin-top: 14px;
}

/* 인사말 강조 */
.sub-brand-greeting .greeting-lead {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 12px;
    color: #222;
}

.sub-brand-greeting .greeting-end {
    margin-top: 20px;
    font-weight: 600;
    font-size: 18px;
}

/* 반응형 */
@media (max-width: 960px) {
    .sub-brand-greeting .brand-greeting__content {
        grid-template-columns: 1fr;
        gap: 40px;
        padding: 0 40px;
        margin: auto;
    }

    .sub-brand-greeting .brand-greeting__title {
        font-size: 28px;
    }

    .sub-brand-greeting .brand-greeting__title .title-kanji {
        font-size: 36px;
/*         font-family: "Nanum Myeongjo"*/
    }
}


/* history */
.history{padding: 0;}
.history .company_title{display:flex;justify-content:space-between;align-items:center}
.history .company_title .img_area{width:79rem;height:49.6rem; margin-right: 10rem;}
.history .company_title .tit_area{width:50%}
.history_wrap .max_inner{max-width: unset;}
.history_cont{position:relative}
.history_cont:after{display:block;clear:both;content:''}
.history_menu{float:left;width:35%;padding-top:15rem}
.history_menu li{margin-bottom:5rem}
.history_menu li a{color:#b1b1b1;font-weight:600;font-size: 36px;letter-spacing:-.05rem;transition:all ease .6s}
.history_menu li a .tit2{display:none}
.history_menu li a span{line-height:1.2}
.history_menu li a span strong{display:inline-block;color:#7cbb25;font-weight:700;font-size:4.8rem;vertical-align:baseline}
.history_menu li.on a{color:#333} 
.history_menu li.on a .tit1{display:none}
.history_menu li.on a .tit2{display:block}
.history_menu.fixed{position:fixed;top:1rem}
.history_menu.off{position:absolute;top:initial}
.history_tab{float:right;max-width:600px;width:54%}  
.history_tab>div{padding-top: 30px;margin-bottom: 30px;}
.history_tab .title{display:block;padding-bottom:2rem;margin-bottom:2.5rem;border-bottom: 2px solid #333;color:#000;font-size: 32px;font-family:'Montserrat',sans-serif}  
.history_tab .title i { float: right; color: #999; /*display: inline-block;*/ margin-right: 1rem; font-size:3rem; font-weight: 100}
.history_tab ul li{position:relative;padding-left: 120px;color:#333;font-size: 18px;line-height: 36px;}
.history_tab ul li .year{position:absolute;top:0;left:0;color: #333;font-size: 21px;font-family:'Montserrat',sans-serif}
/*.history_tab ul li .year:after{position:absolute;top:50%;right:0;width:1rem;height:1rem;border:2px solid #7cbb25;border-radius:50%;content:'';transform:translateY(-50%)} */
.history_img{margin: 30px 0;display: flex;gap: 10px;}
.history_img img{max-width:100%;}


/* ===========================
   브랜드 소개 > 연혁
   (sub-brand-history 전용)
   =========================== */

.sub-brand-history {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0px 40px 120px;
}

/* 타이틀 */
.sub-brand-history .brand-history__title-box {
  text-align: center;
  margin: 100px 0 100px;
}

.sub-brand-history .brand-history__title {
  font-size: 42px;
  letter-spacing: 0;
  margin-bottom: 18px;
}

/* 상단 인트로 (이미지 + 텍스트) */
.sub-brand-history .brand-history__intro {
  display: flex;
  gap: 100px;
  align-items: center;
}


.sub-brand-history .brand-history__intro-image img {
  /* width: 100%; */
  display: block;
  border-radius: 4px;
}

.sub-brand-history .brand-history__intro-text {
  font-size: 18px;
  line-height: 1.6;
  color: #5E5241;
  letter-spacing: -0.03em;
}

.sub-brand-history .brand-history__intro-text p + p {
  margin-top: 12px;
}


/* ===========================
   브랜드 소개 > 인증 및 실적
   (sub-brand-cert 전용)
   =========================== */

.sub-brand-cert {
    max-width: 1440px;
    margin: 0 auto;
    padding: 1px 40px 140px;
}

/* 타이틀 영역 */
.sub-brand-cert .brand-cert__intro {
    text-align: center;
    margin-bottom: 60px;
}

.sub-brand-cert .brand-cert__title {
    font-size: 34px;
    font-weight: 500;
    margin-bottom: 16px;
}

.sub-brand-cert .brand-cert__text {
    font-size: 15px;
    line-height: 1.9;
    color: #5E5241;
    letter-spacing: -0.03em;
}

/* 인증서 그리드 */
.sub-brand-cert .brand-cert__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 60px 40px;
    justify-items: center;
}

/* 개별 아이템 */
.sub-brand-cert .brand-cert__item {
    text-align: center;
}

/* 이미지 박스 */
.sub-brand-cert .brand-cert__thumb {
    width: 100%;
    max-width: 280px;
    margin: 0 auto 16px;
}

.sub-brand-cert .brand-cert__thumb img {
    width: 100%;
    display: block;
    border-radius: 4px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.12);
}

/* 캡션 */
.sub-brand-cert .brand-cert__caption {
    font-size: 14px;
    line-height: 1.2;
    color: #444;
    letter-spacing: -0.02em;
}

/* 반응형 */
@media (max-width: 1024px) {
    .sub-brand-cert {
        padding: 60px 20px 120px;
    }

    .sub-brand-cert .brand-cert__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 30px 30px;
        margin: 0 30px;
    }
}

/*
@media (max-width: 640px) {
    .sub-brand-cert .brand-cert__grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .sub-brand-cert .brand-cert__thumb {
        max-width: 240px;
    }
}
*/



/* ===========================
   서브페이지 공통 타이틀 영역
   =========================== */

.sub-detail {}

.subpage-title {
    text-align: center;
    padding: 100px 0;
    border-bottom: #e5e5e5 solid 1px;
    margin-bottom: 100px;
    position: relative; /* 기준점 유지 */
}

.subpage-title.border-bottom-none {  border-bottom: 0;
    margin-bottom: 0; }

.subpage-title.margin-bottom-none { 
    margin-bottom: 0; }


.subpage-title h2 {
    font-size: 42px;
    margin-bottom: 36px;
    position: relative;
    display: inline-block; /* stacking context 방지 */
    z-index: 1
}

.bg_pear { margin-top:20px; }

.subpage-title .bg_pear::after {
    content: "";
    width: 70px;
    height: 68px;
    background: url(../images/common/pear.png) no-repeat center / contain;
    position: absolute;
    top: -40px;
    right: -40px;
    z-index: -1;
    pointer-events: none;
}


.subpage-title p {
    font-size: 18px;
    line-height: 1.6;
    color: #5E5241;
    max-width: 100%;
    margin: 0 auto;
/*    letter-spacing: -0.03rem;*/
}

.subpage-title .img_c { margin: 60px auto 0  }

@media (max-width: 640px) {

.subpage-title {padding:40px;margin-bottom: 40px;}
    
    .subpage-title h2 {
        font-size: 28px;
        margin-bottom: 20px;
    }
    .subpage-title p {
        font-size: 16px;
    }
    
    .subpage-title p br { display: none;}
    
    .subpage-title .img_c {margin: 40px auto 0;width: 100%;}
    
    
    
.subpage-title .bg_pear::after {
    content: "";
    width: 40px;
    height: 39px;
    background: url(../images/common/pear.png) no-repeat center / contain;
    position: absolute;
    top: -20px;
    right: -20px;
    z-index: -1;
    pointer-events: none;
}


    
    
    
    
}




/* =============================
   공통 영역 - 기본 이미지 + 텍스트 좌우 
============================= */
 sub-detail {
  margin: 0 auto;
  padding: 0;
}

.sub-hero {
    display: flex;
    align-items: center;
    gap: 100px;
    margin-bottom: 100px;
}


.row-reverse { flex-direction: row-reverse; }

.sub-hero__image { }

.sub-hero__image.left300 {margin-left: -270px;}

.sub-hero__image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}

.sub-hero__text {
    flex: 1;
}

.sub-hero.row-reverse .sub-hero__text { text-align: right}

.sub-hero__text h2 {
    font-size: 40px;
    line-height: 1.5;
    margin-bottom: 20px;
    letter-spacing: -0.04rem;
}

.sub-hero__text p {
    font-size: 18px;
    line-height: 1.6;
    color: #5E5241;
    letter-spacing: -0.03em;
}

.sub-hero__text p.text-lead {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.7;
    margin-bottom: 18px;
    color: #333;
}

.sub-column {
    display: flex;
    align-items: center;
    gap: 100px;
        flex-direction: column;
    margin-bottom: 100px;
    text-align: center;
}

.sub-column__image { }

.sub-column__image.three { display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 60px 40px;
    justify-items: center;}


.sub-column .sub-hero__text { max-width: 620px }

.sub-column .sub-hero__text_full {
max-width: 620px;
    position: absolute;
    text-align: left;
    margin-top: 150px;
    margin-left: -600px;
}

.sub-column .sub-hero__text_full h2 { color: #fff;     font-size: 40px;
    line-height: 1.5;
    margin-bottom: 20px;
    letter-spacing: -0.04rem; }
.sub-column .sub-hero__text_full p { color: #fff; font-size: 18px;
    line-height: 1.6;
    letter-spacing: -0.03em; }


/* ===========================
   명과 스토리 > 울산 배 이야기
   (sub-story-ulsan-pear 전용)
   =========================== */

.sub-story-ulsan-pear {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
}

/* 공통 섹션 기본 여백 */
.sub-story-ulsan-pear .story-pear__section {
    margin-bottom: 120px;
}

/* 1. 섹션: 햇빛이 만든 달콤함 */
.sub-story-ulsan-pear .story-pear__image-wide img {
    width: 100%;
    display: block;
    border-radius: 4px;
}

.sub-story-ulsan-pear .story-pear__text-row {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 2fr);
    gap: 40px;
    align-items: flex-start;
    margin-top: 40px;
}

.sub-story-ulsan-pear .story-pear__heading {
    font-size: 40px;
    font-weight: bold;
    line-height: 1.2;
}

.sub-story-ulsan-pear .story-pear__text-row p {
    font-size: 18px;
    line-height: 1.6;
    color: #5E5241;
}

/* 2. 섹션: 산과 바람이 지켜준 깨끗한 재배 환경 */
.sub-story-ulsan-pear .story-pear__section--clean .story-pear__image-wide {
    margin-bottom: 40px;
}

.sub-story-ulsan-pear .story-pear__center-text {
    text-align: center;
    /* max-width: 720px; */
    margin: 0 auto;
}

.sub-story-ulsan-pear .story-pear__center-text h3 {
    font-size: 40px;
    line-height: 1.5;
    margin-bottom: 20px;
    letter-spacing: -0.04rem;
}

.sub-story-ulsan-pear .story-pear__center-text p {
    font-size: 18px;
    line-height: 1.9;
    color: #5E5241;
    letter-spacing: -0.03em;
}

/* 3. 섹션: 오래 지켜온 작은 농가의 정성 */
.sub-story-ulsan-pear .story-pear__two-col {
    display: grid;
    grid-template-columns: minmax(0, 540px) minmax(0, 1.7fr);
    column-gap: 100px;
    align-items: center;
    margin-bottom: 80px;
}

.sub-story-ulsan-pear .story-pear__image-left img {
    width: 100%;
    display: block;
    border-radius: 4px;
}

/* 이미지 오른쪽 텍스트 + 세로 구분선 */
.sub-story-ulsan-pear .story-pear__text-right {
    display: flex;
    align-items: stretch; 
}

.story-pear__text-right:after {
    content: "";
    position: absolute;
    border-left: 1px solid #000; /* ← 가로 → 세로 변경 */
    height: 180px; /* ← width → height 변경 */
    margin-top: 300px;
    display: block;
}

.story-pear__text-right:before {
    content: "";
    position: absolute;
    border-left: 1px solid #000; /* ← 가로 → 세로 변경 */
    height: 180px; /* ← width → height 변경 */
    margin-top: -230px;
    display: block;
}

.sub-story-ulsan-pear .story-pear__divider-vertical {
    width: 1px;
    background-color: #e5e5e5;
    height: auto;
    margin: 0 36px 0 0;
}

.sub-story-ulsan-pear .story-pear__text-block {
    flex: 1;
}

.sub-story-ulsan-pear .story-pear__text-block h3 {
    font-size: 40px;
    line-height: 1.4;
    margin-bottom: 20px;
}

.sub-story-ulsan-pear .story-pear__text-block p {
    font-size: 18px;
    line-height: 1.6;
    color: #5E5241;
    letter-spacing: -0.03em;
}

.sub-story-ulsan-pear .story-pear__text-block p + p {
    margin-top: 10px;
}

/* 마지막 마무리 카피 */
.sub-story-ulsan-pear .story-pear__closing {
    max-width: 620px;
    margin: 0 auto;
    text-align: center;
}

.sub-story-ulsan-pear .story-pear__closing p {
    font-size: 15px;
    line-height: 1.9;
    color: #5E5241;
    letter-spacing: -0.03em;
}

.sub-story-ulsan-pear .story-pear__closing p + p {
    margin-top: 14px;
}

.sub-story-ulsan-pear .story-pear__icon {
    margin-top: 32px;
}

.sub-story-ulsan-pear .story-pear__icon img {
    width: 56px;
    height: 56px;
    display: block;
    margin: 0 auto;
}

/* 반응형 */
@media (max-width: 1024px) {


.sub-hero {
    flex-direction: column;
    gap: 0;
    margin-bottom: 0px;
}

.sub-hero__text { padding:40px}
.sub-hero__text h2 { font-size:28px}
.sub-hero__text p { font-size:16px }


    .sub-hero__image img { border-radius:0}
    .sub-hero.row-reverse .sub-hero__text { text-align:left }
    .sub-story-ulsan-pear {
        padding: 0 24px 100px;
    }

    .sub-story-ulsan-pear .story-pear__text-row {
        grid-template-columns: 1fr;
        gap: 16px;
        text-align: left;
    }

    .sub-story-ulsan-pear .story-pear__two-col {
        grid-template-columns: 1fr;
    }

    .sub-story-ulsan-pear .story-pear__text-right {
        flex-direction: column;
    }

    .sub-story-ulsan-pear .story-pear__divider-vertical {
        width: 40px;
        height: 1px;
        margin: 24px 0;
        align-self: center;
    }

    .sub-story-ulsan-pear .story-pear__text-block {
        text-align: left;
    }
}



/* ===========================
   울산 배 이야기 — 섹션 2 이미지 Full-Width
   =========================== */

.sub-story-ulsan-pear .story-pear__section--clean .story-pear__image-wide {
    width: 100vw;                   /* 브라우저 너비 100% */
    max-width: 1900px;              /* 최대 1900px */
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;             /* 전체 화면 기준 중앙 이동 */
    margin-right: -50vw;
    overflow: hidden;
}

.sub-story-ulsan-pear .story-pear__section--clean .story-pear__image-wide img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}


@media (max-width: 640px) {
    .sub-story-ulsan-pear {
        padding: 0 18px 80px;
    }

    .sub-story-ulsan-pear .story-pear__section {
        margin-bottom: 90px;
    }
}

/* ===========================
   명과 스토리 > 수제 제조 과정
   (sub-story-handmade 전용)
   =========================== */

.sub-story-handmade {
    /* max-width: 1200px; */
    margin: 0 auto;
    padding: 0 40px 120px;
}

/* 공통 섹션 간 여백 */
.sub-story-handmade .handmade-section {
    margin-bottom: 120px;
}

/* 1. 원재료 소싱 섹션 --------------------------- */

/* 상단 과수원 전경 이미지 */
.sub-story-handmade .handmade-hero-image img {
    width: 100%;
    display: block;
    border-radius: 4px;
}

/* 좌측 이미지 + 우측 텍스트 레이아웃 */
.sub-story-handmade .handmade-source-row {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.6fr);
    gap: 48px;
    align-items: center;
    margin-top: 40px;
}

.sub-story-handmade .handmade-source-image img {
    width: 100%;
    display: block;
    border-radius: 0 200px;
    position: relative;
    margin-top: -250px;
    margin-left: -50px;
    border: #fff solid 5px;
}

.sub-story-handmade .handmade-source-text {
    margin-bottom: 24px;
    font-size: 17px;
    line-height: 1.9;
    color: #444;
    letter-spacing: -0.03em;
}

.sub-story-handmade .handmade-source-text h3 {
    font-size: 40px;
    margin-bottom: 24px;
    color: #222;
}

/* 2. 수제 공정 섹션 --------------------------- */

.sub-story-handmade .handmade-process-title {
    text-align: center;
    margin-bottom: 40px;
    font-size: 17px;
    line-height: 1;
    letter-spacing: -0.03em;
}

.sub-story-handmade .handmade-process-title h3 {
    font-size: 40px;
    line-height: 1.5;
    margin-bottom: 24px;
    letter-spacing: -0.04rem;
}

.sub-story-handmade .handmade-process-title p {
    
    font-size: 18px;
    line-height: 1.6;
    color: #5E5241;
    
}

/* 상단 2단 이미지 */
.sub-story-handmade .handmade-process-two-col {
    display: flex;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 40px;
    justify-content: center;
}

.sub-story-handmade .handmade-process-two-col img {
    width: 100%;
    display: block;
    border-radius: 4px;
}

.sub-story-handmade .handmade-process-two-col p {
    margin-top: 10px;
}

/* 공정 3열 이미지 갤러리 */
.sub-story-handmade .handmade-process-gallery {
    display: flex;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}

.sub-story-handmade .handmade-process-gallery-item img {
    width: 100%;
    display: block;
    border-radius: 4px;

   
}


.handmade-process-desc {
    background-color: #e9eef8;
    padding: 40px 90px;
    font-size: 18px;
    line-height: 1.6;
    margin: 40px auto;
    border-radius: 100px;
    text-align: center;
    max-width: 900px;
    color: #4B515B;
    letter-spacing: -0.05rem;
}

/* 3. 품질관리 섹션 --------------------------- */

.sub-story-handmade .handmade-quality-title {
    text-align: center;
    margin-bottom: 40px;
    font-size: 16px;
    line-height: 1.6;
    color: #444;
    max-width: 100%;
    letter-spacing: -0.03rem;
}

.sub-story-handmade .handmade-quality-title h3 {
    font-size: 40px;
    line-height: 1.5;
    margin-bottom: 20px;
    letter-spacing: -0.04rem;
}

/* 품질 3단 원형 그래픽 */
/* 품질 3단 원형 그래픽 – 텍스트 오버레이 버전 */
.sub-story-handmade .handmade-quality-steps {
    display: flex;
    justify-content: center;
    gap: 60px;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

/* 각 스텝 컨테이너 */
.sub-story-handmade .handmade-quality-step {
    position: relative;
}

/* 골드 브러시 원형 + 텍스트 */
.sub-story-handmade .handmade-quality-circle {
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: url(../images/common/gold_brush.png) no-repeat center / cover;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #ffffff;
    box-sizing: border-box;
}

/* 타이틀 */
.sub-story-handmade .handmade-quality-circle h4 {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 24px;
}

/* 내용 3줄 */
.sub-story-handmade .handmade-quality-circle p {
    font-size: 16px;
    line-height: 1.4;
    letter-spacing: -0.09rem;
}

/* 반응형 조정 */
@media (max-width: 1024px) {
    .sub-story-handmade .handmade-quality-steps {
        gap: 40px;
    }
}

@media (max-width: 640px) {
    .sub-story-handmade .handmade-quality-circle {
        width: 240px;
        height: 240px;
        padding: 0 18px;
    }

    .sub-story-handmade .handmade-quality-circle h4 {
        font-size: 21px;
        margin-bottom: 18px;
    }

    .sub-story-handmade .handmade-quality-circle p {
        font-size: 14px;
    }
}


/* 품질 안내 문단이 들어갈 경우 */
.sub-story-handmade .handmade-quality-notice {
    text-align: center;
    color: #777;
    padding-top: 30px;
}

/* 4. 마지막 쿠키 이미지 --------------------------- */

.sub-story-handmade .handmade-final-image {
    margin-top: 40px;
}

.sub-story-handmade .handmade-final-image img {
    width: 100%;
    display: block;
    border-radius: 4px;
}

/* 반응형 ---------------------------------------- */

@media (max-width: 1024px) {
    .sub-story-handmade {
        padding: 0 24px 100px;
    }

    .sub-story-handmade .handmade-source-row {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .sub-story-handmade .handmade-process-two-col {
        grid-template-columns: 1fr;
    }

    .sub-story-handmade .handmade-process-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sub-story-handmade .handmade-quality-steps {
        gap: 40px;
    }
}

@media (max-width: 640px) {
    .sub-story-handmade {
        padding: 0 18px 80px;
    }

    .sub-story-handmade .handmade-section {
        margin-bottom: 90px;
    }

    .sub-story-handmade .handmade-process-gallery {
        grid-template-columns: 1fr;
        display: flex;
        flex-direction: column;
        padding: 30px;
    }

    .sub-story-handmade .handmade-quality-step img {
        width: 160px;
    }
}

/* --- 3단 카드 전체 --- */
.guide-cards {
  display: flex;
  justify-content: center;
  gap: 40px;
  margin: 20px auto;
  max-width: 1400px;
}

/* --- 각 카드 --- */
.guide-card {
  width: 360px;
  height: 450px;
  position: relative;
  overflow: hidden;
  border-radius: 180px;
    
      /* 등장 애니메이션 초기값 */
  opacity: 0;
  transform: translateY(30px);
}



/* 스크롤로 활성화된 카드 상태 */
.guide-card.is-visible {
  animation: guideFadeUp 0.7s ease-out forwards;
}

/* 카드별 약간씩 딜레이 */
.guide-card.is-visible:nth-child(1) {
  animation-delay: 0.0s;
}
.guide-card.is-visible:nth-child(2) {
  animation-delay: 0.15s;
}
.guide-card.is-visible:nth-child(3) {
  animation-delay: 0.3s;
}

.guide-card a {
  display: block;
  position: relative;
  color: #fff;
  text-decoration: none;
}

.guide-card img {
  width: 100%;
  height: 100%;
  /* object-fit: cover; */
  transition: transform .4s ease;
}

/* --- hover 확대 효과 --- */
.guide-card:hover img {
  transform: scale(1.05);
}

/* --- 텍스트 영역 --- */
.guide-card__text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
  z-index: 10;
  width: 80%;
  line-height: 1.5;
  text-shadow: 0 3px 8px rgba(0,0,0,0.4);
}

.guide-card__text h3 {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 18px;
}

.guide-card__text p {
  font-size: 18px;
  font-weight: 400;
  height: 80px;
}

/* 페이드+슬라이드 업 키프레임 */
@keyframes guideFadeUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* --- 반응형 --- */
@media (max-width: 1024px) {
  .guide-cards {
    flex-direction: column;
    gap: 40px;
  }
  .guide-card {
    width: 320px;
    height: 400px;
    margin: auto;
  }
  .guide-card__text h3 {
    font-size: 28px;
  }
  .guide-card__text p {
    font-size: 15px;
  }
}


/* =============================
   차 페어링 상세 메인 구조
============================= */
.pairing-detail {
  margin: 0 auto;
  padding: 0;
}

/* =============================
   상단 큰 이미지 + 설명
============================= */
.pairing-hero {
  display: flex;
  align-items: flex-start;
  gap: 60px;
}

.pairing-hero__image img {
  width: 680px;
  height: auto;
  display: block;
  border-radius: 4px;
}

.pairing-hero__text {
  flex: 1;
  margin-top: 40px;
}

.pairing-hero__text h2 {
    font-size: 40px;
    line-height: 1.5;
    margin-bottom: 20px;
    letter-spacing: -0.04rem;
}

.pairing-hero__text p {
  font-size: 18px;
  line-height: 1.6;
  color: #5E5241;
  letter-spacing: -0.03em;
}

/* =============================
   3단 이미지 + 텍스트 구조
============================= */
.pairing-list {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  margin-bottom: 40px;
}

.pairing-item {
  width: 33.33%;
}

.pairing-item__image {
  margin-bottom: 20px;
}

.pairing-item__image img {
  width: 100%;
  border-radius: 4px;
  display: block;
}

.pairing-item__text h3 {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 14px;
  color: #222;
}

.pairing-item__text p {
  font-size: 16px;
  line-height: 1.6;
  color: #555;
}

/* =============================
   뒤로 가기 버튼
============================= */
.pairing-back {
  text-align: center;
}

.btn-back {
  border: 1px solid #ffffff;
  font-size: 16px;
  color: #333;
  text-decoration: none;
  transition: 0.25s;
  display: inline-flex;
  background: #ffffff;
  border-radius: 30px;
  padding: 15px 65px;
  margin-top: 12px;
  gap: 16px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  align-items: center;
}

.btn-back:hover {
  background: #D6A84E;
  border-color: #D6A84E;
    color:#fff;
}

/* =============================
   반응형 처리
============================= */
@media (max-width: 1200px) {
  .pairing-hero {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0;
  }

  .pairing-hero__image img {
    width: 100%;
    max-width: 900px;
  }

  .pairing-list {
    flex-direction: column;
  }

  .pairing-item {
    width: 100%;
    padding: 0 30px;
  }

  .pairing-item__text {
    text-align: center;
    margin-bottom: 0;
  }
}

@media (max-width: 768px) {
  .pairing-hero__text h2 {
    font-size: 22px;
  }

  .pairing-hero__text p {
    font-size: 15px;
  }

  .pairing-item__text h3 {
    font-size: 20px;
  }
}


/* =========================
   기본 컨테이너
========================= */
.media-board {
  margin: 0 auto;
  padding: 0 20px;
  /* width: 100%; */
  max-width: 1000px;
}

/* =========================
   상단 헤더 (탭 + 정렬 + 검색)
========================= */
.media-board__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}

/* 탭 */
.media-board__tabs {
  display: flex;
  gap: 60px;
     margin-left: 25px;
}





.media-tab {
  position: relative;
  border: none;
  background: none;
  padding: 6px 0;
  font-size: 16px;
  color: #5E5241;
  cursor: pointer;
}

/*
.media-tab::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 0;
  height: 2px;
  background: #222;
  transition: width 0.25s ease;
}
*/

.media-tab:before {
    display: block;
    position: absolute;
    right: -30px;
    top: 8px;
    width: 1px;
    height: 16px;
    background-color: #d9d9d9;
    content: ""
}

.media-tab:last-child:before {
    display: none
}

.media-tab.is-active,
.media-tab:hover {
  color: #d6a84e;
  font-weight: 600;
}


.media-tab.is-active::after,
.media-tab:hover::after {
  width: 100%;
}

/* 정렬 + 검색 묶음 */
.media-board__controls {
  display: flex;
  align-items: center;
  gap: 16px;
}

/* 정렬 Select */
.media-sort {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  color: #5E5241;
}

.media-sort__label {
  white-space: nowrap;
}

.media-sort__select-wrap {
  position: relative;
}

.media-sort__select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 6px 28px 6px 12px;
  border-radius: 20px;
  border: 0;
  font-size: 14px;
  background: transparent;
  cursor: pointer;
  position: relative;
}

/* 셀렉트 오른쪽 화살표 */
.media-sort__select-wrap::after {
    display: block;
    position: absolute;
    top: 45%;
    width: 0.6rem;
    height: 0.6rem;
    right: 0rem;
    border: 1px solid #b2b2b2;
    border-top: 0;
    border-left: 0;
    content: "";
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(45deg);
}

/* 검색 */
.media-search {
  margin-left: 8px;
}

.media-search__field {
  position: relative;
  width: 220px;
}

.media-search__field input {
  width: 100%;
  padding: 7px 34px 7px 12px;
  border-radius: 20px;
  border: 1px solid #e6e6e6;
  font-size: 14px;
  outline: none;
}

.media-search__field input:focus {
  border-color: #222;
}

.media-search__btn {
  position: absolute;
  right: 21px;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  background: none;
  cursor: pointer;
  font-size: 14px;
}

.media-search__btn::after {
  position:absolute;
  top:50%;
  left:50%;
  width: 1.4rem;
  height: 1.4rem;
  background:url(../images/icon/search.svg) center no-repeat;
  background-size:100% auto;
  content:'';
  transform:translate(-50%, -50%);
  filter: invert(20%) brightness(90%) sepia(10%) saturate(200%);
}


/* =========================
   카드 리스트 (3단)
========================= */
.media-board__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 50px 40px;
}

/* 카드 기본 */
.media-card a {
  text-decoration: none;
  color: inherit;
  display: block;
}

.media-card__thumb {
  position: relative;
  overflow: hidden;
  border-radius: 6px;
}

.media-card__thumb img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform .4s ease;
}

/* 썸네일 호버 확대 */
.media-card:hover .media-card__thumb img {
  transform: scale(1.05);
}

/* 런타임 표시 */
.media-card__runtime {
  position: absolute;
  bottom: 10px;
  right: 10px;
  background: rgba(0,0,0,0.65);
  color: #fff;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  font-family: Montserrat !important;
  letter-spacing: 0.1rem;
}


/* 메타 정보 */
.media-card__meta {
  margin-top: 14px;
}

.media-card__category {
  font-size: 14px;
  font-weight: 600;
  background: #fff;
  color: #333;
  padding: 6px 20px;
  border: #D7D7D7 solid 1px;
  border-radius: 6px;
  display: inline-block;
  margin-bottom: 8px;
}

.media-card__title {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 10px;
  color: #111;
  line-height: 1.4;
}

.media-card__date {
  font-size: 16px;
  color: #5E5241;
}

/* =========================
   페이지네이션
========================= */
.media-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  margin-top: 48px;
}

.media-page-btn {
  min-width: 32px;
  height: 32px;
  padding: 0 8px;
  border-radius: 50%;
  border: 1px solid transparent;
  background: transparent;
  font-size: 18px;
  cursor: pointer;
  color: #5E5241;
  transition: 0.2s;
      font-family: Montserrat !important;
}

.media-page-btn--nav {
  border-radius: 16px;
}

.media-page-btn:hover:not(:disabled) {
  border-color: #D6A84E;
  background: #f7f7f7;
  color: #111;
}

.media-page-btn.is-active {
  background: #D6A84E;
  color: #fff;
  border-color: #D6A84E;
}

.media-page-btn:disabled {
  opacity: 0.3;
  cursor: default;
}

/* =========================
   반응형
========================= */
@media (max-width: 1200px) {
  .media-board__header {
    flex-direction: column;
    align-items: flex-start;
  }

  .media-board__controls {
    align-self: stretch;
    justify-content: space-between;
    width: 100%;
  }

  .media-search__field {
    width: 100%;
    max-width: 260px;
  }

  .media-board__list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .media-board__header {
    align-items: stretch;
  }

  .media-board__tabs {
    flex-wrap: wrap;
    gap: 12px 30px;
    display: flex;
    justify-content: center;
    margin-left: 0;
  }
    
        .media-tab:before {
    display: block;
    position: absolute;
    right: -15px;
    top: 9px;
    width: 1px;
    height: 12px;
    background-color: #c2b6b6;
    content: ""
}

  .media-board__controls {
    /* flex-direction: column; */
    /* align-items: stretch; */
    gap: 10px;
    padding: 0;
  }

  .media-search__field {
    width: 100%;
  }

  .media-board__list {
    grid-template-columns: 1fr;
    padding: 0 ;
  }


    .media-card__category {
    padding: 3px 10px;
}

    .media-card__date {
    font-size: 14px;
}

  .media-pagination {
    gap: 4px;
  }
}



/* ===============================
   소월당 제품 페이지
=============================== */
.product-page {

  margin: 3px auto;
  padding: 0;
}

/* 공통 블록 */
.product-block {
  margin-bottom: 120px;
}

.product-block__image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 4px;
  margin-bottom: 40px;
}

/* 콘텐츠 영역 */
.product-block__content {
  display: flex;
  align-items: flex-start;
  gap: 60px;
}

/* 타이틀 */
.product-block__title {
  font-size: 40px;
  font-weight: 700;
  width: 300px;
  flex-shrink: 0;
}

/* 리스트 */
.product-block__list {
  padding: 0;
  margin: 0;
  font-size: 18px;
  line-height: 2.4;
  color: #333;
  width: 280px;
}

/* 세로 구분선 */
.product-block__divider {
  width: 1px;
  background: #333;
  height: 160px;
  margin-top: 4px;
}

/* 설명 */
.product-block__desc {
  font-size: 16px;
  line-height: 1.7;
  color: #555;
  max-width: 620px;
}

/* 버튼 */
.product-block__buttons {
  margin-top: 40px;
  display: flex;
  gap: 12px;
}

.btn-outline {width: 50%;
  padding: 5px 0;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 16px;
  color: #333;
  text-decoration: none;
  display: flex;
  align-items: center;
        justify-content: center;
}

.btn-outline:hover {
  background: #f5f5f5;
}

.btn-solid {width: 50%;
  padding: 5px 0;
  border-radius: 6px;
  font-size: 14px;
  color: #fff;
  background: #222;
  text-decoration: none;
  display: flex;
  align-items: center;
    justify-content: center;
}
}

.btn-solid:hover {
  background: #000;
}

/* ===============================
   반응형
=============================== */
@media (max-width: 1024px) {

.product-block {
    margin-bottom: 60px;
}
    
  .product-block__content {
    flex-direction: column;
    gap: 10px;
    padding: 230px 40px 40px;
  }

  .product-block__divider {
    display: none;
  }

  .product-block__title,
  .product-block__list {
    width: 100%;
    font-size: 28px;
  }
    
.product-block__desc {
    font-size: 14px;
  line-height: 1.4 !important;
    margin-top: 10px;
}

    .product-block__desc .text-lead
    
    { font-size: 16px !important;}
    

.product-block__list li {
    font-size: 16px;
    margin-left: 10px;
    line-height: 1.8;
}
    
    .product-block__list li::before {
    content: "• ";
    color: #bcb3a5;
}

    .product-block__buttons { 
    margin-top:30px;
    }

    .btn-outline {
    font-size: 14px;
}
    
}


/* =========================
   시그니처 라인 3단 카드
   (공통 CSS와 충돌 방지: .sig3 네임스페이스)
========================= */
.sig3{
  padding: 80px 0 110px;
}

.sig3__inner{
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 90px;
  row-gap: 56px;
  align-items: start;
}

.sig3__card{
  text-align: center;
}

.sig3__thumb{
  width: 400px;
  height: 400px;
  margin: 0 auto 40px;
  border-radius: 999px;
  overflow: hidden;
  background: #f3f3f3;
}

.sig3__thumb img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.sig3__title{
  font-size: 32px;
  font-weight: 700;
  letter-spacing: -0.02em;
  margin: 0 0 12px;
  color: #222;
}

.sig3__desc{
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: -0.01em;
  color: #5E5241;
  margin: 30px auto;
  max-width: 400px;
  word-break: keep-all;
}

.sig3__btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: auto;
  padding: 5px 40px;
  border-radius: 4px;
  background: #2a2a2a;
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  letter-spacing: -0.01em;
  transition: background .18s ease, transform .18s ease, opacity .18s ease;
}

.sig3__btn:hover{
  background: #111;
  transform: translateY(-1px);
}

/* responsive */
@media (max-width: 1024px){
  .sig3__inner{column-gap: 48px;}
}

@media (max-width: 860px){
  .sig3__inner{
    grid-template-columns: 1fr;
    row-gap: 44px;
  }
  .sig3__thumb{
    width: 220px;
    height: 220px;
  }
}



/* ===============================
   Store Info (Offline / Online)
=============================== */
.store-info {
  margin: 0 auto;
  padding: 80px 0 0;
  font-family: inherit;
}

.store-info__section {
  padding-bottom: 80px;
  border-bottom: 1px solid #e6e6e6;
  margin-bottom: 80px;
    display: flex;
    gap: 60px;
    flex-direction: column;
}

.store-info__section:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.store-info__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 60px;
}

.store-info__header h2 {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.store-info__tabs {
  font-size: 16px;
  color: #999;
  display: flex;
  gap: 15px;
  align-items: center;
}

.store-info__tabs span {color: #c1bdad;font-weight: 100;margin: 0;font-size: 14px;}

.store-info__tabs a {
  color: #5E5241;
  text-decoration: none;
  margin: 0;
  text-align: center;
}

.store-info__tabs a.is-active {
  color: #222;
  font-weight: 600;
/*  margin: auto;*/
}

.store-info__content {
  display: grid;
  grid-template-columns: 5fr minmax(720px, 5fr);
  gap: 60px;
  align-items: start;
  justify-items: start;
}

.store-info__image{}

.store-info__image img {
  width: auto;
  max-width: 320px;
  display: block;
  border-radius: 4px;
}

.store-info__caption {
  text-align: center;
  font-size: 16px;
  color: #5E5241;
  margin-top: 20px;
}

.store-info__text h3 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 24px;
  margin-top: 24px;
  display: flex;
  align-items: center;
}

.store-info__text h3 img {height: 32px;margin-right: 10px;}

.store-info__text p {
  font-size: 14px;
  line-height: 1.6;
  color: #555;
  margin-bottom: 10px;
}

.store-info__text p.lead {
  font-size: 16px;
  color: #333;
  margin-bottom: 20px;
  font-weight: 600;
}

.store-info__btns {
  display: flex;
  gap: 12px;
  margin-bottom: 28px;
}

.btn {
  padding: 10px 18px;
  font-size: 13px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 600;
  /* display: flex; */
  /* align-items: center; */
}


.btn.small {
    max-width: 120px;
    height: 32px;
    font-size: 14px;
}

.btn.middle {
    height: 40px;
    font-size: 16px;
}

.btn--naver {
  background: #2db400;
  color: #fff;
}

.btn--google {
  border: 1px solid #ddd;
  color: #333;
}

.store-info__list {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 13px;
  color: #444;
}

.store-info__list li {
  margin-bottom: 10px;
  line-height: 1.6;
}

.store-info__badge {
  display: flex;
  margin-left: 8px;
  font-size: 14px;
  background: #5E5241;
  color: #fff;
  font-weight: 400;
  font-family: Montserrat;
  align-items: center;
  border-radius: 6px;
}

.store-info__badge a { padding: 3px 16px; border-radius: 6px;}
.store-info__badge a:hover { background: #000; }

.btn.white_md {
    min-width: 100px;
    width: auto;
    padding: 0 10px;
    border: 1px solid #dcdcdc;
    background-color: #fff;
    color: #3f3f3f
}

/* Responsive */
@media (max-width: 900px) {
    
    .store-info {padding: 80px 0 0;}
    
.store-info__section {
    padding: 0 40px 40px 40px;
}

.store-info__tabs {font-size: 13px;gap: 10px;}
    
  .store-info__content {
    grid-template-columns: 1fr;
    gap: 0px;
      justify-items: center;
  }

  .store-info__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 30px;
  }
    
.store-info__image img {
    max-width: 100%; }
    
    
.store-info__text p {font-size: 13px;/* margin-bottom:20px; */}
.store-info__text p.lead {}
.store-info__text p.lead br { display:none }

    .store-info__text h3 {
  font-size: 22px;
  flex-direction: column;
  gap: 10px;
}

.store-info__badge {
    margin: auto;
    font-size: 13px;
}



    
}





/******/

   /* contact */

    .contact_wrap {
        padding-bottom: 0;
    }

    .contact_map {
        height: 480px
    }

    .contact_map iframe {
        width: 100%;
        height: 100%
    }

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

    .contact_info .address_area {
        flex: 1;
        display: flex;
        align-items: center;
        overflow: hidden
    }

    .contact_info .tit {
        display: inline-block;
        padding: 17px;
        margin-right: 16px;
        border: 1px solid #ccc;
        border-radius: 5px;
        color: #4e4e4e;
        font-weight: 700;
        font-size: 14px;
        letter-spacing: -.025em;
        vertical-align: top
    }

    .contact_info .address {
        flex: 1;
        overflow: hidden
    }

    .contact_info .address address {
        color: #4c4c4c;
        font-weight: 500;
        font-size: 16px;
        line-height: 1.5;
        letter-spacing: -.025em
    }

    .contact_info .address .email,
    .contact_info .address .tel,
    .contact_info .address .fax {
        display: inline-block;
        position: relative;
        color: #4c4c4c;
        font-weight: 300;
        font-size: 16px;
        line-height: 1.5;
        vertical-align: top
    }

    .contact_info .address .tel,
    .contact_info .address .fax {
        padding-left: 18px;
        margin-left: 14px
    }

    .contact_info .address .tel:before,
    .contact_info .address .fax:before {
        position: absolute;
        top: 50%;
        left: 0;
        width: 1px;
        height: 12px;
        background-color: #aaa;
        content: '';
        transform: translateY(-50%)
    }

    .btn_map_area {
        display: flex;
        justify-content: flex-start;
        width: auto;
        align-items: center;
        margin: 40px 0;
    }

    .btn_map_area .btn + .btn {
        margin-left: 24px
    }

    .btn.naver,
    .btn.google {
        max-width: 200px;
        padding: 5px 30px;
        display: flex;
        align-items: center;
    }

    .btn.naver {
        border: 1px solid #00c73c;
        background-color: #00c73c;
        color: #fff;
    }

    .btn.google {
        border: 1px solid #ccc;
        background-color: #fff;
        color: #1a1a1a
    }

    .btn.naver:before,
    .btn.google:before {
        display: inline-block;
        width: 24px;
        height: 24px;
        margin: 0 7px 0 0;
        background-position: 50% 50%;
        background-repeat: no-repeat;
        background-size: cover;
        vertical-align: top;
        content: ''
    }

    .btn.naver:before {
        background-image: url(../images/icon/ico_naver.png)
    }

    .btn.google:before {
        background-image: url(../images/icon/ico_google.png)
    }

    .contact_notice {
        margin-top: 70px;
        padding-top: 70px;
        border-top: 1px solid #c9c9c9
    }

    .contact_notice .desc {
        color: #2c2c2c;
        font-weight: 300;
        font-size: 21px;
        line-height: 1.5;
        letter-spacing: -.025em;
        text-align: center
    }

    .contact_notice .btn_area {
        margin-top: 60px
    }

    @media (hover:hover) and (pointer:fine) {
        .btn.naver:hover {
            background-color: #17b75e
        }

        .btn.google:hover {
            border-color: #aaa
        }
    }

    @media (max-width:1200px) {
        .contact_wrap {
            padding-bottom: 50px
        }

        .contact_info {
            display: block;
            margin-top: 30px
        }

        .contact_info .address_area {
            display: block;
            text-align: center
        }

        .contact_info .tit {
            display: none
        }

        .contact_info .address {
            flex: 1;
            overflow: hidden
        }

        .contact_info .address address {
            margin-bottom: 10px;
            font-size: 14px
        }

        .contact_info .address .email,
        .contact_info .address .tel,
        .contact_info .address .fax {
            display: block;
            font-size: 14px
        }

        .contact_info .address .tel,
        .contact_info .address .fax {
            padding-left: 0;
            margin: 5px 0 0
        }

        .contact_info .address .tel:before,
        .contact_info .address .fax:before {
            display: none
        }

        .btn_map_area {
            justify-content: center;
            width: 100%;
            margin-top: 0;
            column-gap: 10px;
        }

        .btn_map_area .btn + .btn {
            margin-left: unset;
        }

        .btn.naver,
        .btn.google {
            max-width: 180px;
            /* min-width: auto !important; */
            /* font-size: 13px; */
            /* height: 3.6rem; */
            width: 50%;
            padding: 6px 0;
            display: flex;
            justify-content: center;
        }

        .btn.naver:before,
        .btn.google:before {
            width: 18px;
            height: 18px;
            margin: 0 6px 0 0;
        }

        .contact_notice {
            margin-top: 35px;
            padding-top: 35px
        }

        .contact_notice .desc {
            font-size: 14px;
            text-align: center
        }

        .contact_notice .btn_area {
            margin-top: 30px
        }
    }

    @media (max-width:1023px) {
        .contact_map {
            height: 240px
        }
    }

    .contact_info {
        display: flex;
        justify-content: space-between;
        gap: 60px;
        align-items: flex-start;
        padding: 40px 0;
        color: #4b5563;
    }

    .contact_rows {
        font-family: system-ui, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif; flex: 1 1 auto;
    }

    .contact_row {
        display: flex;
        gap: 20px;
        align-items: flex-start;
        margin-bottom: 20px;
    }

    .contact_label {
        display: flex;
        align-items: center;
        gap: 10px;
        min-width: 160px;
    }

    .contact_label h3 {
        font-size: 16px;
        font-weight: 500;
        color: #5E5241;
        margin: 0;
    }

    .contact_icon {
        width: 20px;
        height: 20px;
        display: inline-block;
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        opacity: 0.8;
    }



    .icon-way {
        background-image: url("../images/icon/icon_way.png");
    }

    .icon-subway {
        background-image: url("../images/icon/icon_subway.png");
    }

    .icon-contact {
        background-image: url("../images/icon/icon_contact.png");
    }

    .contact_content {
        font-size: 14px;
        line-height: 1.4;
        text-align: left;
        /* width: 100%; */
        font-family: 'Montserrat',sans-serif;
    }

.contact_content .tel {
        /* display: grid; */
        /* grid-template-columns: 2fr 8fr; */
        margin-bottom: 0; font-family: 'Montserrat',sans-serif;
        }

.contact_content .tel span {display: inline-block;width: 30px;}

    /* ì£¼ì†Œ */

 .store-info__text p.addr_main {
        margin: 0;
        color: #374151;
    }


.store-info__text p.addr_main a:hover { text-decoration: underline; color: #f97316  }

 .store-info__text p.addr_sub {
        margin: 0;
        color: #9ca3af;
        font-size: 12px;
    }

    /* ì§€í•˜ì²  ì•ˆë‚´ */

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

    .line_badge {
        display: flex;
        padding: 0px 16px;
        border-radius: 6px;
        background: #f97316;
        color: #fff;
        font-size: 14px;
        font-weight: 600;
        align-items: center;
        min-width: 100px;
    }

    .subway_text p {
        margin: 0;
        color: #4b5563;
    }

    /* ì—°ë½ì²˜ */

    .contact_content p strong {
        color: #111827;
    }

    .btn_map_area .btn.middle {
        min-width: 180px;
    }



 @media (max-width:640px) {

 .contact_row {
        display: flex;
        gap: 10px;
        align-items: flex-start;
        margin-bottom: 30px;
        flex-direction: column;
    }


     .line_badge {font-size:12px;padding: 0px 10px;min-width: 80px;}

 }




/* 문의하기 */

.write_contact {
    max-width: 720px;
    margin: 0 auto;
    position: relative;
}

.write_contact h2 {font-size: 28px;font-weight: 700;letter-spacing: -0.02em;}

.write_contact h4,.write_contact label {
    padding-top: 3rem;
    padding-bottom: 1.2rem;
    font-weight: 400;
    text-align: left;
    font-size: 1.4rem
}

.write_contact .write_area {
    position: relative
}

.write_contact .write_area .btn+.btn,.write_contact .write_area .input_rdo_box+.input_rdo_box {
    margin-left: .5rem
}

.write_contact .write_area .btn {
    overflow: revert;
    margin-bottom: .3rem
}

.write_contact .write_area .btn i,.write_contact .write_area .input_rdo_box i {
    font-size: 1rem;
    position: relative;
    z-index: 10000000;
    margin-top: -.5rem;
    color: #5E5241;
    display: block
}

.write_contact label {
    display: block
}

.write_contact label i {
    color: #999;
    font-size: 13px
}

.write_contact .write_area .input_rdo_box i {
    margin-top: .5rem;
    text-align: center
}

.write_contact textarea {
    height: 200px;
    padding: 10px
}

.inquiry_store { padding: 0 40px }

.inquiry textarea {
    width: 100%;
    min-height: 280px;
    padding: 15px;
    box-sizing: border-box;
    font-size: 14px;
    resize: none;
    overflow: hidden
}

.inquiry .counter {
    text-align: right;
    font-size: 12px;
    color: #00f;
    position: absolute;
    right: 1.5rem;
    margin-top: -2.5rem
}

.inquiry .counter span {
    color: #00f
}

.inquiry .counter span.total {
    color: gray
}

.inquiry .upload-box {
    margin-top: 10px;
    text-align: center;
    color: gray;
    cursor: pointer;
    transition: background-color .3s,border-color .3s;
    border-radius: 5rem;
    border: 1px dashed rgba(0,0,0,.2);
    background-color: rgba(0,0,0,.02);
    min-height: 70px
}

.inquiry .upload-box:hover {
    border-color: #4198e9;
    background-color: #eaf5ff
}

.upload-box.dragover {
    border-color: #00f
}

.upload-box.uploaded {
    background-color: #e4f7ff;
    color: #2b74ce;
    font-weight: 700;
    font-size: 14px;
    padding: 1.5rem
}

.inquiry em {
    font-size: 12px;
    line-height: 1.4rem;
    margin-top: 2rem;
    margin-left: 2rem;
    margin-bottom: 1rem
}

.inquiry em.tip {
    color: #999;
    text-align: left
}

.inquiry em.tip span {
    text-decoration: underline!important
}

.inquiry em.error {
    color: red
}



.comment_write {
    margin-top: 35px
}

.comment_wrap .tit {
    display: block;
    position: relative;
    margin-bottom: 10px;
    margin-top: 50px;
    font-size: 14px;
    line-height: 1.3
}

.comment_write .write_box {
    position: relative;
    padding-bottom: 66px
}

.comment_write .tf_box {
    height: 105px;
    padding: 15px 80px 15px 15px;
    border: 1px solid #d2d2d2
}

.comment_write .tf_box textarea {
    height: 100%;
    padding: 0
}

.comment_write .write_count {
    position: absolute;
    top: 15px;
    right: 18px;
    color: #999;
    font-size: 15px;
    line-height: 1.3
}

.comment_write .btn_reg {
    position: absolute;
    right: 0;
    bottom: 20px
}

.comment_write .btn_reg2 {
    right: 0;
    top: 10px
}

.comment_write .upload_file {
    position: absolute;
    bottom: 24px;
    left: 0;
    width: 300px
}

.comment_list {
    padding: 0;
    border-top: 1px solid #ccc;
    margin: 3rem 0 0
}

.comment_list .tit {
    display: block;
    position: relative;
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 1.3
}

.comment_list li {
    padding: 30px;
    border-bottom: 1px solid #e5e5e5
}

.comment_list li:last-child {
    border-color: #ccc
}

.comment_list .name {
    display: block;
    position: relative;
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 20px
}

.comment_list .name:before {
    position: absolute;
    top: 0;
    left: -30px;
    width: 20px;
    height: 20px;
    background: url(../images/icon/ico_reply.png)0 0 no-repeat;
    content: ""
}

.comment_list .txt {
    color: gray;
    font-size: 15px;
    line-height: 1.6
}

.comment_list .txt a {
    color: #4975bd;
    text-decoration: underline
}

.comment_list .file_box {
    margin-top: 15px
}

.comment_list .file {
    display: inline-block;
    font-weight: 700;
    font-size: 14px;
    line-height: 30px;
    vertical-align: middle
}

.comment_list .file img,.news_view .file_box .file img {
    position: relative;
    top: -2px;
    margin-right: 10px;
    vertical-align: middle;
    height: 20px;
}

.comment_list .btn_dnld {
    margin-left: 10px
}

.comment_list .info {
    margin-top: 10px
}

.comment_list .date,.tool a {
    font-size: 13px;
    line-height: 20px
}

.comment_list .date,.tool {
    display: inline-block;
    vertical-align: top
}

.comment_list .date {
    color: gray
}






.app input[type=date],.app input[type=email],.app input[type=number],.app input[type=password],.app input[type=search],.app input[type=tel],.app input[type=text],.app input[type=url],.app select,.app textarea {
    width: 100%;
    height: 34px;
    padding: 0 10px;
    border: 1px solid rgba(0,0,0,.2);
    background-color: rgba(0,0,0,.02);
    font-size: 14px;
    line-height: normal;
    vertical-align: top;
    border-radius: 5px;
    background-color: transparent
}

.fld_form label {
    display: block;
    padding-top: 2rem;
    padding-bottom: .8rem;
    font-weight: 400;
    text-align: left;
    font-size:14px;
}

.fld_form label i {
    color: #999;
    font-size: 11px;
}

.fld_form .write_area .input_rdo_box i {
    font-size: 1rem;
    position: relative;
    z-index: 10000000;
    margin-top: .5rem;
    color: #5E5241;
    display: block;
    text-align: center
}

.fld_form input[type=date],.fld_form input[type=email],.fld_form input[type=number],.fld_form input[type=password],.fld_form input[type=search],.fld_form input[type=tel],.fld_form input[type=text],.fld_form input[type=url],.fld_form select,.fld_form textarea {
    width: 100%;
    height: 40px;
    padding: 0 10px;
    border: 1px solid #d2d2d2;
    background-color: transparent;
    font-size: 16px;
    line-height: normal;
    vertical-align: top
}

.fld_form.join input[type=date],.fld_form.join input[type=email],.fld_form.join input[type=number],.fld_form.join input[type=password],.fld_form.join input[type=search],.fld_form.join input[type=tel],.fld_form.join input[type=text],.fld_form.join input[type=url],.fld_form.join select,.fld_form.join textarea {
    border: 0 solid #d2d2d2;
    position: relative;
    padding-left: 36px
}

.fld_form.join input#email {
    background: url(../images/icon/ico_email.png)no-repeat 6px center;
    background-size: 20px 20px
}

.fld_form.join input#code {
    background: url(../images/icon/ico_code.png)no-repeat 6px center;
    background-size: 20px 20px;
    text-align: left
}

.fld_form.join input#password {
    background: url(../images/icon/ico_password.png)no-repeat 6px center;
    background-size: 20px 20px
}

.fld_form.join input#referral {
    background: url(../images/icon/ico_referral.png)no-repeat 6px center;
    background-size: 20px 20px
}

.fld_form.join input#email:focus {
    background-image: url(../images/icon/ico_email_on.png)
}

.fld_form.join input#code:focus {
    background-image: url(../images/icon/ico_code_on.png)
}

.fld_form.join input#password:focus {
    background-image: url(../images/icon/ico_password_on.png)
}

.fld_form.join input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #fff inset!important;
    box-shadow: 0 0 0 1000px #fff inset!important
}

.fld_form.join .row {
    transition: box-shadow .2s ease;
    border: 0;
    border-bottom: 0 solid #d2d2d2;
    border-radius: 0;
    padding: 5px
}

.fld_form.join .row:has(#email:focus) {
    box-shadow: 0 0 0 1px #007aff;
    border-radius: 5px 5px 0 0
}

.fld_form.join .row:has(#code:focus),.fld_form.join .row:has(#password:focus) {
    box-shadow: 0 0 0 1px #007aff;
    border-radius: 0 0 5px 5px
}

.fld_form.join .row:nth-of-type(odd):has(#password:focus) {
    border-radius: 5px
}

.fld_form .agree-all:has(.checkbox-label input[type=checkbox]#agreeAll:checked) {
    border-color: #007aff
}

.fld_form .agree-all:has(.checkbox-label input[type=checkbox]#agreeAll:checked) .checkbox-label {
    color: #007aff
}

.fld_form .agree-all .checkbox-label input[type=checkbox] {
    accent-color: #007aff
}

.fld_form .agree-all .checkbox-label a {
    color: currentColor
}

.fld_form .agree-all .checkbox-label svg path {
    fill: currentColor
}

.fld_form .checkbox-label:has(input[type=checkbox].agree-item:checked) {
    color: #007aff
}

.btn.btn-upload {
    width: 130px;
    height: 32px;
    border-radius: 5px;
    font-size: 14px;
    background-color: #fafafa;
    min-width: 100px;
    padding: 0 10px;
    border: 1px solid #dcdcdc;
    color: #3f3f3f;
}


.btn.white_md.on,.btn.white_md:hover {
    background-color: #fff;
    color: #007aff;
    border: 1px solid #007aff
}


.inquiry .txt_info {
    color: #5E5241;
    font-size: 14px;
    display: inline-block;
    margin-top: 1rem;
}
address,em,i {
    font-style: normal
}

a {
    color: inherit;
    text-decoration: none
}

/*
button,input,select,textarea {
    outline: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    vertical-align: middle;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
*/
select {
    outline: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    vertical-align: middle;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


select {
    background-size: 25px 8px;
    height: 4rem;
    padding: 0 1rem;
    padding-right: 3.5rem;
    background-image: url(/images/icon/arr_select.png);
    background-position: 100% 50%;
    background-repeat: no-repeat;
    white-space: nowrap
}

select,textarea {
    border: 1px solid #ccc;
    background-color: #e8f0ff
}

button,input,select,textarea {
    outline: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    vertical-align: middle;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

button {
    background-color: transparent;
    line-height: normal;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    border: 0;
}

button::-moz-focus-inner,input::-moz-focus-inner {
    padding: 0;
    border: 0
}


.consent {
    display: flow-root;
    text-align: left;
    font-size: 12px;
    line-height: 1.4em;
    padding: 20px 0;
    letter-spacing: -.03rem;
    border-bottom: #ccc solid 1px
}

.consent input {
    margin: 0 5px 0 0;
    padding: 0;
    vertical-align: top;
    border: #5E5241 solid 1px;
    width: 14px;
    height: 14px;
}

input[type=checkbox] {
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
    appearance: checkbox;
}


.consent label,.consent span {
    display: inline-block;
    text-align: left
}

.consent label {
    padding-bottom: 10px
}

.consent span {
    padding: 0 0 0 5px
}


.consent .cont_policy1 {
    /* width: 100%; */
    float: left;
    padding-top: 10px;
    color: #5E5241
}

.consent .cont_policy2 {
    float: right;
    /* margin-top: -5px; */
}

.consent .cont_policy2 a {
    margin-left: 6px;
    float: right;
    border: 1px solid #bfbfbf;
    padding: 5px 15px;
    border-radius: 15px;
    display: inline-block;
    letter-spacing: -1px
}

.consent .cont_agree {
    display: inline-block;
    padding: 0;
    clear: both;
    width: 100%;
}

.consent .cont_agree .agreelabel {
    padding-top: 0!important;
    display: inline-block;
    font-size: 14px
}




.file_box {
    display: flex;
    justify-content: space-between;
    background-color: #f4f4f4;
    padding: 10px;
    align-items: center;
    border-radius: 3px;
    margin-bottom: 3px
}

.file {
    overflow: hidden;
    max-width: 80%;
    padding: 0;
    font-weight: 400;
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-left: 1rem
}

.file img {
    margin-right: 10px;
}
.btn_del,.btn_search {
    display: inline-block;
    position: relative;
    height: 20px;
    vertical-align: top
}


.btn_del {
    padding-left: 16px;
    color: #db0000;
    font-size: 13px;
    line-height: 20px
}

.btn_del:after,.btn_del:before {
    position: absolute;
    top: 50%;
    right: 6px;
    width: 16px;
    height: 1px;
    background-color: #999;
    content: "";
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(-45deg)
}

.btn_del:after {
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg)
}

.blind,legend {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    font-size: 0;
    line-height: 0
}

.inquiry textarea {
    width: 100%;
    min-height: 280px;
    padding: 15px;
    box-sizing: border-box;
    font-size: 14px;
    resize: none;
    overflow: hidden
}


.inquiry_store {  }

.inquire {display: flex;position: relative;flex-direction: row;gap: 10px;justify-content: center; margin-top: 40px}



.inquire-info__header {
  display: flex;
  justify-content: center;
  align-items: center;
  /* margin-bottom: 60px; */
  flex-direction: column;
  gap: 40px;
}

.inquire-info__header h2 {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: -0.02em;
}



.inquire button {border-radius: 0;max-width: 240px;width: 50%;height: 42px;display: flex;background-color: #555555;align-items: center;justify-content: center;color: #fff;font-size: 16px;padding: 0;margin: 0;border-radius: 6px;}
.inquire button:hover { background: #000000; color#fff; }


@media all and (max-width: 480px) {

    .inquire button {border-radius: 18px;height: 36px;font-size: 14px;}
   
}



.inquiry.inquire button img {height:24px;margin-right: 10px;filter: brightness(0) invert(1); /* 흰색으로 변경 */}

.inquiry .inquire button:last-child {color: #000000;background-color: white;box-shadow: inset 0 0 0 1px #cccccc;}
.inquiry .inquire button:last-child img {filter: grayscale(1) brightness(0.7);}
.inquiry .inquire button:last-child:hover { background-color: white;box-shadow: inset 0 0 0 1px #8a8a8a; }





.tab_nav {margin: 5rem auto;text-align: center;text-transform: uppercase;width: 1200px;max-width: 100%;}
.tab_nav a {display: inline-block;margin: 0 5px;background-color: #f1f1f1;border:none;/*border:#cccccc solid 1px;*/color:#050f33;font-size: 14px;padding: 12px 20px;border-right: 0;border-radius: 2rem;transition: all 0.3s;}
.tab_nav a:first-child {}
/*.tab6_nav a:last-child {border:#cccccc solid 1px;  }*/
.tab_nav a:hover, 
.tab_nav a.select {background-color: #17afb5;color: #fff;transition: all 0.3s;text-decoration:none;/* border: #17afb5 solid 1px; */}
.tab_nav p.click { position:relative; display: block; padding: 0; margin: 0; width: 178px; height: 76px; line-height: 76px;  background:#fff; border-radius: 6px; text-align:center; border-radius: 10px; }
.tab_nav p.click > img { position:absolute; max-width:100%; max-height:100%; width:auto; height:auto; margin:auto; top:0; bottom:0; left:0; right:0;}
.tab_nav a br{display:block}
.tab_nav a br.mo{display:none}


.privacy  {display: block;width: 1000px;max-width: 100%;margin: auto;text-align: left;padding: 20px 40px;}
.privacy .title {}
.privacy .title h2 { font-size: 24px; margin: 30px 0; }
.privacy .title h2 .ver { font-size: 14px; color: #333; letter-spacing: 0; padding-left: 1rem; }
.privacy .section h3 {margin: 1rem 0 1rem;color: #333;letter-spacing: -0.03em;font-size: 16px;}
.privacy .section h4 { margin: 2rem 0 1.6rem; color: #333; letter-spacing: -0.03em; font-size: 1.4rem; }
.privacy .title p { font-size: 13px; color: #808080; letter-spacing: -0.03em }
.privacy .title .link { position: absolute; right: 0; bottom: 33px; font-size: 12px; }
.privacy .section {padding: 2rem 0 3rem;border-top: 1px solid #e5e5e5;line-height: 1.8em;font-size: 13px;color: #5E5241;}


/*

.service {display: block;max-width: 80rem;margin: auto;text-align: left;padding: 20px 40px;}
.service .title {}
.service .title h2 { font-size: 24px; margin: 30px 0; }
.service .title h2 .ver { font-size: 14px; color: #333; letter-spacing: 0; padding-left: 1rem; }
.service .title p { font-size: 13px; color: #808080; letter-spacing: -0.03em }
.service .title .link { position: absolute; right: 0; bottom: 33px; font-size: 12px; }
.service .section { padding:0 0 18px 0; border-top: 1px solid #e5e5e5 }
.service .section h3 { margin: 4rem 0 1.6rem; color: #333; letter-spacing: -0.03em; font-size: 1.6rem; }
.service .section h4 { margin: 2rem 0 1.6rem; color: #333; letter-spacing: -0.03em; font-size: 1.4rem; }
.service .section p { display: block; margin: 2px 0; line-height: 1.8em; font-size: 11px; }
.service .section span { display: block; margin: 0 0 0 20px; line-height: 1.8em; font-size: 13px; }
*/


.section_qa,.section_qa .faq_area li {
    position: relative;
    overflow: hidden;
    border-top: 1px solid #d2d2d2;
    vertical-align: top;
    text-align: left
}

.section_qa {
    width: 1000px;
    max-width: 100%;
    margin: 0 auto;
}

.h_txt {
    float: left;
    width: 196px;
    height: 42px;
    background: url(sp.png)0-380px no-repeat
}

.con {
    font-size: 12px;
    line-height: 18px
}

.section_qa .con {

    margin-bottom: 20px
}

.section_qa .faq_area {
    border-bottom: 1px solid #575757
}

.section_qa .faq_area li {
    height: auto
}

.section_qa .faq_area li:first-child {
    border-top: 0
}

.section_qa .faq_area .notice_link_box {
    width: 95%;
    padding: 20px 0 20px 30px;
    font-size: 14px;
    background: url(../images/board/ico_about3_q.png)3px 24px no-repeat;
    line-height: 1.6em
}

.section_qa .faq_area .notice_link_box b {
    display: inline-block;
    margin-right: 2rem
}

.section_qa .faq_area .notice_link_box a {
    color: #222
}

.section_qa .faq_area .notice_link_box.answer {
    width: 100%;
    font-weight: 400;
    border-top: 1px solid #ebebeb;
    color: #5E5241;
    background: url(../images/board/ico_about3_a.png)3px 28px no-repeat;
    padding-top: 25px
}

.section_qa .faq_area .notice_link_box .answer_con {
    width: 94%;
    vertical-align: 1.3em;
    padding: 0
}

.section_qa .faq_area .btn_answer {
    position: absolute;
    top: 10px;
    right: 6px;
    width: 20px;
    height: 11px;
    padding: 20px;
    background: url(../images/board/ico_up.png)50% 50% no-repeat;
}

.section_qa .faq_area .btn_answer.open {
    background: url(../images/board/ico_down.png)50% 50% no-repeat;
}

.blind,.section_qa .faq_area .operating_hour,legend {
    overflow: hidden
}

.section_qa .faq_area .operating_hour dt {
    float: left;
    clear: both
}

.section_qa .faq_area .operating_hour dd {
    float: left;
    margin-left: 3px;
    width: 80%
}

.blind,legend {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    font-size: 0;
    line-height: 0
}

.keyword_search {
    position: absolute;

    right: 5px;
    width: 200px;
}


.keyword_search form {}

.keyword_search .box_search {
    position: relative;
    padding: 0 40px 0 5px;
    border: 1px solid rgba(0,0,0,.2);
    border-radius: 20px;
    background-color: #fff;
}

.keyword_search .box_search input {
    border: 0;
    height: 30px
}

.keyword_search .tf_keyword {
    padding: 0;
    background-color: transparent;
    font-size: 14px;
    vertical-align: top;
    text-indent: 10px
}

.keyword_search .btn_search {
       position: absolute;
    right: 21px;
    top: 50%;
    transform: translateY(-50%);
    border: none;
    background: none;
    cursor: pointer;
    font-size: 14px;
}

.keyword_search .btn_search:after {
  position:absolute;
  top:50%;
  left:50%;
  width: 1.4rem;
  height: 1.4rem;
  background:url(../images/icon/search.svg) center no-repeat;
  background-size:100% auto;
  content:'';
  transform:translate(-50%, -50%);
  filter: invert(20%) brightness(90%) sepia(10%) saturate(200%);
}


@media all and (max-width: 480px) {
    .keyword_search {
        position: absolute;
        right: 20px;
        top: -5px;
    }
    
    .section_qa {margin: 0 20px;width: calc(100% - 40px);}
    
    .section_qa .faq_area .notice_link_box b { display: block;}

}



.table_title {
    width: 1000px;
    max-width: 100%;
    padding: 0;
    margin: 0 auto;
    position: relative;
    display: flex;
    align-items: center;
}

.table_title h4 {
    margin: 1rem 0;
    padding-left: 1.8rem
}

.table_title .tit {
    display: inline-block;
    font-weight: 700;
    color: #4c4c4c;
    font-size: 21px;
    line-height: 1.3;
    letter-spacing: -.05em;
    vertical-align: top
}

.table_title .txt_info {
    color: #5E5241;
    font-size: 14px;
    display: inline-block;
    margin: 0 1rem 0 0;
}

.table_title .txt_info_r {
    position: absolute;
    right: 0;
    bottom: 8px;
    color: #e15246;
    font-size: 12px;
    line-height: 1.3
}

.table_title .txt_info b {
    color: #d6a84e;
    font-size: 16px;
    margin: 0 3px;
}

.table_title .dropdown {
    position: relative;
    margin-top: unset;
    background-color: #fff; border-radius: 12px;
}

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





.basicFilter_sort { display: flex; padding: 5px 0; position: relative}
.basicFilter_sort li,.basicFilter_sort_t li { display: flex; vertical-align: bottom; width: auto; position: relative; align-items: center; align-content: center}
.basicFilter_sort li a { margin: 0; padding: 10px 20px; font-size: 16px; text-align: center; opacity: 1; border-radius: .3rem; color: #555; font-weight: 600}
/*.basicFilter_sort li:first-child a { padding: 1rem 1rem 1rem 0}*/
.basicFilter_sort a.select,.basicFilter_sort a:hover,.basicFilter_sort_t a.select,.basicFilter_sort_t a:hover { transition: all .3s; text-decoration: none; font-weight: 600; z-index: 1; color: #d5a74e; display: inline-block; position: relative}
.basicFilter_sort li:after { display: block; position: absolute; right: 0; top: 5px; width: 1px; height: 14px; background-color: #ccc; content: ""; transform: translateY(50%) rotate(0deg);}
.basicFilter_sort li:last-child:after { display: none}
.basicFilter_sort3 a.select:after { display: none}


@media all and (max-width: 480px) {
    
    .basicFilter_sort {padding: 1rem 0 0 0;justify-content: left;overflow-x: auto;white-space: nowrap;width: calc(100% - 0px);} 
    
    .basicFilter_sort li a {
    font-size: 14px;
}
}


.supportBox { padding: 0}

.tbl_list tbody .date b { font-weight: 400; color: #000; margin: 0 5px}
.tbl_list tbody .type span { display: inline-block; position: relative; border-radius: 4px; text-decoration: none; text-align: center; vertical-align: middle; white-space: nowrap; transition: all ease .3s; width: auto; line-height: 2rem; font-size: 1.1rem; text-transform: uppercase; padding: 0 1.6rem; border: 1px solid rgba(0,0,0,.2); background-color: #fff!important; color: #333!important}
.tbl_list tbody .event { color: #3584ec; font-weight: 700}
.tbl_list tbody .earn { color: #333; font-weight: 700}
.tbl_list tbody .withdrawal { color: #ff3b30; font-weight: 700}
.tbl_list tbody .balance { color: #5d5d5d; font-weight: 700}
.tbl_list tbody .transaction { font-size: 11px}
.tbl_list tbody .title_l { text-align: left; font-weight: 700}
.tbl_list tbody .thumb img { height: 40px}

[class*=tbl_list] .waiting {
    color: #4c4c4c
}

[class*=tbl_list] .progress {
    color: #0061ff
}

[class*=tbl_list] .finish {
    color: #c80000
}

[class*=tbl_list] .end {
    color: #4c4c4c
}


.tbl_list {    width: 100%;
    border: 0;
    border-spacing: 0;
    border-collapse: collapse;
    empty-cells: show
    table-layout: fixed;
               border-top: #5E5241 solid 1px;
}

.tbl_list tr:hover {
    background-color: rgba(0,122,255,.75);
    transition: all .3s
}

.tbl_list tr:hover td,.tbl_list tr:hover td b,.wallet_period.selected .point,.wallet_period.selected .point font,.wallet_period.selected .point i,.wallet_period:hover .point,.wallet_period:hover .point font,.wallet_period:hover .point i {
    color: #fff
}

.tbl_list thead th {
    padding: .8rem 0;
    width: auto;
    background-color: #4a4a4a;
    color: #fff;
    font-weight: 400;
    font-size: 1.3rem;
    line-height: 1.3;
    text-align: center
}

.tbl_list thead th:first-child {
    border-radius: 0;
    padding: 0 0 0 1.5rem
}

.tbl_list thead th:last-child {
    border-radius: 0
}

.tbl_list thead th .sort {
    display: inline-block
}

.tbl_list thead th .sort img {
    vertical-align: top;
    margin: .6rem;
    padding: 0;
    height: 7px
}

.tbl_list tbody td {
    padding: 6px 0;
    border-bottom: 1px solid #e5e5e5;
    color: #4c4c4c;
    font-size: 14px;
    line-height: 1.1;
    text-align: center;
    font-family: "Montserrat";
    letter-spacing: 0;
    height: 50px;
    
}
    

.tbl_list tbody td:first-child {
/*    padding: 0 0 0 1.5rem*/
}

.tbl_list tbody td ins {
    display: inline-block;
    margin-left: .3rem
}

.tbl_list tbody td .link img {
    vertical-align: middle;
    margin: 0 .6rem;
    padding: 0
}

.tbl_list tbody td b,.tbl_list tbody td span {
    border-radius: .3rem;
    padding: .5rem 0;
    display: inline-block
}

.tbl_list tbody td span {
    padding: .3rem .5rem
}

.tbl_list tbody td i.point {
    display: block;
    font-size: 1.2rem;
    color: #0b8cb7;
    margin-bottom: .5rem;
    font-weight: 600
}

.tbl_list tbody td input[type=checkbox] {
    border: 1px solid #d9d9d9
}

.tbl_list tbody td input[type=text] {
    width: calc(100% - 1rem);
    height: 30px;
    background: #fff 0 0 no-repeat padding-box;
    border: 1px solid #d9d9d9;
    margin: 0
}

.tbl_list tbody td input[type=button],.tbl_list tbody td input[type=number] {
    width: 100%;
    height: 30px;
    background: #fff 0 0 no-repeat padding-box;
    border: 1px solid #d9d9d9
}

.tbl_list .keyword {
    text-align: left;
    padding-left: 2rem
}

.tbl_list .comment {
    padding: 8px 105px;
    background-color: #f5f5f5;
    text-align: left
}

.tbl_list .comment .cmt_count {
    display: inline-block;
    position: relative;
    padding-left: 32px;
    color: #4c4c4c;
    font-size: 14px;
    vertical-align: top
}

.tbl_list .comment .cmt_count:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    background: url(../images/common/ico_reply.png)0 0 no-repeat;
    content: ""
}

.tbl_list .comment .cmt_count em {
    color: #009cff;
    font-weight: 700
}

.tbl_list .comment .link_cmt {
    display: inline-block;
    position: relative;
    margin-left: 15px;
    font-size: 13px;
    vertical-align: top
}

.tbl_list.customer .comment .link_cmt:before,.tool a+a:before {
    position: absolute;
    top: 50%;
    left: -10px;
    width: 1px;
    height: 10px;
    background-color: #ccc;
    content: "";
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.tbl_list tr.total td {
    background-color: #f2f2f2;
    font-size: 1.4rem!important
}

.tbl_list tr.total:hover td {
    background-color: #333;
    color: #ff0!important
}

@media all and (max-width: 480px) {
    
    .supportBox {padding: 0;}
    .tbl_list {
        margin:0;
        width: -webkit-fill-available
    }

    .tbl_list tbody td:first-child,.tbl_list thead th:first-child {
        padding: 0
    }

    .tbl_list tbody .date {
        font-size: 12px
    }

    .tbl_list tbody .balance,.tbl_list tbody .earn {
        font-size: 13px
    }
}



.text_l {
    text-align: left!important
}

.text_r {
    text-align: right!important
}

.text_c {
    text-align: center!important
}

.tip { text-align: center; font-size: 12px; color: #5E5241; padding: 10px }




caption {
    overflow: hidden;
    width: 0;
    height: 0;
    font-size: 0;
    line-height: 0
}

caption,legend {
    visibility: hidden
}





.paginate {
    margin-top: 3rem;
    font-size: 0;
    line-height: 0;
    text-align: center
}

.paginate .btn_page,.paginate a,.paginate strong {
    display: inline-block;
    height: 30px;
    font-size: 14px;
    line-height: 30px;
    vertical-align: top
}

.paginate a,.paginate strong {
    overflow: hidden;
    min-width: 30px;
    padding: 0 5px;
    margin: 0 5px;
    border-radius: 100px;
    font-family: "Montserrat",sans-serif;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: all ease .3s
}

.paginate strong {
    background-color: #5E5241;
    color: #fff;
    font-weight: 400
}

.paginate a:hover {
    background-color: #00a4aa;
    color: #fff
}

.paginate .btn_page {
    position: relative;
    color: gray
}

.paginate .btn_page:after {
    position: absolute;
    top: 50%;
    width: 10px;
    height: 10px;
    border: 1px solid gray;
    border-width: 0 1px 1px 0;
    content: ""
}

.paginate .prev:after {
    left: 20px;
    transform: translateY(-50%) rotate(135deg)
}

.paginate .next:after {
    right: 20px;
    transform: translateY(-50%) rotate(-45deg)
}

.paginate .prev {
    padding-left: 2.6rem;
    margin-right: 3rem
}

.paginate .next {
    padding-right: 2.6rem;
    margin-left: 3rem
}

.paginate .btn_page:hover {
    color: #000
}

.paginate .btn_page:hover:after {
    border-color: #000
}

.paginate .disabled {
    opacity: .5;
    cursor: auto;
    pointer-events: none
}


.tbl_list .balance { width: 100px }
.tbl_list .text_l { }
.tbl_list .date { width: 100px }



@media all and (max-width: 960px) {
    
    .table_title {display: flex;width: calc(100% - 40px);flex-direction: column;align-items: flex-start;position: relative;}

.table_title .txt_info {
    /* margin: 0 0 0 20px; */
}
    .paginate {
    margin-top: 1.5rem;}
    .paginate .prev {
    padding-left: 2.6rem;
    margin-right: 1rem
    }

    .paginate .next {
        padding-right: 2.6rem;
        margin-left: 1rem
    }
    
    
    .tbl_list .balance { width: 70px }
    .tbl_list .text_l { }
    .tbl_list .date { display: none }
    
}




.tool {
    margin-left: 10px
}

.tool:after,.view_head:after {
    display: block;
    clear: both;
    content: ""
}

.tool a {
    position: relative;
    float: left
}

.tool a+a {
    margin-left: 20px
}


.news_view {
    margin-bottom: 5rem;
    border-bottom: 1px solid #ddd
}

.view_head {
    position: relative;
    padding: 0 0 20px 0;
    width: 100%
}

.view_head .press {
    display: inline-block;
    color: #007aff;
    font-size: 20px;
    margin-right: 5px;
}

.view_head .tit,.view_head .tit32 {
    color: #000;
    font-size: 24px;
    line-height: 40px;
    display: flex
}

.view_head .tit32 {
    font-size: 3.2rem;
    line-height: 4.8rem
}

.view_head .byline {
    margin-top: 1rem;
    color: #000;
    font-size: 14px;
    line-height: 1.3
}

.view_head .byline,.view_head .date,.view_head .email,.view_head .name {
    display: inline-block;
    vertical-align: top
}

.view_head .name {
    padding-right: 1rem;
    font-weight: 400
}

.view_head .email {
    letter-spacing: 0
}

.view_head .date {
    color: #4c4c4c;
    letter-spacing: 0
}

.view_head .btn_area {
    display: inline-block;
    margin: 10px 0 0;
    vertical-align: top;
    float: right
}

.view_head .btn_area button {
    float: left;
    width: 3.7rem;
    height: 3.2rem;
    margin-left: -1px;
    border: 1px solid #e0e0e0;
    background: #fff url(../images/icon/sp_newsview.png)-9999px -9999px no-repeat
}

.view_head .btn_area .btn_print {
    background-position: 0 0
}

.view_head .btn_area .btn_scrap {
    background-position: -3.5rem 0
}

.news_content {
    padding: 0;
    color: #4c4c4c;
    font-size: 18px;
    line-height: 1.6;
}

.news_content img {
    max-width: 720px;
    width: 100%;
    display: block;
    margin: 20px auto;
}

.news_content .img_caption {
    padding: 10px 0;
    color: #999;
    font-size: 12px;
    line-height: 1.3;
    text-align: center
}

.news_writer {
    padding: 0 3.5rem 5rem;
    border-bottom: 1px solid #ccc;
    line-height: 1.3
}

.news_writer .byline {
    color: #262626;
    font-size: 1.8rem
}

.news_writer .name {
    display: inline-block;
    font-weight: 400;
    vertical-align: top
}

.news_writer .name em {
    font-weight: 700
}

.news_writer .email {
    display: inline-block;
    padding-left: 1rem;
    letter-spacing: 0;
    vertical-align: top
}

.news_writer .copyright {
    margin-top: 1rem;
    color: gray;
    font-size: 1.3rem
}

.news_view .file_box {
    padding: 0 20px;
    margin-bottom: 20px;
    border: 1px solid #e5e5e5;
    background-color: transparent
}

.news_view .file_box .file {
    display: inline-block;
    font-weight: 700;
    font-size: 14px;
    line-height: 30px;
    vertical-align: middle;
    margin: 10px 10px 10px 0;
    color: #5E5241
}

.news_view .file_box .file:hover {
    text-decoration: underline;
    color: #17afb5
}

.contact_bottom_list {
    position: relative;
    justify-items: center;
    width: 860px;
    margin: 0 auto 2rem;
    padding: 2rem 0;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,.1);
    border-radius: 3rem
}

.input_row,.tab_visual li {
    position: relative
}

@media all and (max-width: 960px) {
    
    
    
    
    .news_view {
        display:flex;
        flex-direction: column;
        align-items: center;
        /* padding: 0 20px; */
        margin: 0;
    }

    .view_head .press {
        display: inline-block;
        color: #007aff;
        font-size: 20px;
        margin-right: .5rem;
    }

    .view_head .tit {
        color: #000;
        font-size: 18px;
        line-height: 1.4;
        display: block
    }

    .view_head .tit32 {
        font-size: 2.4rem;
        line-height: 1.2;
        margin-top: 1rem
    }

    .view_head .byline {
        margin-top: 1rem;
        color: #000;
        font-size: 14px;
        line-height: 1.3
    }

    .view_head .byline,.view_head .date,.view_head .email,.view_head .name {
        display: inline-block;
        vertical-align: top
    }

    .view_head .name {
        padding-right: 1rem;
        font-weight: 400
    }

    .view_head .email {
        letter-spacing: 0
    }

    .view_head .date {
        color: #4c4c4c;
        letter-spacing: 0
    }

    .view_head .btn_area {
        display: inline-block;
        margin: 1rem 0 0;
        vertical-align: top;
        float: right;
        font-size: 12px
    }

    .view_head .btn_area button {
        float: left;
        width: 3.7rem;
        height: 3.2rem;
        margin-left: -1px;
        border: 1px solid #e0e0e0;
        background: #fff url(../images/icon/sp_newsview.png)-9999px -9999px no-repeat
    }

    .view_head .btn_area .btn_print {
        background-position: 0 0
    }

    .view_head .btn_area .btn_scrap {
        background-position: -3.5rem 0
    }

    .news_content {
        padding: 0 0 30px;
        color: #4c4c4c;
        line-height: 1.4;
        font-size: 16px;
    }

    .news_content img {
        max-width: 100%;
        display: block;
        margin: auto
    }

    .news_content .img_caption {
        padding: 1rem 0;
        color: #999;
        font-size: 1.2rem;
        line-height: 1.3;
        text-align: center
    }

    .news_writer {
        padding: 0 3.5rem 5rem;
        border-bottom: 1px solid #ccc;
        line-height: 1.3
    }

    .news_writer .byline {
        color: #262626;
        font-size: 1.8rem
    }

    .news_writer .name {
        display: inline-block;
        font-weight: 400;
        vertical-align: top
    }

    .news_writer .name em {
        font-weight: 700
    }

    .news_writer .email {
        display: inline-block;
        padding-left: 1rem;
        letter-spacing: 0;
        vertical-align: top
    }

    .news_writer .copyright {
        margin-top: 1rem;
        color: gray;
        font-size: 1.3rem
    }

    .news_view .file_box {
        display: flex;
        padding: 10px;
        margin-bottom: 20px;
        border: 1px solid #e5e5e5;
        background-color: transparent;
    }

    .news_view .file_box .file {
        display: inline-block;
        font-weight: 700;
        font-size: 12px;
        line-height: 1.4;
        vertical-align: middle;
        margin: auto;
        color: #5E5241;
        width: 100%;
    }

    .news_view .file_box .file:hover {
        text-decoration: underline;
        color: #17afb5
    }

    .news_view .file_box .file img {
        position: relative;
        top: -2px;
        margin-right: 10px;
        vertical-align: middle;
        height: 20px;
    }

    .contact_bottom_list {
        position: relative;
        justify-items: center;
        width: 100%;
        margin: 0 auto 2rem;
        padding: 0;
        background: #fff;
        box-shadow: none;
        border-radius: 3rem
    }

    .input_row {
        position: relative;
        width: 100%;
    }
}

.contact_bottom_list .news-list {
    margin: auto
}



.btn_area_form {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    margin-top: 28px;
    justify-content: center;
    align-items: center
}

.btn_area_form .btn {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1;
    width: 100%;
    max-width: 360px;
    padding: 0;
    border-radius: 5px;
    color: #fff;
    background-color: #5E5241;
}

.btn_area_form .btn.active,.btn_area_form .btn:hover {
    background: #007aff
}

.btn_area_form button img {
    display: inline-block;
    vertical-align: middle;
    padding: 0 8px 2px;
    max-height: 18px
}

.btn_area_form button em {
    font-size: 12px;
    font-weight: 400;
    display: inline-block
}

.btn_area_form .btn+.btn {
    margin-left: 10px
}




/** 갤러리 팝업 **/
.gallery { margin: 0; position: fixed; padding: 20px 0; background-color: #fff; top: 0; left: 0; right: 0; bottom: 0; z-index: 1000;}
.gallery .close-button { position: absolute; top: 10px; right: 10px; font-size: 24px; color: #333; background: rgba(255, 255, 255, 0.8); border: none; border-radius: 50%; cursor: pointer; width: 40px; height: 40px; display: flex; justify-content: center; align-items: center; transition: background 0.3s; }
.gallery .close-button:hover { background: rgba(255, 0, 0, 0.8); color: white; }
.gallery .slider-container {position: relative;width: 100%;height: 100vh;overflow:hidden;background: white;}

.gallery .slider {position: relative;display: flex;transition: transform 0.5s ease-in-out;width: 100%; /* 부모 컨테이너 기준으로 위치를 설정 */top: 50%; /* 상단에서 50% */ /* 좌측에서 50% */transform: translate(0%, -50%); /* 요소의 크기 기준으로 중앙 정렬 */ /* 슬라이더의 기본 플렉스 스타일 유지 */ /* 원하는 슬라이더 크기 */ /* 최대 너비 설정 */}
.gallery .slider ul { list-style: none; margin: 0; padding: 0; display: flex; width: 100%; transition: transform 0.5s ease-in-out; will-change: transform; }
.gallery .slider li { width: 100%; text-align: center; flex-shrink: 0; }
.gallery .slider img { width: auto; max-height: 600px; margin: 0 auto; display: block; }
.gallery .slider video { width: 100%; max-width: calc(100% - 160px); max-height: 720px; margin: 0 auto; display: block; }

.gallery .slider2 {position: relative;display: flex;transition: transform 0.5s ease-in-out;width: 100%; /* 부모 컨테이너 기준으로 위치를 설정 */top: 50%; /* 상단에서 50% */ /* 좌측에서 50% */transform: translate(0%, -50%); /* 요소의 크기 기준으로 중앙 정렬 */ /* 슬라이더의 기본 플렉스 스타일 유지 */ /* 원하는 슬라이더 크기 */ /* 최대 너비 설정 */}
.gallery .slider2 ul { list-style: none; margin: 0; padding: 0; display: flex; width: 100%; transition: transform 0.5s ease-in-out; will-change: transform; }
.gallery .slider2 li { width: 100%; text-align: center; flex-shrink: 0; }
.gallery .slider2 img { width: auto; max-height: 720px; margin: 0 auto; display: block; }
.gallery .slider2 video { width: 100%; max-width: calc(100% - 160px); max-height: 720px; margin: 0 auto; display: block; }

.gallery .info { display: flex; text-align: center; margin-top: 20px; gap: 5px; flex-direction: column; }
.gallery .info .page-indicator { font-size: 20px; font-weight: 100; letter-spacing: 1rem }
.gallery .info .page-indicator storng { font-weight: 600}
.gallery .info .title { font-size: 24px; font-weight: bold; margin: 5px 0; }
.gallery .info .details { font-size: 18px; color: #888; font-weight: 100 }

.gallery .navigation { position: absolute; top: 50%; width: 100%; display: flex; justify-content: space-between; transform: translateY(-50%); z-index: 10; }
.gallery .sns-link {position: fixed;bottom: 10px;left: 140px;display: inline-flex;column-gap: 1.0rem;margin: unset;}
.gallery .sns-link a{ width: 50px; height: 50px;}
.gallery .sns-link span img { width: 24px; }


.navigation button { color: white; border: none; padding: 10px 20px; cursor: pointer; border-radius: 50%; font-size: 24px; display: flex; align-items: center; justify-content: center; transition: all 0.3s ease; opacity: 0.5 }


.gallery .navigation button:hover { transition: all 0.3s ease; opacity: 1}
.gallery .close-slider {position: fixed;top: 20px;right: 10px;color: #333;border: none;padding: 10px 20px;border-radius: 5px;cursor: pointer;z-index: 15;font-size: 18px;transition: all 0.3s ease;z-index: 100;}
.gallery .close-slider:hover { transition: all 0.3s ease; opacity: 0.5 }
.gallery .contact-button {position: fixed;display: flex;bottom: 15px;right: 140px;background: #ffffff;border: none;padding: 12px 60px;border: #d8d8d8 solid 1px;border-radius: 2rem;font-size: 18px;font-weight: 100;cursor: pointer;transition: background 0.3s;align-items: center;transition: all 0.3s ease;}
.gallery .contact-button:hover { color: #000; border: #999 solid 1px; transition: all 0.3s ease; }
.gallery .contact-button img {height: 18px;margin-right: 1rem;}


.showExhibition { padding: 0; }
.showExhibition .slider-container  { background-color: #333;  }
.showExhibition .info { color: #fff}
.showExhibition .close-slider img { filter: brightness(0) invert(1); /* 흰색으로 변경 */}
/*.showExhibition .navigation button img { filter: brightness(0) invert(1);  흰색으로 변경  }*/

@media (max-width:1200px){
    /** 갤러리 팝업 **/
    .gallery { margin: 0; position: fixed; padding: 0; background-color: #fff; top: 0; left: 0; right: 0; bottom: 0; z-index: 1000;}
    .gallery .close-button { position: absolute; top: 10px; right: 10px; font-size: 24px; color: #333; background: rgba(255, 255, 255, 0.8); border: none; border-radius: 50%; cursor: pointer; width: 40px; height: 40px; display: flex; justify-content: center; align-items: center; transition: background 0.3s; }
    .gallery .close-button:hover { background: rgba(255, 0, 0, 0.8); color: white; }
    .gallery .slider-container {position: relative;width: 100%;height: 100vh;overflow: auto;}
    
    .gallery .slider {position: relative;display: flex;transition: transform 0.5s ease-in-out;width: 100%; /* 부모 컨테이너 기준으로 위치를 설정 */top: 0%; /* 상단에서 50% */ /* 좌측에서 50% */transform: translate(0%, 0%); /* 요소의 크기 기준으로 중앙 정렬 */ /* 슬라이더의 기본 플렉스 스타일 유지 */ /* 원하는 슬라이더 크기 */ /* 최대 너비 설정 */justify-content: center;flex-direction: column;align-items: center;gap: 20px; overflow: hidden}
    .gallery .slider ul { list-style: none; margin: 0; padding: 0; display: flex; width: 100%; transition: transform 0.5s ease-in-out; will-change: transform; }
    .gallery .slider li { width: 100%; text-align: center; flex-shrink: 0; }
    .gallery .slider img {width: 100%;max-height: 720px;margin: 0 auto;display: block;}
    .gallery .slider video { max-width: calc(100% - 0px); max-height: 720px; margin: 0 auto; display: block; }
    
    
    .gallery .slider2 {position: relative;display: flex;transition: transform 0.5s ease-in-out;width: 100%; /* 부모 컨테이너 기준으로 위치를 설정 */top: 0%; /* 상단에서 50% */ /* 좌측에서 50% */transform: translate(0%, 0%); /* 요소의 크기 기준으로 중앙 정렬 */ /* 슬라이더의 기본 플렉스 스타일 유지 */ /* 원하는 슬라이더 크기 */ /* 최대 너비 설정 */justify-content: center;flex-direction: column;align-items: center;gap: 20px;}
    .gallery .slider2 ul { list-style: none; margin: 0; padding: 0; display: flex; width: 100%; transition: transform 0.5s ease-in-out; will-change: transform; }
    .gallery .slider2 li { width: 100%; text-align: center; flex-shrink: 0; }
    .gallery .slider2 img {width: 100%;max-height: 720px;margin: 0 auto;display: block;}
    .gallery .slider2 video { max-width: calc(100% - 0px); max-height: 720px; margin: 0 auto; display: block; }
    
    
    
    
    
    .gallery .info { display: flex; text-align: center; margin: 20px 40px; gap: 5px; flex-direction: column; }
    .gallery .info .page-indicator { font-size: 20px; font-weight: 100; letter-spacing: 1rem }
    .gallery .info .page-indicator storng { font-weight: 600}
    .gallery .info .title { font-size: 24px; font-weight: bold; margin: 5px 0; }
    .gallery .info .details {font-size: 14px;letter-spacing: -0.03rem; font-weight: 300}

    .gallery .navigation {position: absolute;top: 51%;width: 100%;display: flex;justify-content: space-between;transform: translateY(-50%);z-index: 10; top: unset;
        margin-top: -220px;}
    .gallery .sns-link {position: relative;bottom: unset;left: unset;display: inline-flex;column-gap: 1.0rem;margin: unset;background-color: transparent;}
    .gallery .sns-link a{width: 40px;height: 40px;background-color: white;}
    .gallery .sns-link span img {width: 18px;}


    .navigation button {padding: 10px 7px;border-radius: 3rem;opacity: 0.5;background-color: rgba(255,255,255,1);margin: 10px;}
    .navigation button img {width: 26px;/* filter: brightness(0) invert(1); *//* image-rendering: pixelated; */}
    .gallery .navigation button:hover { transition: all 0.3s ease; opacity: 1;     box-shadow: 0 0px 6px rgba(0, 0, 0, 0.1);}
    .gallery .close-slider {position: fixed;top: 8px;right: -2px;color: #333;border: none;padding: 10px 20px;border-radius: 5px;cursor: pointer;z-index: 15;font-size: 18px;transition: all 0.3s ease;z-index: 100;}
    .gallery .close-slider img {height: 14px;}
    .gallery .close-slider:hover { transition: all 0.3s ease; opacity: 0.5 }
    .gallery .contact-button {position: relative;display: flex;bottom: unset;right: unset;background: #ffffff;padding: 8px 60px;border: #d8d8d8 solid 1px;border-radius: 3rem;font-size: 16px; font-weight: normal; color: #333}
    .gallery .contact-button:hover { color: #000; border: #999 solid 1px; transition: all 0.3s ease; }
    .gallery .contact-button img {height: 18px; width: auto; margin-right: 1rem;}

}





/** 문의하기 **/
.contact-form {position: fixed;top: 0;bottom: 0;right: -500px;width: 480px;background: #F5F5F5;box-shadow: -2px 0 5px rgba(0, 0, 0, 0.2);padding: 60px;transition: right 0.3s ease;z-index: 1000;}
.contact-form.active { right: 0; }
.contact-form h2 {font-size: 24px!important;margin-bottom: 20px;justify-content: flex-start!important;}
.contact-form input::placeholder,
.contact-form textarea::placeholder{font-size: 16px;color: #333; font-weight: 100;letter-spacing: 0.03rem}
.contact-form input, .contact-form textarea {width: 100%;padding: 10px;margin: 10px 0;border: 0;border-bottom: 1px solid #ccc;background-color: transparent;color: #333;}
.contact-form textarea {resize: none;height: 160px;}

.contact-form .char-counter {text-align: right;font-size: 13px;color: #999;font-family: auto;}
.contact-form .char-counter strong { color: #126AE7; }

.contact-form .privacy {padding: 20px 0 0;font-size: 12px;color: #5E5241;}
.contact-form .privacy input[type=checkbox] { width: auto; font-weight: 600; font-size: 18px;}
.contact-form .privacy label {font-weight: 600;font-size: 14px;margin-top: 16px;display: block;}
.contact-form .privacy strong { margin-bottom: 0.5rem; display: block;}
.contact-form button { background: #007BFF; color: white; border: none; padding: 10px 20px; border-radius: 5px; cursor: pointer; margin: 5px; }
.contact-form button:hover { background: #0056b3; }

.contact-form .inquire {position: relative;flex-direction: row;}
.contact-form .inquire button {border-radius: 0;width: 50%;height: 42px;display: flex;background-color: #444;align-items: center;justify-content: center;color: #fff;font-size: 16px;padding: 0;margin: 0;}
.contact-form .inquire button img {height:24px;margin-right: 10px;filter: brightness(0) invert(1); /* 흰색으로 변경 */}

.contact-form .inquire button:last-child {color: #000000;background-color: white;box-shadow: inset 0 0 0 1px #B3B3B3;}
.contact-form .inquire button:last-child img {filter: grayscale(1) brightness(0.7);}

/** 문의하기 mobile **/
@media (max-width:1200px){
    .contact-form {width: calc(100% - 40px);padding: 40px;height: 100%;overflow-y: auto;}
    .contact-form.active { right: 0; }
    .contact-form h2 {font-size: 18px!important;margin-bottom: 20px;}
    .contact-form input::placeholder,
    .contact-form textarea::placeholder{font-size: 16px;color: #333; font-weight: 100;letter-spacing: 0.03rem}
    .contact-form input, .contact-form textarea { padding: 10px 0;}
    .contact-form textarea {resize: none;height: 120px;}
    .contact-form .char-counter {text-align: right;font-size: 13px;color: #999;font-family: auto;}
    .contact-form .char-counter strong { color: #126AE7; }

    .contact-form .privacy {margin: 20px 0;font-size: 12px;}
    .contact-form .privacy input[type=checkbox] { width: auto; font-weight: 600; font-size: 14px;}
    .contact-form .privacy label { font-weight: 600; font-size: 16px; margin-top: 15px; display: block;}
    .contact-form .privacy strong {}
    .contact-form button { background: #007BFF; color: white; border: none; padding: 10px 20px; border-radius: 5px; cursor: pointer; margin: 5px; }
    .contact-form button:hover { background: #0056b3; }

    .contact-form .inquire {position: relative;flex-direction: row; margin-top: 20px;}
    .contact-form .inquire button {border-radius: 18px;width: 50%;height: 36px;display: flex;background-color: #444;align-items: center;justify-content: center;color: #fff;font-size: 14px;padding: 0;margin: 0;}
    .contact-form .inquire button img {height:24px;margin-right: 10px;filter: brightness(0) invert(1); /* 흰색으로 변경 */}

    .contact-form .inquire button:last-child {color: #000000;background-color: white;box-shadow: inset 0 0 0 1px #B3B3B3;}
    .contact-form .inquire button:last-child img {filter: grayscale(1) brightness(0.7);}
}



/* 컨텐츠 하단 SNS-link */
.sns-link { display: flex; position: relative; justify-content: flex-start; width: fit-content; background: #FFFFFF; border-radius: 45px; justify-content: space-between; column-gap: 2.4rem; margin: 70px auto; z-index: 1;}

.sns-link a{display: flex;align-items: center;/* text-align: center; */flex-direction: column;border: #d8d8d8 solid 1px;width: 64px;height: 64px;border-radius: 32px;justify-content: center;}

.sns-link a:hover { border-color: #333; background-color:#333; transition: all 0.3s ease;  }
.sns-link a:hover img { filter: brightness(0) invert(1); /* 흰색으로 변경 */}

.sns-link span {display: flex;height: 64px;align-items: center;}
.sns-link span img {height: auto;position: relative;width: 34px;/* height: 34px; */}
.sns-link i {font-family: 'Montserrat';font-size: 12px;margin: 1rem 2rem;display: none;}

.copyright { text-align: center; font-size: 13px; color: #000; letter-spacing: 0.09rem; font-weight: 100; padding-bottom: 60px;}
.copyright .warning { font-size: 11px; padding-top:20px; color: #5E5241}



@media (max-width: 640px) {
    .mega-menu { display: none }
    
    .text-lead { font-size: 18px !important; color: #333 !important; font-weight: 700; line-height: 1.4; margin-bottom: 18px !important; }
    .text-lead br  { display: none }
    
    .divider { margin: 50px auto; width: 1px; height: 100px; background-color: #999;}
    .divider-inner { margin: 50px auto; width: 1px; height: 100px; background-color: #999;}
    
    .sub-brand-origin .brand-origin__intro { margin: auto; padding: 40px}
    .sub-brand-origin .brand-origin__intro-title { font-size: 28px; margin-bottom: 20px; }
    .sub-brand-origin .brand-origin__intro-title span {  font-size: 36px; }
    .sub-brand-origin .brand-origin__intro-text { font-size: 14px; line-height: 1.6; color: #5E5241; margin: 0 auto 28px;}
    .sub-brand-origin .brand-origin__intro-text br { display: none }
    .sub-brand-origin .brand-origin__intro-button { display: inline-block; padding: 9px 36px; font-size: 14px; }
    
    
    .brand-origin__story-text { margin: auto; padding: 40px}
    .sub-brand-origin .brand-origin__story { gap: 20px }
    .sub-brand-origin .brand-origin__story-text { font-size: 16px;}
    
    .sub-brand-origin .brand-origin__farm-hero { margin-bottom:20px}
    
    .sub-brand-origin .brand-origin__farm-hero figure { overflow: hidden; width: 100%; display: flex; justify-content: flex-end; }
    .sub-brand-origin .brand-origin__farm-hero figure img { width:auto; height: 300px; }
    .sub-brand-origin .brand-origin__photos-bottom { overflow: hidden; }
    .sub-brand-origin .brand-origin__photos-bottom figure {overflow: hidden;width: 800px;display: flex;justify-content: center;}
    .sub-brand-origin .brand-origin__photos-bottom figure img {width: 100%;height: 340px;}
    
    
    .sub-brand-origin .brand-origin__farm-desc  { gap: 20px; margin: auto; padding: 40px}
    .sub-brand-origin .brand-origin__farm-heading { font-size: 28px; }
    .sub-brand-origin .brand-origin__farm-text { font-size: 16px;}
    
    .sub-brand-origin .brand-origin__photos-top { gap:0}
    
    .sub-brand-philo img { border-radius: 0;}
    .sub-brand-greeting .brand-greeting__title-box { margin: auto; padding: 60px 40px; text-align: center;}
    .sub-brand-greeting .brand-greeting__title .title-kanji::after { width: 50px; height: 48px; right: -120px; top: -25px;}
    .sub-brand-greeting .brand-greeting__text p { font-size: 16px;  line-height: 1.6; }
    
    .sub-brand-history .brand-history__intro { display: flex; gap: 20px; flex-direction: column;} 
    .sub-brand-history .brand-history__intro-text { margin: auto; padding: 40px}
    .sub-brand-history .brand-history__intro-text p { font-size: 16px;}
    
    .history_cont {}
    .history_menu{ display: none}

    .history_tab{ float:none; max-width:100%; width:auto; padding: 40px}  

    .history_tab ul li{padding-left: 80px;font-size: 14px;line-height: 1.4;margin-bottom: 10px;}
    .history_tab ul li .year { font-size: 18px; }
    
    .history_img{margin: 30px 0;display: flex; gap: 10px; flex-direction: column;}
    .history_img img{max-width:100%;}
    
    .sub-brand-history .brand-history__intro-image { overflow: hidden; width: 100%;}
    .sub-brand-history .brand-history__intro-image img { /* width: 100%; */ display: block; border-radius: 0;}
    
    .sub-story-ulsan-pear .story-pear__section { margin-bottom:0 }
    .sub-story-ulsan-pear .story-pear__text-row { margin: auto; padding: 40px}
    .sub-story-ulsan-pear .story-pear__heading { font-size: 28px; font-weight: bold; line-height: 1.2;}
    .sub-story-ulsan-pear .story-pear__text-row p { font-size: 16px; line-height: 1.6; color: #5E5241;}
    
    .story-pear__image-wide { overflow: hidden; width: 100%; display: flex; justify-content: center; }
    .sub-story-ulsan-pear .story-pear__image-wide img,
    .sub-story-ulsan-pear .story-pear__section--clean .story-pear__image-wide img
    { width:auto; height: 300px; }
    
    
    .sub-story-ulsan-pear .story-pear__section--clean .story-pear__image-wide { overflow: hidden; width: 100%; display: flex; justify-content: center; }
    
    
    .sub-story-ulsan-pear .story-pear__center-text { margin: 0 auto; padding: 0 40px 40px;}
    .sub-story-ulsan-pear .story-pear__center-text h3 { font-size: 28px; line-height: 1.5; margin-bottom: 20px; letter-spacing: -0.04rem;}
    .sub-story-ulsan-pear .story-pear__center-text p { font-size: 16px; line-height: normal; letter-spacing: normal;}
    .sub-story-ulsan-pear .story-pear__center-text p br { display: none;}
    .sub-story-ulsan-pear .story-pear__text-block h3 { font-size: 28px; }
    .sub-story-ulsan-pear .story-pear__text-right { padding: 40px}
    .sub-story-ulsan-pear .story-pear__text-block p { font-size: 16px; line-height: normal; letter-spacing: normal;}
    
    .sub-story-ulsan-pear .story-pear__two-col { margin-bottom: 0;}
    .story-pear__text-right:after { display: none;}
    .story-pear__text-right:before { display: none;}
    .sub-story-ulsan-pear.story-pear__closing{padding:40px}
    .sub-story-ulsan-pear .story-pear__closing p {  font-size: 16px;  }
    
    .sub-story-handmade .handmade-source-row .handmade-source-image  { overflow: hidden; width: 100%; display: flex; justify-content: center; }
    
    .handmade-hero-image { overflow: hidden; width: 100%; display: flex; justify-content: center; }
    
    .sub-story-handmade .handmade-section {margin-bottom: 0}
    .sub-story-handmade .handmade-hero-image img { width:auto; height: 300px; }
    .sub-story-handmade .handmade-source-image img { width:auto; height: 300px; border-radius:0; position: relative; margin: auto; }
    
    .sub-story-handmade .handmade-source-row { gap: 0}
    .sub-story-handmade .handmade-source-text { margin: 0; padding: 40px; font-size: 16px; line-height: 1.4; color: #333; letter-spacing: -0.03em;}
    .sub-story-handmade .handmade-source-text p { font-size: 16px; line-height: 1.6; color: #5E5241;}
    .sub-story-handmade .handmade-source-text h3 { font-size: 28px; margin-bottom: 24px;}
    
    .sub-story-handmade .handmade-process-title { text-align: center; margin: 0; padding: 40px; font-size: 16px; line-height: 1.6; letter-spacing: -0.03em;}
    .sub-story-handmade .handmade-process-title p {font-size: 16px; line-height: 1.6; color: #5E5241;}
    
    .sub-story-handmade .handmade-process-title h3 { font-size: 28px; line-height: 1.5; margin-bottom: 24px; letter-spacing: -0.04rem;}
    /* 상단 2단 이미지 */
    .sub-story-handmade .handmade-process-two-col {display: flex;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 10px;margin-bottom: 40px;justify-content: center;flex-direction: column;padding: 0 30px;}
    .sub-story-handmade .handmade-process-two-col img {width: 100%;display: block;}
    .sub-story-handmade .handmade-process-two-col p { font-size: 14px; line-height: 1.4; color: #5E5241; margin:5px 0 10px; letter-spacing: -0.03rem;  }
    .handmade-process-desc { padding: 40px; font-size: 16px; margin: 30px; border-radius: 40px;}
    
    .sub-story-handmade .handmade-quality-title { padding: 40px; margin: auto; line-height: 1.6;}
    .sub-story-handmade .handmade-quality-title h3 { font-size: 28px;}
    .sub-story-handmade .handmade-quality-steps { display: flex; justify-content: center; gap: 30px; flex-wrap: wrap; margin-bottom: 0px;}
    .sub-story-handmade .handmade-quality-notice { padding: 40px}
    .sub-story-handmade .handmade-final-image img { border-radius: 0}

    .pairing-hero__text { padding:0 40px }

    .sub-column { gap: 0; margin-bottom: 50px; text-align: center;}

    .sub-column__image   {overflow: hidden;width: 100%;display: flex;justify-content: flex-end;}
    .sub-column__image img {width:auto;height: 275px;border-radius:0;position: relative;margin: auto;}  
    .sub-column__image.three { display: grid; grid-template-columns: repeat(1, minmax(0, 3fr)); gap: 10px; justify-items: center; }
    .sub-column__image.three img { width:300px; height:unset; }
    .sub-column .sub-hero__text_full { position: relative; margin-top: unset; margin-left:unset; padding:40px;}
    .sub-column .sub-hero__text_full h2  { font-size:28px;  color:#333;}
    .sub-column .sub-hero__text_full p  { font-size:16px;  color:#5E5241; }


    .sub-hero__image.left300 {margin-left: unset;}
    #value07 .img_c { width: calc(100% + 80px); position: relative; margin-left: -40px;}
    /* 공통 블록 */
    .product-block .product-block__image {overflow: hidden;width: 100%;display: flex;justify-content: center;position: absolute; overflow-x:hidden; }
    .product-block .product-block__image img {width:auto;height: 200px;border-radius:0;position: relative;margin: auto; }
    .write_contact { padding: 0px}
    
    
    
    
}

.br_all { display:block !important;}
.web_img { display:block; }
.mobile_img { display: none; }

@media (max-width: 640px) {
    .web_img { display:none; }
    .mobile_img { display: block; }
    .br_all { display:block !important;}
}




    .quotes_p {
        position: relative;
        width: fit-content;
        padding: 0 50px;
        margin: 50px auto 0;
    }

    .quotes_p:before {
        background-image: url(../images/icon/quotes1.png);
        content: "";
        display: inline-block;
        width: 24px;
        height: 24px;
        background-size: contain;
        background-repeat: no-repeat;
        margin-right: 8px;
        vertical-align: middle;
        position: absolute;
        top: 0;
        left: 0;
    }

    .quotes_p:after {
        background-image: url(../images/icon/quotes2.png);
        content: "";
        display: inline-block;
        width: 24px;
        height: 24px;
        background-size: contain;
        background-repeat: no-repeat;
        margin-right: 8px;
        vertical-align: middle;
        position: absolute;
        bottom: 0;
        right: 0;
    }