@charset "utf-8";
@media (max-width: 1400px) {
    body, input, textarea, select, button, table {font-size:14px; font-weight: 400; }	

    :root{
		--font-size56 : 36px;
		--font-size48 : 32px;
		--font-size40 : 28px;
		--font-size36 : 24px;
		--font-size34 : 23px;
		--font-size32 : 22px;
		--font-size30 : 21px;
		--font-size28 : 20px;
		--font-size26 : 19px;
		--font-size24 : 18px;
		--font-size22 : 17px;
		--font-size20 : 16px;
		--font-size18 : 15px;
	}

	/* sub */
	.sub-visual { height: auto; min-height: 280px; padding: 88px 0 80px; }
	.sub-visual h2 { font-size: clamp(26px,4vw,32px); }
	.sub-visual .contain > p:not(.bc) { margin-top: 0; }
	.lnb ul li a {height:50px; font-size:16px;}
	.sub-title { padding: 60px 0 40px;}
	.real-cont { padding-bottom: 90px;}
	.real-cont2 { padding-bottom: 0; }
}
/* Landscape tablet */
@media (max-width: 1024px) {
    /* 찾아오시는 길 */
    .root_daum_roughmap .wrap_map {height:300px !important;}

	/* board */
	.input {padding:5px 14px; height:40px;}
	textarea.input {padding:12px 14px;}
    .status-search .info dl dd.fx .item .ui-datepicker-trigger { height: 40px; width: 40px; }

	/* 검색 */
	.board-search .search input.input {width:240px;}

    .board-list colgroup col {width:auto !important;}
    .board-list table thead th {font-size:15px;}
	.board-list table tbody td {font-size:15px;}
    .board-list table tbody td.subject { padding-left: 10px;}
    .board-list .label { font-size: 12px; line-height: 1em; padding: 5px 8px;}
    .board-list .down { width: 14px; height: 18px; background-size: contain;}

    .form-agree { margin: 30px 0 0 0;}
	.form-agree h3 {font-size:16px; margin-bottom: 12px;}
	.form-agree .scroll-box {font-size:12px; max-height:110px; overflow:auto;}
	.form-agree .check {margin-top:12px; font-size:14px;}

    .board-form table th { font-size: 14px; }
    .board-form table td { font-size: 14px; padding: 15px }
	.board-form .item-fx .item.fx { gap: 10px 15px;}
	.board-form .item-fx .item.fx .input { max-width:70px;}
    .board-form .input { height: 40px; }
    .captcha-wrap { height: 40px; }

	.board-white table {font-size:15px;}

	.board-form table {font-size:15px !important;}

	.files-upload-text .upfiles-alt {font-size:14px;}

	.board-view-tit {padding:14px 6px;}
	.board-view-tit h3 {font-size:18px;}
	.board-view-info {padding:13px 6px; font-size:13px;}
	.board-view-cnt {padding:15px 6px 40px;}

	.gallery-list ul li .tit { font-size: 16px; margin-top: 10px;}
	.gallery-list ul li .txt { font-size: 14px; }

    .faq .tit {font-size:15px;}
	.faq .tit a {padding:9px 60px 9px 12px;}
	.faq .tit a:after {top:14px;}
	.faq .q {flex:0 0 32px; width:32px; height:32px; font-size:16px; line-height:32px;}
	.faq .cnt {padding:18px 25px 18px 60px; font-size: 14px; }

    .calendar-head { border-radius: 0; padding: 15px 0;}
    .calendar-head h3 {font-size:20px; margin:0 30px;}
	.calendar table th {font-size:15px;}
	.calendar table td {height:110px; font-size:14px;}
	.calendar ul li:before {top:7px;}

	.board-prev-next {font-size:14px;}

	.btn-pack.medium {height:40px; padding:0 16px; font-size:15px; line-height:38px;}
	.btn-pack.large {min-width:140px; height:50px; font-size:18px; line-height:48px;}
    .btn-pack.zip-bt { height: 44px; font-size: 14px; line-height: 42px; min-width: 100px ;}

	.store-search {padding:22px 5%;}
	.store-search .map-area {width:280px;}
	.store-search .map-img .local {padding:0 10px; font-size:13px; line-height:22px;}
    
    .news-list .thumb {width:200px;}
	.news-list .tit {font-size:17px;}
	.news-list .txt {font-size:14px;}
	.news-list .date {font-size:13px;}
} 

/* portrait tablet */
@media (max-width: 900px) {	
	.only-desktop {display:none;}
	.only-tablet {display:block;}
}

/* Landscape phone */
@media (max-width: 640px) {
	body, input, textarea, select, button, table {font-size:14px;}
	.only-desktop-tablet {display:none;}
	.only-tablet {display:none;}
	.only-mobile {display:block;}

	:root{
		--font-size56 : 26px;
		--font-size48 : 24px;
		--font-size40 : 23px;
		--font-size36 : 22px;
		--font-size34 : 20px;
		--font-size32 : 20px;
		--font-size30 : 20px;
		--font-size28 : 19px;
		--font-size26 : 18px;
		--font-size24 : 17px;
		--font-size22 : 16px;
		--font-size20 : 15px;
		--font-size18 : 14px;
	}

	#contArea {padding-left: 15px; padding-right: 15px;}
	.contain {padding-left: 15px; padding-right: 15px;}
    .contain2 { padding-left: 15px; padding-right: 15px;}
	.real-cont {min-height: 200px; padding-bottom: 40px;}

	/* sub */
	.sub-visual { height: auto; min-height: 240px; padding: 72px 0 72px; }
	.sub-visual h2 { font-size: clamp(22px,5vw,28px); }
	.sub-visual .contain > p:not(.bc) { margin-top: 0; font-size: 14px; }
	.lnb ul li a {height:45px; font-size:15px;}
	.sub-title { padding: 40px 0 25px;}
	.real-cont { padding-bottom: 60px;}
	.real-cont2 { padding-bottom: 0; }

    /* 찾아오시는 길 */
	.root_daum_roughmap .wrap_map {height:250px !important;}

	/* board */
	.input {font-size:14px; padding:0 10px; height:38px;}
	select.input {padding-right:26px; background-image:url("/images/bbs/select_x2.png"); background-position:right 8px center; background-size:12px auto;}
	textarea.input {padding:7px 10px;}

	.board-search {display:flex; flex-direction:column; margin-bottom:0px;}
	.board-search .total-page {order:3; float:none; font-size:13px;}
	.board-search .cate {float:none; order:1; margin-left:0; margin-bottom:5px;}
	.board-search .cate .input {display:block; width:100%;}
	.board-search .search {float:none; order:2; display:flex;}
	.board-search .search .input {flex:1 1 auto; min-width:0; width:1%;}

	.radiobox input:checked + label:before {background-image:url("/images/bbs/radiobox_x2.png"); background-size:8px auto;}
	.checkbox input:checked + label:before {background-image:url("/images/bbs/checkbox_x2.png"); background-size:11px auto;}

	.board-list {display:none;}
	.board-list-m {display:block;}

	.board-white table {display:block; border-top:0; border-bottom:0; font-size:14px;}
	
	.board-white table tbody {display:block;}
	.board-white table tr {display:block; padding:12px 0;}
	.board-white table th {display:block; border:0; text-align:left; padding:0; margin-bottom:7px; font-size:16px; background:none;}
	.board-white table td {display:block; border:0; padding:0;}
	.board-white .editor {padding:0; margin-top:-12px;}
	.board-white .item {margin:3px 12px 3px 0;}
	.board-white #user_name {max-width:100% !important;}
	.board-white + .buttons {margin-top:30px;}

	.board-form table { border-bottom: none; }
	.board-form table tbody {display:block;}
    .board-form table colgroup col {width: 100% !important; margin-bottom: 10px;}
	.board-form table tr {display:block; }
	.board-form table th {display:block; border:0; text-align:left; padding:0; font-size:15px; background:none; height: auto; margin-top: 24px; margin-bottom: 5px; }
    .board-form table th.pd { padding-top: 24px;}

	.file-fx { display: block; }
	.files-upload { width: 100%; }
	.file-fx .resume-btn { margin-top: 10px; }

	.board-form table td {display:block; border:0; padding:0;}
	.board-form + .buttons {margin-top:30px;}
    .board-form input#past_8, input#technic_9, input#sample_type_5, input#cell_type_5, input#blood_1 { width: 200px !important;}
    .clr-txt { font-size: 13px;}
    .clr-span { padding-left: 0;}
    .board-form tr th.bg { background: transparent;}
    .board-form tr td.fw { text-align: left; margin-bottom: 10px; font-size: 14px; color: #00316d;}
    .board-form .sel-fx select { width: 100%; }
    .board-form .input { font-size: 14px; }
    .board-form .item-pd { padding: 0; }

	.form-agree { margin-bottom: 30px; }
	.form-agree h3 {font-size:16px;}
	.form-agree .scroll-box {font-size:12px; max-height:110px; overflow:auto;}
	.form-agree .check {margin-top:12px; font-size:14px;}

	.board-view-tit h3 {font-size:17px;}
	.board-view-info {font-size:12px;}

	.board-prev-next dl {padding:10px 6px;}
	.board-prev-next dt {width:70px}

	.calendar-head h3 {font-size:18px; margin:0 17px;}
	.calendar-head .cal-btn {width:34px; height:34px; background-size:9px auto;}
	.calendar-head .cal-prev {background-image:url("/images/bbs/cal_prev_x2.png");}
	.calendar-head .cal-next {background-image:url("/images/bbs/cal_next_x2.png");}
	.calendar table th {padding:6px 4px; font-size:14px;}
	.calendar table td {height:60px; padding:5px 4px; font-size:12px;}
	.calendar ul li {padding-left:0; margin-bottom:6px;}
	.calendar ul li:before {display:none;}
	.calendar .cal-date {font-size:10px; margin-bottom:8px;}

	.buttons {margin:15px 0;}

	.btn-pack.small {height:26px; padding:0 8px; font-size:11px; line-height:24px;}
	.btn-pack.medium {height:38px; padding:0 14px; font-size:14px; line-height:36px;}
	.btn-pack.large {min-width:120px; height:42px; padding:0 18px; font-size:15px; line-height:40px;}
	.btn-pack.xlarge {min-width:120px; height:50px; padding:0 12px; font-size:14px; line-height:48px;}
	.btn-pack.comment {width:80px; height:32px; font-size:14px;}

    .btn-pack.ctbt { min-width: 120px; height: 42px; font-size: 15px; line-height: 40px;}

	.paginate {margin-top:20px;}
	.paginate a,  
	.paginate strong{margin:0 1px;width:30px;height:30px;font-size:14px;line-height:30px;}  
	.paginate a.direction {margin:0; background-size:11px;}
	.paginate a.direction.first {background-image:url("/images/bbs/btn_first_x2.png");}
	.paginate a.direction.prev {background-image:url("/images/bbs/btn_prev_x2.png"); margin-right:14px;}
	.paginate a.direction.next {background-image:url("/images/bbs/btn_next_x2.png"); margin-left:14px;}
	.paginate a.direction.last {background-image:url("/images/bbs/btn_last_x2.png");}

	.comment-area {margin-top:37px;}
	.comment-total {font-size:14px; margin-bottom:12px;}
	.comment-write {position:relative; padding:10px;}
	.comment-write .byte {position:absolute; bottom:15px; left:12px; font-size:12px;}
	.comment-write .write {display:block;}
	.comment-write .write textarea {display:block; width:100%; height:65px; margin-right:0;}
	.comment-write .write .btn {text-align:right; margin-top:6px;}
	.comment-item {padding:17px 4px;}
	.comment-item.comment-reply {padding-left:25px; background-image:url("/images/bbs/icon_reply_x2.png"); background-position:3px 18px; background-size:auto 13px;}
	.comment-info {font-size:14px;}
	.comment-info .name {margin-right:5px;}

	.faq .tit a {padding:7px 0 7px 5px;}
	.faq .tit a:after {display:none;}
	.faq .q {flex:0 0 26px; width:26px; height:26px; font-size:15px; line-height:26px; margin-right:10px;}
	.faq .cnt {padding:12px 12px 12px 15px;}
    
	.comment-info .date {font-size:11px;}
	.comment-ctr {font-size:12px;}
	.comment-ctr .bar {vertical-align:middle; margin:-.2em 4px 0;}
	.comment-txt {font-size:14px;}
	.comment-link {font-size:13px;}
	.comment-input {padding:10px;}
	.comment-input textarea {height:48px;}

	.board-password {padding:30px 20px;} 

    .form-agree .scroll-box { padding: 15px;}

	.gallery-list { padding: 20px 0 40px;}
    .gallery-list ul { gap: 35px 10px;}
    .gallery-list ul li { width: calc(100%/2 - 5px);}
    .gallery-list ul li .tit { font-size: 15px; }

	.store-search {padding:0; border-radius: 0; }
	.store-search .search-area h3 {font-size:16px; padding:15px 25px; margin-bottom:20px; background:#f4f4f4;}
	.store-search .search-area dl {display:block; padding:0 15px; margin:20px 0;}
	.store-search .search-area dl dt {width:auto; margin-bottom:6px; font-size:15px;}
	.store-search .search-area dl dd {width:auto;}
	.store-search .search-area input.input {width:calc(100% - 74px); margin-right:4px;}
	.store-search .search-area select.input {width:calc(50% - 39px); margin-right:4px;}
	.store-search .search-area .btn-pack.medium {width:70px;}

    .news-list ul li {padding:17px 0;}
	.news-list .thumb {width:38%; margin-right:14px;}
	.news-list .tit {font-size:15px; max-height:2.8em; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;}
	.news-list .txt {font-size:13px; margin-top:3px; max-height:3em; -webkit-line-clamp:2;}
	.news-list .date {display:none;}
}

/* ===== 국수나무 랜딩 반응형 : 1660 · 1400 · 1200 · 1024 · 900 · 768 ===== */
@media (max-width: 1660px) {
	:root {--gnb-padding-x:60px; --footer-padding-x:60px; --cta-padding-x:60px; --section-py:100px; --fs-hero-title:52px; --lh-hero-title:1.19em; --fs-stat:52px; --lh-stat:1.19em; --fs-brand-mega:56px; --fs-brand-rank:64px; --lh-brand-mega:1.14em; --lh-brand-rank:1.13em; --section-content-width:100%;}
	#gnb>ul {gap:64px;}
	#startup .startup__cost-table, #store .locator__head, #store .locator__panel, #inquiry .inquiry2__inner {width:100%; padding-left:20px; padding-right:20px;}
	.cook__steps {width:100%;}
}

@media (max-width: 1400px) {
	:root {--gnb-padding-x:40px; --footer-padding-x:40px; --cta-padding-x:40px; --section-py:110px; --fs-section:40px; --lh-section:1.28em; --fs-card-title:30px; --lh-card-title:1.36em; --fs-cta-phone-footer:40px;}
	#gnb>ul {gap:clamp(16px, 2vw, 40px);}
	#gnb>ul>li>a {font-size:16px;}
	.hd-donate, .header__cta {padding:8px 20px 8px 12px; gap:10px;}
	.header__cta-number {font-size:clamp(18px, 1.6vw, 23px);}
	.startup, .profit, .brand, .gallery, .locator, .inquiry2, .testimonial {padding:96px 0;}
	.cook {padding:96px 0;}
	.brand--impact, .brand--award, .profit--money {padding:88px 0 96px;}
	.startup-model-tab {min-height:clamp(240px, 20vw, 300px); padding:28px 12px 24px;}
	.startup-model-tab__cta {padding:12px 32px;}
	.startup__title {font-size:clamp(36px, 3.8vw, 52px);}
	#startup .startup__cost-table, #store .locator__head, #store .locator__panel, #inquiry .inquiry2__inner {width:100%; padding-left:20px; padding-right:20px;}
	.cook__steps {width:100%;}
	.locator__title, .inquiry2__title, .testimonial__title {font-size:34px; line-height:1.25em;}
	.locator__panel .find-store-wrap, .find-store-wrap {height:640px;}
	.find-store-list .search-wrap {padding:20px 20px 0;}
	.find-store-list .tab-area .tabs, .find-store-list .tab-area .tabs li a, .find-store-list .search-area .input {height:56px;}
	.find-store-list .tab-area .tabs li a {padding:10px 16px;}
	.find-store-list .list-area {padding:14px 20px 20px;}
	.contact-phone--footer .contact-phone__number {font-size:36px; line-height:1.2em;}
	.startup-cost-table__cta {font-size:22px;}
	.interior-card__label {font-size:clamp(20px, 1.8vw, 26px);}
	.profit-table__cell {padding:12px 16px;}
	.opening {padding:96px 0;}
	.opening__inner {gap:48px;}
}

@media (max-width: 1200px) {
	:root {--fs-hero-title:44px; --lh-hero-title:1.2em; --fs-section:36px;}
	.hero__food--left, .hero__food--right {top:24px; bottom:188px; width:min(460px, 36vw);}
	.hero__food--left {left:max(-48px, calc((100vw - var(--width-gnb)) / 2 - 24px));}
	.hero__food--right {right:max(-56px, calc((100vw - var(--width-gnb)) / 2 - 40px));}
	.hero__title.hero__title--green {font-size:clamp(48px, 5vw, 72px);}
	.opening__steps {grid-template-columns:repeat(3, minmax(0, 1fr)); gap:40px 20px;}
	.opening:not(.opening--scroll) .opening__track {display:none;}
	.opening-step {gap:16px;}
	.opening-step__stem {height:40px;}
	.startup-model-tab__cta {padding:14px 28px;}
	.startup__steps {flex-direction:column; gap:24px;}
	.startup__step-arrow img {transform:rotate(90deg);}
	.startup-step {width:min(600px, 100%);}
	.brand__charts-row {flex-direction:column;}
	.chart-card--wide {width:100%; max-width:none;}
	.profit__panel {flex-direction:column; gap:40px;}
	.profit-chart {width:min(500px, 100%); height:auto; aspect-ratio:1 / 1;}
	.profit-chart__graphic {width:139.6%; height:auto; aspect-ratio:1 / 1; left:-19.8%; top:-19.8%;}
	.testimonial__inner {gap:40px;}
	.testimonial__media {width:min(720px, 52%);}
	#footer .contain {gap:36px;}
	.cta-bar {gap:12px;}
	.cta-bar .btn--main-lg {min-width:108px; padding-inline:16px;}
}

@media (max-width: 1024px) {
	:root {--header-height:80px; --cta-bar-offset:90px; --fs-hero-title:40px; --fs-stat:40px; --lh-stat:1.2em; --fs-brand-mega:44px; --fs-brand-rank:52px; --lh-brand-mega:1.18em; --lh-brand-rank:1.15em; --fs-cta-phone-footer:36px;}
	#header {height:80px;}
	#header .contain {display:flex; justify-content:space-between; align-items:center; gap:16px; height:80px;}
	#gnb {display:none;}
	.list-icon {display:block;}
	.hd-donate, .header__cta {margin-left:0; padding:8px 18px 8px 12px;}
	.header__cta-icon {width:28px; height:28px;}
	.header__cta-icon img {width:18px;}
	.logo--header {width:132px; height:34px;}
	.cta-bar {padding:6px 15px; justify-content:space-between;}
	.cta-bar__form {display:none;}
	.cta-bar__mobile-link {display:inline-flex; align-items:center; justify-content:center; margin-left:auto; min-height:48px; padding:10px 24px; background:#E4007F; color:var(--color-white); border-radius:40px; font-weight:700; line-height:1.3em;}
	.top-btn {width:44px; height:44px; right:15px; bottom:calc(var(--cta-bar-offset) + 0);}
	.hero__food {display:none;}
	.hero__title, .hero__title.hero__title--green {white-space:normal;}
	.cook__title, .cook__title--hook, .profit__title, .brand__title, .brand--impact .brand__title, .chart-card__title {white-space:normal;}
	.startup, .profit, .brand, .gallery, .locator, .inquiry2, .testimonial, .cook {padding:72px 0;}
	.stats {min-height:0; padding:72px 0;}
	.stats--packed .stats__title {font-size:32px; line-height:1.2em;}
	.stats__stage {min-height:480px;}
	.stats-ring {width:min(220px, 38vw); height:min(220px, 38vw);}
	.stats-ring--left {left:2%; top:0;}
	.stats-ring--right {right:2%; top:0;}
	.stats-ring--center {top:0;}
	.stats-ring__value {font-size:44px; line-height:1em;}
	.stats-ring--right .stats-ring__value {font-size:36px; line-height:1em;}
	.stats--packed .stats__food {width:100vw; padding-top:min(100px, 16vw); transform:translateX(-50%);}
	.stats__food-track {margin-top:calc(-1 * min(100px, 16vw)); gap:min(80px, 8vw);}
	.stats__food-track img {width:min(560px, 70vw); max-height:420px;}
	.brand__bg-laurel {width:min(96px, 14vw); opacity:0.5;}
	.brand__title-wrap {gap:clamp(8px, 1.6vw, 16px);}
	.brand__laurel {height:clamp(48px, 8vw, 64px);}
	.brand--impact .brand__title, .brand__title--gold {white-space:normal; text-align:center; font-size:clamp(28px, 4vw, 40px);}
	.brand__award-cards {flex-wrap:wrap; gap:20px 10px; padding-top:20px;}
	.brand__award-card {flex:1 1 calc(50% - 6px); min-height:136px; padding:28px 10px 32px;}
	.system__head {padding:56px 16px 40px;}
	.system__panels {flex-wrap:wrap;}
	.system-panel, .system-panel__body {flex:1 1 50%; min-height:400px;}
	.system-panel__body {padding:28px 16px;}
	.cook__title--hook {font-size:clamp(32px, 5vw, 48px);}
	.interior-cards {flex-wrap:wrap;}
	.interior-card {flex:1 1 calc(50% - 8px); min-width:min(100%, 240px); padding:28px 10px 32px;}
	.multi-sales {grid-template-columns:repeat(2, minmax(0, 1fr));}
	.marketing-row__list {grid-template-columns:repeat(2, minmax(0, 1fr));}
	.marketing-row__item {height:clamp(240px, 36vw, 340px);}
	.marketing-row__item + .marketing-row__item::before {display:none;}
	.marketing-row__desc {opacity:1; transform:none;}
	.testimonial {padding:72px 0;}
	.testimonial__inner {flex-direction:column; align-items:flex-start; gap:28px;}
	.testimonial__title {max-width:none; width:100%; font-size:30px; line-height:1.3em;}
	.testimonial__media {width:100%; max-width:none;}
	#startup .startup__cost-table, #store .locator__head, #store .locator__panel, #inquiry .inquiry2__inner {width:100%; padding-left:20px; padding-right:20px;}
	.cook__steps {width:100%;}
	.startup-model-tab {min-height:200px; gap:16px; padding:24px 8px 20px;}
	.startup-model-tab__icon-img {width:64px; height:64px;}
	.startup-model-tab__cta {padding:12px 16px; max-width:calc(100% - 16px);}
	.locator__panel {flex-direction:column;}
	.locator__panel .find-store-wrap, .find-store-wrap {height:600px; min-height:0; flex-direction:column;}
	.find-store-list {width:100%; min-width:0; max-height:none; flex:1 1 46%; border-right:none; border-bottom:1px solid var(--color-border);}
	.find-store-list .search-wrap {padding:16px 16px 0;}
	.find-store-list .tab-area {margin-bottom:12px;}
	.find-store-list .tab-area .tabs, .find-store-list .tab-area .tabs li a, .find-store-list .search-area .input {height:48px;}
	.find-store-list .tab-area .tabs li a {padding:8px 12px; font-size:15px;}
	.find-store-list .search-area {margin-bottom:12px;}
	.find-store-list .search-area .input {padding:6px 16px; font-size:15px;}
	.find-store-list .total {padding:0 0 12px; font-size:14px;}
	.find-store-list .list-area {padding:12px 16px 16px;}
	.find-store-list .list-area ul li {padding:12px; font-size:14px; line-height:1.45em;}
	.find-store-list .list-area .name {margin-bottom:4px; font-size:16px; line-height:1.4em;}
	.find-store-map {flex:1 1 54%; min-height:0;}
	.customoverlay {width:260px; margin-left:-130px; padding:16px;}
	.inquiry2__inner {flex-direction:column; gap:24px;}
	.inquiry2__info, .inquiry2__form {width:100%; max-width:none;}
	.inquiry2__form {max-width:none; gap:14px; padding:20px 16px; border-radius:14px;}
	.inquiry2__row {gap:12px;}
	.inquiry2__field {gap:6px;}
	.inquiry2__label {font-size:14px;}
	.inquiry2__field input, .inquiry2__field textarea, .inquiry2__captcha-row input {min-height:44px; padding:10px 14px; font-size:14px;}
	.inquiry2__field textarea {min-height:100px;}
	.inquiry2__captcha-row img {height:44px; width:auto;}
	.inquiry2__submit {width:auto; min-width:160px; height:48px; padding:0 20px; font-size:15px;}
	#footer .contain, #footer.landing-footer {flex-direction:column;}
	#footer .footer__right, #footer.landing-footer .footer__right {align-items:flex-start; gap:24px;}
	.profit-table {width:100%; overflow-x:auto;}
	.profit-table__cell {white-space:normal; padding:10px 8px; font-size:14px; line-height:1.5em;}
	.profit-table__row--highlight .profit-table__cell {font-size:18px; line-height:1.3em;}
	.chart-bars {overflow-x:auto; justify-content:flex-start; gap:12px; padding-bottom:8px;}
	.opening {padding:72px 0;}
	.opening__inner {gap:36px;}
}

@media (max-width: 900px) {
	.opening__steps {grid-template-columns:repeat(2, minmax(0, 1fr)); gap:40px 16px; max-width:none; margin:0 auto;}
  .opening-step.is-active .opening-step__num { color: #163d20; }
	.opening__track {display:none;}
	.opening-step {gap:16px;}
	.opening-step__stem {display:none;}
	.opening-step__badge {margin-top:4px;}
	.opening__title {font-size:clamp(24px, 5vw, 34px); gap:6px 10px;}
	.logo--opening {width:108px; height:28px;}
	.opening__tagline {font-size:clamp(20px, 4.4vw, 30px);}
	.startup__model-tabs {gap:6px;}
	.startup-model-tab {min-height:180px; padding:20px 8px 16px;}
	.cook-step__content {padding:28px 16px;}
	.gallery-card--interior {width:min(400px, 100%);}
	.gallery-card--menu {width:min(480px, 100%);}
}

@media (max-width: 768px) {
	:root {--site-gutter:15px; --width-content:100%; --section-content-width:100%; --gnb-padding-x:15px; --footer-padding-x:15px; --cta-padding-x:15px; --section-py:56px; --header-height:72px; --cta-bar-offset:58px; --fs-hero-title:32px; --lh-hero-title:1.25em; --fs-section:24px; --lh-section:1.29em; --fs-brand-mega:32px; --fs-brand-rank:40px; --lh-brand-mega:1.22em; --lh-brand-rank:1.18em; --fs-cta-phone-footer:28px;}
	.only-desktop, .only-desktop-tablet {display:none;}
	.only-mobile, .only-tablet-mobile {display:block;}
	body#main {--site-gutter:20px;}
	.contain, body#main .contain {padding-left:15px; padding-right:15px;}
	#header {height:72px;}
	#header .contain {grid-template-columns:1fr auto; height:72px;}
	.hd-donate, .header__cta {display:none;}
	.logo--header {width:118px; height:30px;}
	.hero--full {padding-bottom:0;}
	.hero--classic {position:relative; height:150vw; min-height:0; overflow:hidden;}
	.hero--classic .hero__content {position:relative; min-height:100%; padding:88px 0 0; gap:12px; overflow:hidden;}
	.hero__head {position:relative; z-index:2; margin-top:12px;}
	.hero__eyebrow {font-size:18px; line-height:1.35em;}
	.hero__title {font-size:clamp(36px, 8vw, 58px); line-height:1.2em;}
	.hero__title.hero__title--green {font-size:clamp(32px, 8.8vw, 56px); line-height:1.25em;}
	.hero__visual {position:absolute; left:50%; bottom:0; z-index:1; width:150vw; height:150vw; margin:0; transform:translate(-50%, 48%); overflow:visible;}
	.hero__stage {width:100%; height:100%; transform:none;}
	.hero__orbit {width:97%; height:97%;}
	.hero__bowl {width:68%; height:68%;}
	.hero__bowl img {transform:scale(1.08);}
	.hero__orbit-text {font-size:13px;}
	.hero--classic .hero__nav, .hero__nav {top:auto; right:20px; bottom:calc(var(--cta-bar-offset) + 20px);}
	.hero-nav__group {padding:2px;}
	.hero-nav__btn {width:40px; height:40px;}
	.hero__content {padding:88px 20px 0;}
	.hero__strip {position:relative; left:auto; transform:none; flex-direction:column; padding:0 20px 24px;}
	.hero-strip__card {flex:1 1 auto; width:100%;}
	.hero__highlight {padding:20px 24px;}
	.hero__cards {flex-direction:column; align-items:flex-start;}
	.hero-card {width:min(500px, 100%); max-width:100%;}
	.cta-bar {min-height:58px; gap:10px; flex-wrap:nowrap; justify-content:space-between;}
	.cta-bar .contact-phone {flex-direction:column; align-items:flex-start; gap:0;}
	.cta-bar .contact-phone__number {font-size:20px; line-height:1.2em;}
	.cta-bar__mobile-link {margin-left:auto; font-size:14px; padding:6px 10px; min-height: 33px;}
	.top-btn {width:40px; height:40px; right:12px; bottom:calc(var(--cta-bar-offset) + 12px);}
	.opening {padding:56px 0;}
	.opening__inner {gap:40px;}
  .system__title-stroke { -webkit-text-stroke: 1px var(--color-sub-green); }
	.opening__title {flex-direction:column; font-size:clamp(22px, 6vw, 30px);}
	.opening__logo {padding:6px 16px 6px 10px;}
	.opening-step {gap:14px;}
	.opening-step__icon {width:56px; height:56px;}
	.opening-step__icon img {width:32px; height:32px;}
	.opening-step__badge {margin-top:6px; display: none; }
	.opening-step__num {margin:0; font-size:15px;}
	.opening-step__label {font-size:14px; line-height:1.45em;}
	.stats--figures {padding:56px 0 24px; gap:24px;}
	.stats--figures .stats__inner {gap:24px;}
	.stats--figures .stats__grid, .stats__grid {flex-direction:column; gap:24px;}
	.stats--figures .stats__deco {max-width:72%; opacity:0.35;}
	.stats--packed .stats__title {font-size:26px; line-height:1.25em;}
	.stats--packed .stats__lead {font-size:16px; line-height:1.45em;}
	.stats__stage {display:flex; flex-direction:column; align-items:center; gap:16px; min-height:auto; padding-bottom:0;}
	.stats-ring {position:relative; left:auto; right:auto; top:auto; bottom:auto; transform:none; width:min(220px, 68vw); height:min(220px, 68vw);}
	.stats-ring--center {transform:none;}
	.stats-ring__value {font-size:40px; line-height:1em;}
	.stats--packed .stats__food {position:relative; left:auto; bottom:auto; transform:none; width:100%; height:min(360px, 64vw); order:10; margin-top:8px;}
	.stats__food-track img {width:min(800px, 220vw); max-height:280px;}
	.rolling-banner {height:80px;}
	.rolling-banner--ticker {height:56px;}
	.rolling-banner__phrase {font-size:clamp(18px, 4.6vw, 24px);}
	.brand__award-card {flex:1 1 100%; padding:24px 12px 28px;}
  .brand__award-card::after { height: 27px; }
	.system__head {padding:40px 15px 28px; gap:12px;}
	.system__title {font-size:clamp(22px, 6vw, 30px);}
	.system-panel, .system-panel__body {flex:1 1 100%; min-height:320px;}
	.system-panel__body {padding:24px 16px;}
	.system-panel__name {font-size:clamp(20px, 4.4vw, 26px);}
	.cook {padding:56px 0; gap:24px;}
	#cook {padding-top:56px; padding-bottom:40px; background-size:100% 120px;}
	.cook__title--hook {font-size:clamp(24px, 7vw, 34px);}
	.cook__desc {font-size:clamp(16px, 4vw, 20px);}
	.cook__steps {grid-template-columns:1fr; gap:12px; width:100%;}
	.cook-step {flex:1 1 100%; height:auto; aspect-ratio:4 / 5;}
	.cook-step__title {white-space:normal; font-size:22px; line-height:1.3em;}
	#marketing {padding-top:32px;}
	.marketing-title__text {font-size:clamp(22px, 6vw, 30px); padding:8px 12px;}
	.marketing-panel {min-height:clamp(180px, 38vw, 260px);}
	.marketing-panel__title {font-size:clamp(20px, 4.8vw, 28px);}
	.marketing-grid__center {width:clamp(140px, 34vw, 200px);}
	.marketing-row__list {grid-template-columns:1fr; gap: 20px; }
	.marketing-row__item {height:100vw;}
	.marketing-row__title {font-size:clamp(16px, 3.8vw, 22px);}
  .chart-card { padding: 30px 15px;}
	.gallery {padding:56px 0; gap:24px;}
  .gallery--interior .gallery__head { padding-top: 0; }
	.gallery--marketing, .gallery--interior {padding:56px 0;}
	.gallery--season .gallery__title.season-head__title, .season-head__title {font-size:clamp(26px, 8vw, 40px);}
	.gallery-card--menu .gallery-card__img { height: 56.25vw;}
	.gallery-card__info {padding:14px;}
	.gallery-card__title {font-size:18px; line-height:1.4em;}
	.interior-cards {flex-direction:column; gap:16px;}
	.interior-card {flex:1 1 auto; padding:24px 12px 28px;}
	.interior-card__label {font-size:22px;}
	.multi-sales {grid-template-columns:1fr; max-width:none; margin-inline:0;}
	.multi-sales__media {height:clamp(160px, 48vw, 260px);}
	.startup {padding:56px 0; gap:24px;}
	.startup__title {font-size:clamp(24px, 7vw, 32px); line-height:1.25em;}
  .startup__head { gap: 15px; }
	.startup__badge {width:56px; height:56px;}
	#startup .startup__cost-table, #store .locator__head, #store .locator__panel, #inquiry .inquiry2__inner {width:100%; padding-left:15px; padding-right:15px;}
	.startup__model-tabs {display:flex; flex-direction:column; gap:10px; padding-top:0;}
	.startup-model-tab {flex-direction:row; align-items:center; justify-content:flex-start; min-height:0; padding:12px 12px 12px 14px; gap:10px; border-radius:12px; box-shadow:0 6px 16px rgba(0, 0, 0, 0.16); transform:none;}
	.startup-model-tab:hover {transform:none;}
	.startup-model-tab::after {display:none;}
	.startup-model-tab.is-selected, .startup-model-tab.is-active {outline:none;}
	.startup-model-tab__badge {position:static; top:auto; left:auto; transform:none; min-width:52px; padding:6px 10px; font-size:16px; flex-shrink:0;}
	.startup-model-tab__icon {flex-shrink:0;}
	.startup-model-tab__icon-img {width:48px; height:48px;}
	.startup-model-tab__cta {flex:1; width:auto; max-width:none; margin-top:0; padding:10px 12px; font-size:14px; line-height:1.3em; white-space:normal;}
	.startup-model-tab__cta-arrow {display:inline-block; width:14px; height:14px; flex-shrink:0;}
	.startup-cost-table__grid thead {display:none;}
	.startup-cost-table__grid, .startup-cost-table__grid tbody, .startup-cost-table__grid tr, .startup-cost-table__grid th, .startup-cost-table__grid td {display:block; width:100%;}
	.startup-cost-table__grid tr {border-bottom:1px solid rgba(255, 255, 255, 0.14);}
	.startup-cost-table__grid tbody th[scope="row"] {width:100%; padding-bottom:8px; border-bottom:none; background-color:rgba(255, 255, 255, 0.06);}
	.startup-cost-table__grid tbody td {border-top:none; text-align:center;}
	.startup-cost-table__grid tbody td[rowspan] {font-weight:700; color:var(--color-white);}
	.startup-cost-details .startup-cost-table__grid {display:table; width:100%; table-layout:fixed;}
	.startup-cost-details .startup-cost-table__grid thead {display:table-header-group;}
	.startup-cost-details .startup-cost-table__grid tbody {display:table-row-group;}
	.startup-cost-details .startup-cost-table__grid tr {display:table-row;}
	.startup-cost-details .startup-cost-table__grid th, .startup-cost-details .startup-cost-table__grid td, .startup-cost-details .startup-cost-table__grid tbody th[scope="row"], .startup-cost-details .startup-cost-table__grid tbody td[rowspan] {display:table-cell; width:auto; padding:10px 6px; font-size:12px; line-height:1.45em; overflow-wrap:anywhere;}
	.startup-cost-details .startup-cost-table__grid th:first-child {width:24%;}
	.startup-cost-details .startup-cost-table__grid thead th:nth-child(2) {width:26%;}
	.startup-detail__dialog {border-radius:12px;}
	.startup-detail__header {padding:14px 14px 12px;}
	.startup-detail__title {font-size:18px; line-height:1.25em;}
	.startup-cost-table__cta {font-size:16px; padding:14px 10px;}
	.startup__models {flex-direction:column;}
	.startup__panel {padding:24px 16px;}
	.locator {padding:56px 0; gap:24px;}
	.locator__title {font-size:26px; line-height:1.25em;}
	.locator__desc {font-size:14px; line-height:1.5em;}
	.locator__panel .find-store-wrap, .find-store-wrap {position:relative; display:flex; flex-direction:column; height:min(640px, calc(100dvh - var(--header-height) - var(--cta-bar-offset) - 24px)); min-height:480px; overflow:hidden;}
	.find-store-list {position:relative; z-index:2; display:flex; flex-direction:column; width:100%; height:100%; max-width:none; max-height:none; flex:none; border:none; background:transparent; pointer-events:none;}
	.find-store-list .search-wrap, .find-store-list .list-area {pointer-events:auto;}
	.find-store-list .search-wrap {flex-shrink:0; padding:12px 12px 0; background:var(--color-white);}
	.find-store-list .tab-area {margin-bottom:10px;}
	.find-store-list .tab-area .tabs {width:100%; height:auto;}
	.find-store-list .tab-area .tabs, .find-store-list .tab-area .tabs li a {height:44px;}
	.find-store-list .tab-area .tabs li a {padding:8px 8px; font-size:13px; line-height:1.3em;}
	.find-store-list .search-area {margin-bottom:10px;}
	.find-store-list .search-area .input {height:44px; padding:6px 14px; font-size:14px;}
	.find-store-list .search-area .input[type=search] {padding-right:44px;}
	.find-store-list .total {padding:0 0 10px; font-size:13px;}
	.find-store-list .list-area {display:none; flex:1 1 auto; min-height:0; padding:10px 12px 64px; background:var(--color-white);}
	.find-store-list .list-area ul li {padding:12px; font-size:14px; border-radius:12px;}
	.find-store-list .list-area .name {margin-bottom:4px; font-size:16px; line-height:1.4em;}
	.find-store-map {position:absolute; inset:0; z-index:1; width:100%; height:auto; min-height:0; flex:none; border-radius:0;}
	.btn-get-position {bottom:12px; right:12px; width:40px; height:40px; border-radius:8px;}
	.btn-view-map, .btn-view-list {position:absolute; left:50%; bottom:12px; z-index:30; align-items:center; justify-content:center; gap:10px; width:120px; height:40px; margin-left:0; transform:translateX(-50%); border:0; border-radius:20px; box-shadow:3px 3px 3px rgba(0,0,0,.2); font-size:14px; font-weight:700; line-height:1.3em;}
	.btn-view-map {display:none; background:#C6F035; color:var(--color-heading);}
	.btn-view-list {display:flex; background:#fff; color:#121212;}
	.find-store-wrap.view-map .find-store-list .list-area {display:block;}
	.find-store-wrap.view-map .find-store-map {visibility:hidden;}
	.find-store-wrap.view-map .btn-view-map {display:flex;}
	.find-store-wrap.view-map .btn-view-list {display:none;}
	.customoverlay {bottom:56px; width:min(260px, calc(100vw - 40px)); margin-left:calc(min(260px, calc(100vw - 40px)) / -2); padding:14px; font-size:14px;}
	.customoverlay .name {font-size:16px;}
	.inquiry2 {padding:56px 0;}
	.inquiry2__info {gap:20px;}
	.inquiry2__title {font-size:26px; line-height:1.25em;}
	.inquiry2__desc {font-size:14px; line-height:1.5em;}
	.inquiry2__icon {width:48px;}
	.inquiry2__phone {width:100%; gap:12px; padding:12px 16px;}
	.inquiry2__phone-number {font-size:22px; line-height:1.3em;}
	.inquiry2__row, .inquiry2__bottom {flex-direction:column; gap:10px; align-items:stretch;}
	.inquiry2__agree {flex-wrap:wrap;}
	.inquiry2__agree-label {white-space:normal; font-size:13px;}
	.inquiry2__form {gap:12px; padding:16px 12px; border-radius:12px;}
	.inquiry2__field {gap:6px;}
	.inquiry2__label {font-size:13px;}
	.inquiry2__field input, .inquiry2__field textarea, .inquiry2__captcha-row input {min-height:42px; padding:8px 12px; font-size:14px;}
	.inquiry2__field textarea {min-height:88px;}
	.inquiry2__captcha-row img {height:42px;}
	.inquiry2__submit {width:100%; min-width:0; height:48px; font-size:15px;}
	#footer {padding:36px 0;}
	#footer .contain {gap:24px;}
	.footer__left {gap:20px;}
	.footer__info {font-size:13px;}
	.footer__info-row {flex-wrap:wrap; gap:8px 16px;}
	.footer__bottom {gap:12px;}
	.footer__copy, .footer__legal a {font-size:13px;}
	.contact-phone--footer .contact-phone__number {font-size:26px; line-height:1.2em;}
	.footer__right .btn--main {width:100%;}
}

@media (min-width: 901px) and (min-height: 700px) {
	.opening--scroll {padding:0; height:calc(100vh + var(--opening-distance));}
	.opening--scroll .opening__inner {position:sticky; top:0; height:100vh; padding-top:125px; padding-bottom:125px; justify-content:center; gap:clamp(32px, 5vh, 64px); overflow:clip;}
	.opening--scroll .opening__title {font-size:clamp(32px, 3.5vw, 56px);}
	.opening--scroll .opening__process {align-items:flex-start; gap:clamp(32px, 5vh, 64px);}
	.opening--scroll .opening__flow {flex:none; width:150%; max-width:none; margin:0; will-change:transform;}
	.opening--scroll .opening__steps {grid-template-columns:repeat(6, minmax(0, 1fr)); gap:0; max-width:none;}
	.opening--scroll .opening__track {top:clamp(72px, 6vw, 105px); height:2px;}
	.opening--scroll .opening__tagline {width:100%; font-size:clamp(28px, 3.3vw, 46px);}
}

@media (prefers-reduced-motion: reduce) {
	html {scroll-behavior:auto;}
	.opening__flow.is-animating .opening__track-active, .opening__flow.is-animating .opening-step__icon, .opening__flow.is-animating .opening-step__badge, .opening__flow.is-animating .opening-step__label {animation:none;}
	.opening-step, .opening-step * {transition:none !important; animation:none !important;}
	.stats__food-track {animation:none; width:100%; justify-content:center; flex-wrap:wrap; gap:24px;}
	.stats__food-track img:nth-child(n + 5) {display:none;}
	.system-panel__bg, .system-panel__dim, .system-panel__num, .system-panel__name, .system-panel__divider, .system-panel__desc {transition:none;}
	.gallery-interior__flow-track {animation:none; transform:translateX(-25%);}
	.gallery__body[data-carousel-flow] .gallery__track {animation:none;}
	.hero__bg-video {display:none;}
	.hero__bg-fallback {opacity:1; visibility:visible;}
	.hero__orbit {animation:none;}
	.rolling-banner__track {animation:none;}
	.startup__bg-pattern-band__track {animation:none; transform:translateX(-25%);}
	.cook__steps.is-visible .cook-step__label {animation:none;}
}

@media (max-width: 640px) {
	.input.datepicker {background-image:url("/images/bbs/datepicker_icon_x2.png"); background-size:22px auto;}
	.ui-datepicker-prev, .ui-datepicker-next {background-size:8px auto;}
	.ui-datepicker-prev {background-image:url("/images/bbs/datepicker_prev_x2.png");}
	.ui-datepicker-next {background-image:url("/images/bbs/datepicker_next_x2.png");}
	.ui-datepicker-trigger {width:38px; height:38px;}
}
