@charset "utf-8";

@media (min-width: 1320px) {
  .menu_wrap .origin_box {
    gap: 10px;
    padding-block: clamp(20px, 1.0417vw, 20px);
  }
  .menu_wrap .origin_box li a {
    font-size: 15px;
  }
}

@media (min-width: 881px) {
  .menu_wrap .pizza_section_big {
    aspect-ratio: 690 / 880;
    box-sizing: border-box;
  }
}
@media (max-width: 1080px) {
  .menu_wrap .pizza_item.is-detail-open.badge_new::after {
    z-index: 30;
  }
  .menu_wrap .pizza_section_big.is-detail-open .menu_bigimg::after {
    visibility: hidden;
  }
  .menu_wrap .pizza_section_big.is-detail-open > .menu-touch-badge {
    display: block;
    position: absolute;
    z-index: 30;
    top: -6cqw;
    right: -3cqw;
    width: 30cqw;
    aspect-ratio: 248 / 236;
    background: url("../img/menu/menu_point_badge_b.webp") center / contain
      no-repeat;
    pointer-events: none;
  }
  .menu_wrap .pizza_green_big.is-detail-open > .menu-touch-badge {
    background-image: url("../img/menu/menu_point_badge_bb.webp");
  }
  .menu_wrap .pizza_item .menu_price_con,
  .menu_wrap .pizza_item .big_price {
    display: none;
  }
  .menu_wrap .pizza_item {
    position: relative;
    cursor: pointer;
  }
  .menu_wrap .pizza_item .menu-touch-detail:not([hidden]) {
    position: absolute;
    inset: 0;
    z-index: 20;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px;
    padding: 16px 10px;
    box-sizing: border-box;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    color: #de2027;
    font-family: "Pretendard", sans-serif;
    text-align: center;
    overflow: auto;
    overscroll-behavior: contain;
  }
  .menu_wrap .menu-touch-detail > strong {
    font-family: var(--font-paperlogy);
    font-size: 18.5cqw;
    line-height: 1;
    letter-spacing: -0.02em;
    font-weight: 900;
    word-break: keep-all;
    overflow-wrap: anywhere;
  }
  .menu_wrap .pizza_item.is-detail-open {
    transform: none;
    filter: none;
  }
  .menu_wrap .menu-touch-detail::after {
    content: "";
    position: absolute;
    inset: 0;
    padding: 3px;
    border-radius: inherit;
    background: conic-gradient(
      from var(--menu-edge-angle),
      rgba(222,32,39,.3) 0deg 65deg,
      #de2027 90deg 135deg,
      rgba(222,32,39,.3) 160deg 245deg,
      #de2027 270deg 315deg,
      rgba(222,32,39,.3) 340deg
    );
    -webkit-mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);
    mask-composite: exclude;
    pointer-events: none;
    animation: menu-detail-orbit 5s linear infinite;
  }
}
@media (prefers-reduced-motion: reduce) {
  .menu_wrap .menu-touch-detail::after {
    animation: none;
  }
}
@media (max-width: 880px) {
  .menu_wrap .sub_container {
    padding-top: 28px;
    padding-bottom: 65px;
  }
  .menu_wrap .menu_banner_wrap {
    margin-bottom: 0;
  }
  .menu_wrap .menu_banner {
    border-radius: 22px;
  }
  .menu_wrap .tab_navbox {
    width: 100%;
    max-width: 550px;
    height: 54px;
  }
  .menu_wrap .tab_navbox .tab_nav {
    font-size: 14px;
    padding: 12px 0;
  }
  .menu_wrap .origin_box {
    gap: 14px;
    margin: 0;
  }
  .menu_wrap .origin_box li a {
    font-size: 12px;
    padding-left: 17px;
  }
  .menu_wrap .origin_box li a::before {
    width: 14px;
    height: 14px;
  }
  .menu_wrap .menu_cont .tmt_menu_box .pizza_catalog {
    gap: 16px;
  }
  .menu_wrap .pizza_section01 {
    flex-wrap: wrap;
    gap: 16px;
  }
  .menu_wrap .pizza_section_big,
  .menu_wrap .pizza_section01 > .pizza_section_list {
    width: 100%;
    flex-basis: 100%;
  }
  .menu_wrap .pizza_section_big {
    aspect-ratio: 680 / 880;
    padding-top: 22px;
    padding-bottom: 14px;
  }
  .menu_wrap .pizza_section_reverse .pizza_section_big {
    order: -1;
  }
  .menu_wrap .pizza_section_list {
    gap: 16px 12px;
  }
  .menu_wrap .pizza_section_list > li,
  .menu_wrap .pizza_section_all .pizza_section_list > li {
    width: calc((100% - 12px) / 2);
  }
  .menu_wrap .pizza_item.badge_new::after {
    width: 30cqw;
    right: -3cqw;
    top: -5cqw;
  }
  .menu_wrap .paging {
    bottom: 10px !important;
    gap: 6px;
  }
  .menu_wrap .paging .swiper-pagination-bullet {
    width: 7px;
    height: 7px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .menu_wrap .pizza_section_big::before,
  .menu_wrap .pizza_section_big::after {
    animation: none;
    opacity: 1;
    filter: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .menu_wrap .pizza_item.badge_new::after,
  .menu_wrap .pizza_section_big .menu_bigimg::after,
  .menu_wrap .is-flipped .menu_card,
  .menu_wrap .is-returning .menu_card,
  .menu_wrap .menu_card,
  .menu_wrap .menu_card > img,
  .menu_wrap .pizza_item {
    transition: none;
  }
}

@media (max-width: 880px) {
  .menu_wrap .menu_cont .tmt_menu_box .menu_catalog {
    gap: 16px 12px;
  }
  .menu_wrap .menu_catalog > .pizza_item {
    width: calc((100% - 12px) / 2);
  }
}

@media (prefers-reduced-motion: reduce) {
  .menu_wrap .is-flipped .menu_card {
    transition: none;
  }
}

@media (max-width: 880px) {
  .store-grand-open {
    padding: 55px 0 0;
  }
  .store-grand-open .store-grand-open__heading {
    margin-bottom: 25px;
  }
  .store-grand-open .store-grand-open__heading h2 {
    font-size: 32px;
    letter-spacing: -0.8px;
  }
  .store-grand-open .store-grand-open__swiper {
    margin-inline: auto;
    padding-inline: 0;
  }
  .store-grand-open .store-grand-open__slide {
    width: clamp(155px, 38.8vw, 280px);
  }
  .store-grand-open .grand-open-card {
    min-height: 0;
    padding: 10px 7px 10px;
    border-radius: 16px 16px 6px 6px;
    container-type: inline-size;
  }
  .store-grand-open .grand-open-card__logo {
    width: 50px;
    width: 29cqw;
    margin-bottom: 6px;
  }
  .store-grand-open .grand-open-card__name,
  .store-grand-open .grand-open-card__date {
    font-size: 21px;
    font-size: 12.8cqw;
    letter-spacing: -1px;
    line-height: 1.23;
  }
  .store-grand-open .grand-open-card__visual {
    margin: 6px 0 8px;
  }
  .store-grand-open .grand-open-card__badge-wrap {
    width: 33%;
    left: -4px;
    bottom: 4px;
  }
  .store-grand-open .grand-open-card__badge span {
    font-size: 12px;
    letter-spacing: -0.3px;
  }
  .store-grand-open .grand-open-card__info li {
    gap: 3px;
    margin-top: 3px;
  }
  .store-grand-open .grand-open-card__label {
    padding: 1px 3px;
    font-size: 12px;
    min-height: 18px;
    padding: 3px 4px 1px;
  }
  .store-grand-open .grand-open-card__info p {
    max-width: 82%;
    font-size: clamp(12px, 4.8cqw, 13px);
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: -0.35px;
  }
  .store_wrap .sub_container {
    padding-top: 0;
  }
  .store_wrap .store_title {
    margin: 6rem 0 4.5rem;
    font-size: clamp(22px, 6vw, 30px);
  }
  .store_wrap .board_cont {
    padding-top: 12px;
  }
  .store_wrap .store_cont ul .map_sech {
    top: 0;
  }
}

@media (max-width: 700px) {
  .store_wrap .store_title {
    margin: 3rem 0 2rem;
  }
}

@media (max-width: 450px) {
  .store-grand-open {
    padding-top: 40px;
  }
  .store-grand-open .store-grand-open__heading {
    margin-bottom: 20px;
  }
  .store-grand-open .store-grand-open__heading h2 {
    font-size: 28px;
  }
  .store-grand-open .store-grand-open__slide {
    width: clamp(145px, 39vw, 175px);
  }
  .store-grand-open .grand-open-card {
    padding: 8px 5px;
  }
  .store_wrap .store_title {
    margin: 2rem 0 1.5rem;
    font-size: clamp(21px, 6vw, 26px);
  }
  .store_wrap .board_cont {
    padding-top: 8px;
  }
}

@media (max-width: 880px) {
  .menu-info-modal__body .sheet {
    border-radius: 20px;
  }
  .menu-info-modal__title {
    font-size: 20px;
    min-height: 50px;
    padding: 15px 8px;
  }
  .menu-info-modal__body h2 {
    font-size: 20px;
    min-height: 45px;
    padding: 14px;
  }
  .menu-info-modal__body .nutrition-table {
    min-width: 800px;
  }
  .menu-info-modal__body .origin-table {
    min-width: 600px;
  }
  .menu-info-modal__body .scroll-hint {
    display: block;
    font-size: 11px;
    color: #888;
    margin: 12px 0 8px;
  }
  .menu-info-modal__body .origin-summary {
    font-size: 12px;
    padding: 14px;
    min-height: 70px;
  }
  .menu-info-modal__body .notes {
    font-size: 10px;
    padding-left: 0;
    padding-right: 0;
    gap: 6px;
    flex-direction: column;
    padding-top: 10px;
    margin-top: 10px;
  }
  .menu-info-modal__body .table-scroll {
    background: linear-gradient(90deg, white, white);
  }
}

@media (max-width: 600px) {
  .menu-info-modal__title {
    font-size: 18px;
    min-height: 50px;
    padding: 15px 8px;
  }
}

@media (max-width: 480px) {
  .menu-info-modal__title,
  .menu-info-modal__body h2 {
    font-size: 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .menu-info-modal__body * {
    scroll-behavior: auto;
  }
}

@media (max-width: 880px) {
  .menu-info-modal {
    padding: 12px;
  }
  .menu-info-modal__dialog {
    padding: 40px 14px 14px;
    border-radius: 20px;
    max-height: calc(100dvh - 24px);
  }
  .menu-info-modal__close {
    top: 8px;
    right: 12px;
    font-size: 26px;
  }
}
@media screen and (max-width: 640px) {
  .menu_wrap .menu_banner {
    width: 100%;
    height: auto;
    aspect-ratio: 360 / 250;
  }
  .menu_wrap .menu_banner .swiper-wrapper,
  .menu_wrap .menu_banner .swiper-slide {
    height: 100%;
  }
}
@media (max-width: 1080px) {
}
@media (max-width: 640px) {
  .brand02 .b02-inner {
    width: calc(100% - 40px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .brand02 .b02-marquee-track {
    animation: none;
  }
  .brand02 .b02-marquee-group[aria-hidden] {
    display: none;
  }
}

@media (min-width: 641px) and (max-width: 1080px) {
}
@media (max-width: 640px) {
  .brand_wrap:has(.brand02) > .sub_01_lnb {
    background-image: url("../img/brand/gnb_banner_m.webp");
  }
}
@media (max-width: 960px) {
  .brand02.b02-motion .b02-story > .b02-reveal {
    --b02-delay: 0.12s !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .brand02 .b02-ink,
  .brand02 .b02-type > span,
  .brand02 .b02-about-heading > p {
    opacity: 1;
    animation: none;
  }
}
@media (max-width: 960px) {
}

@media (max-width: 880px) {
  .store-grand-open .grand-open-card__badge-wrap {
    width: clamp(82px, 40%, 104px);
  }
  .store-grand-open .grand-open-card__badge span {
    font-size: 12px;
    letter-spacing: 0;
    line-height: 1.35;
  }
}
@media (max-width: 1080px) {
  .store_wrap .bo_topbox {
    margin-top: 0;
  }
  .store_wrap .store_title {
    margin-bottom: 25px;
  }
}
@media (max-width: 880px) {
  .menu_wrap .tab_navbox {
    height: 70px;
    padding: 5px clamp(5px, 1vw, 9px);
  }
  .menu_wrap .tab_navbox .tab_nav {
    height: 100%;
    padding: 0;
  }
  .menu-info-modal .menu-info-modal__dialog {
    width: 90%;
    max-height: 70vh;
    max-height: 70dvh;
    padding: 38px 12px 12px;
  }
  .menu-info-modal .menu-info-modal__close {
    top: 5px;
    right: 10px;
  }
  .store-grand-open .grand-open-card__badge span {
    font-size: clamp(10px, 3.4cqw, 12px);
    font-weight: 400;
    line-height: 1.35;
    letter-spacing: 0;
  }
}
.menu_wrap .tab_navbox {
  height: clamp(44px, calc(32px + 2.5vw), 70px);
  padding: clamp(4px, 0.45vw, 6px);
  gap: clamp(4px, 0.45vw, 6px);
  box-sizing: border-box;
}
.menu_wrap .tab_navbox .tab_nav {
  height: 100%;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(12px, calc(10px + 0.45vw), 16px);
  line-height: 1;
}
.menu_wrap .tab_navbox .tab_nav a {
  height: 100%;
  padding: 0;
  font-size: inherit;
  line-height: 1;
}
.store-grand-open .grand-open-card__info p {
  line-height: 1;
}
@media (max-width: 1080px) {
  .store_wrap .store_title {
    margin-top: clamp(44px, 6vw, 64px);
    margin-bottom: 20px;
  }
  .store-grand-open .store-grand-open__heading {
    margin-bottom: 20px;
  }
  .store_wrap .board_cont {
    padding-top: 0;
  }
  .store_wrap .bo_topbox {
    margin-top: 0;
  }
  .store_wrap .bo_topbox .bo_sch_wrap {
    width: 100%;
    max-width: 888px;
    margin-inline: auto;
    min-width: 0;
  }
  .store_wrap .bo_topbox .bo_sch_wrap .sch_box_wrap {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 12px clamp(16px, 2.5vw, 28px);
  }
  .store_wrap .bo_topbox .bo_sch_wrap form {
    min-width: 0;
  }
  .store_wrap .bo_topbox .bo_sch_wrap .bbs_top_ul3 {
    flex: 1;
    min-width: 0;
  }
  .store_wrap .bo_topbox .bo_sch_wrap .bbs_top_ul3 .b_inp {
    width: 100%;
    min-width: 0;
  }
}
@media (max-width: 880px) {
  .menu-info-modal .menu-info-modal__dialog {
    max-height: 85dvh;
  }
}
@media (min-width: 881px) {
  .menu-info-modal .menu-info-modal__dialog {
    width: 1000px;
    max-width: 100%;
    padding: 35px 58px;
    box-sizing: border-box;
  }
  .menu-info-modal .menu-info-modal__close {
    position: static;
    align-self: flex-end;
    flex: 0 0 25px;
    width: 25px;
    height: 25px;
    margin: 0 0 10px;
    padding: 0;
    display: grid;
    place-items: center;
    font-size: 25px;
    line-height: 1;
  }
}
@media (max-width: 880px) {
  .menu-info-modal .menu-info-modal__close {
    width: 25px;
    height: 25px;
    font-size: 25px;
    line-height: 1;
  }
}
@media (max-width: 1080px) {
  .brand02 .b02-logos {
    padding: 30px 25px;
    gap: 20px;
  }
  .menu_wrap .menu_card {
    height: 100%;
  }
}
@media (max-width: 960px) {
  .brand02 .b02-about {
    flex-direction: column;
    min-height: 0;
    gap: clamp(36px, 7.5vw, 72px);
    padding: clamp(80px, 14vw, 135px) 24px clamp(30px, 6.25vw, 60px);
    text-align: center;
  }
  .brand02 .b02-about::before {
    inset: 0 0 auto;
    width: 100%;
    height: 100%;
    background: url("../img/brand/aboutphoto_m.webp") top center/100% auto
      no-repeat;
    mask-image: linear-gradient(#000 55%, transparent 95%);
  }
  .brand02 .b02-about > .b02-heading {
    flex: none;
    padding: 0;
  }
  .brand02 .b02-story {
    flex: none;
    width: 100%;
    max-width: 620px;
    padding: 0;
  }
  .brand02 .b02-family {
    flex-direction: column;
    gap: 50px;
    padding: 90px 24px 55px;
    text-align: center;
    background-image: url("../img/brand/wearetmt_bg_m.webp");
  }
  .brand02 .b02-family-copy {
    gap: 35px;
  }
  .brand02 .b02-family-write {
    width: min(65%, 210px);
  }
  .brand02 .b02-slogan-layout {
    flex-direction: column;
    gap: 22px;
  }
  .brand02 .b02-slogan-copy,
  .brand02 .b02-choices {
    flex: none;
    width: 100%;
  }
  .brand02 .b02-choices {
    max-width: 500px;
  }
}
@media (max-width: 640px) {
  .brand02 {
    --b02-section-space: clamp(30px, 6.5104vw, 125px);
    --b02-content-gap: 20px;
    --b02-heading-size: clamp(24px, 7.1247vw, 32px);
    --b02-subheading-size: 28px;
    --b02-caption-size: 16px;
    --b02-word-size: clamp(44px, 12.9771vw, 54px);
  }
  .brand02 .b02-inner {
    width: calc(100% - 40px);
  }
  .brand02 .b02-story {
    gap: clamp(20px, 5.1vw, 28px);
  }
  .brand02 .b02-story h3 {
    font-size: 24px;
    line-height: 1.3333;
  }
  .brand02 .b02-story p {
    font-size: 16px;
    line-height: 1.65;
  }
  .brand02 .b02-story .b02-handwriting {
    font-size: 29px;
    display: flex;
    justify-content: center;
  }
  .brand02 .b02-handwriting-text {
    display: block;
  }
  .brand02 .b02-family p {
    font-size: 15px;
    line-height: 1.65;
  }
  .brand02 .b02-identity {
    padding-block-start: 60px;
  }
  .brand02 .b02-identity > .b02-heading {
    padding-block-end: 20px;
  }
  .brand02 .b02-logos {
    flex-direction: column;
    gap: 20px;
    padding: 30px 25px;
    background-size: 15px 15px;
  }
  .brand02 .b02-logos figure {
    flex: none;
    width: 100%;
    gap: 10px;
  }
  .brand02 .b02-logos img {
    height: 130px;
    max-width: 240px;
  }
  .brand02 .b02-logos figure:last-child img {
    height: 75px;
  }
  .brand02 .b02-logos figcaption {
    font-size: 16px;
  }
  .brand02 .b02-slogan-copy {
    gap: 5px;
  }
  .brand02 .b02-slogan-copy h3 {
    font-size: clamp(44px, 7vw, 90px);
  }
  .brand02 .b02-slogan-copy p {
    padding-block-start: 10px;
  }
  .brand02 .b02-word-line {
    gap: 18px;
  }
  .brand02 .b02-choices {
    gap: 10px;
    width: 90%;
  }
  .brand02 .b02-choices li {
    font-size: 26px;
    padding: calc(9px + var(--b02-supersize-optical-offset)) 12px
      calc(9px - var(--b02-supersize-optical-offset));
  }
  .brand02.b02-motion .b02-scroll-flow {
    top: var(--b02-header-height,60px);
  }
  .brand02 .b02-color-grid {
    gap: 10px;
  }
  .brand02 .b02-color-grid > div {
    padding: 20px 16px;
    font-size: 15px;
  }
  .brand02 .b02-color-grid span {
    font-size: 12px;
  }
  .brand02 .b02-goods {
    gap: 20px;
    padding-block-end: 40px;
  }
  .brand02 .b02-goods .b02-heading {
    text-align: left;
    margin-inline: auto;
    padding-block-end: 5px;
  }
  .brand02 .b02-goods .b02-heading h2 {
    font-size: var(--b02-subheading-size);
    line-height: 1.2;
  }
  .brand02 .b02-marquee {
    padding: 25px 0;
  }
  .brand02 .b02-marquee-group {
    gap: 15px;
    padding-inline-end: 15px;
  }
}
@media (max-width: 499px) {
  .brand02 {
    --b02-subheading-size: 24px;
    --b02-caption-size: 15px;
  }
  .brand02 .b02-logos figcaption {
    font-size: 15px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .brand02 .b02-word-track > span {
    transition: none;
  }
  .brand02 .b02-marquee {
    overflow-x: auto;
  }
}
@media (max-width: 1080px) {
  .menu_wrap .pizza_item .menu-touch-prices {
    --price-number: clamp(13px, 3.6vw, 16px);
    --price-currency: clamp(10px, 2.7vw, 12px);
    --price-chip: 20px;
    --price-chip-font: 10px;
    --price-amount-gap: 2px;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    width: 100%;
    color: #000;
  }
  .menu_wrap .menu_set_catalog .menu-touch-prices {
    --price-number: clamp(18px, 4.6vw, 26px);
    --price-currency: clamp(14px, 3.6vw, 20px);
    --price-chip: 23px;
    --price-chip-font: 12px;
    --price-amount-gap: 4px;
  }
  .menu_wrap .menu-touch-detail .menu_price_note {
    color: #de2027;
    font-size: 12px;
  }
}
@media (max-width:1440px) {
  .fr-reviews li p br {
    display: none;
  }
}
@media (max-width:1100px) {
  .fr-reorder__layout {
    flex-direction: column;
  }
  .fr-reorder__layout > .fr-gauge {
    flex: none;
    width: min(480px,85%);
  }
  .fr-reorder__layout > .fr-reviews {
    flex: none;
    width: 100%;
  }
}
@media (max-width:640px) {
  .fr-talk__stage {
    padding-block: 65px 0;
  }
  .fr-talk__foreground {
    width: 85%;
  }
  .fr-talk__phone {
    width: 70%;
    left: 15%;
  }
  .fr-talk__card {
    min-height: 0;
    padding: 12px;
    gap: 8px;
  }
  .fr-talk__card h3 {
    font-size: clamp(18px,4.5vw,20px);
  }
  .fr-talk__card dd {
    font-size: 16px;
  }
  .fr-talk__card dl > div {
    padding-block: 3px;
  }
}
@media (max-width: 960px) {
  .fr-dev {
    --fr-section-space: 60px;
  }
  .fr-inner {
    width: calc(100% - 40px);
  }
  .fr-stack {
    gap: 32px;
  }
  .fr-heading {
    gap: 18px;
  }
  .fr-hero {
    padding-block: 100px clamp(36px,6.6vh,65px);
  }
  .fr-hero h1 {
    padding-left: 0;
    font-size: clamp(30px,3.2vw,32px);
  }
  .fr-hero__words strong {
    font-size: clamp(30px,3.8vw,36px);
    -webkit-text-stroke-width: 4px;
  }
  .fr-hero__words strong::before {
    border-width: 2px;
  }
  .fr-hero__words p {
    font-size: 16px;
  }
  .fr-conquer {
    min-height: 650px;
    padding-block: 100px 70px;
    gap: 40px;
  }
  .fr-conquer__line {
    font-size: clamp(40px,8vw,76px);
  }
  .fr-conquer h2 > strong {
    font-size: clamp(88px,19vw,180px);
    -webkit-text-stroke-width: 10px;
  }
  .fr-conquer__line b,.fr-conquer__line em {
    -webkit-text-stroke-width: 4px;
  }
  .fr-conquer__caption {
    font-size: 18px;
  }
  .fr-pizza {
    width: 30%;
  }
  .fr-growth__layout,.fr-reorder__layout,.fr-award__layout,.fr-contact__layout {
    gap: 30px;
  }
  .fr-truth__cards {
    gap: 14px;
  }
  .fr-truth__cards li {
    max-width: calc((100% - 14px)/2);
    padding: 14px;
    gap: 15px;
  }
  .fr-truth__image > img:first-child {
    height: 110px;
  }
  .fr-ranking {
    padding: 20px;
  }
  .fr-ranking ol {
    height: 518px;
    gap: 12px;
  }
  .fr-ranking li {
    min-height: 94px;
    width: calc(50% - 6px);
    padding: 12px;
    gap: 8px;
  }
  .fr-ranking small {
    font-size: 10px;
  }
  .fr-medal {
    width: 46px;
    font-size: 28px;
  }
  .fr-ranking li strong {
    font-size: 22px;
  }
  .fr-store-name {
    font-size: 13px;
    padding: 3px 10px;
  }
  .fr-reviews li {
    padding: 16px 12px;
  }
  .fr-point__slider {
    min-height: 520px;
    height: 70svh;
  }
  .fr-point__overlay {
    padding-block: 35px;
  }
  .fr-point__text h3 {
    font-size: 40px;
  }
  .fr-point__text p {
    font-size: 18px;
  }
  .fr-territory__layout {
    gap: 30px;
  }
  .fr-territory__copy {
    flex: 1;
  }
  .fr-territory__art {
    flex: 1.2;
  }
  .fr-principles {
    gap: 14px;
  }
  .fr-principles li > div {
    padding: 20px;
  }
  .fr-principles h3 {
    font-size: 28px;
  }
  .fr-benefits__layout {
    gap: 25px;
  }
  .fr-benefits__slider h3 {
    font-size: 18px;
  }
  .fr-cost__tables {
    gap: 24px;
  }
  .fr-cost__tables h3 {
    font-size: 21px;
  }
  .fr-cost__tables h3 small {
    display: block;
    padding-top: 8px;
  }
  .fr-procedure li {
    flex-basis: calc((100% - 20px)/2);
  }
  .fr-contact__layout {
    flex-direction: column;
    align-items: stretch;
    max-width: 630px;
  }
  .fr-form {
    flex: auto;
  }
  .fr-contact__intro .fr-title,.fr-contact__intro > p {
    text-align: center;
  }
  .fr-benefits__slider .swiper-wrapper,.fr-profit__slider .swiper-wrapper {
    gap: 0;
  }
  .fr-benefits__slider .swiper-slide,.fr-profit__slider .swiper-slide {
    flex: none;
  }
  .fr-profit__slider {
    overflow: visible;
    padding-block: 0 24px;
  }
  .fr-profit__slider .fr-profit__repeat {
    display: block;
  }
  .fr-profit__slider .swiper-slide {
    transition: transform .7s;
    transform: translateY(0);
    z-index: 1;
  }
  .fr-profit__slider .swiper-slide-active {
    transform: translateY(18px);
    z-index: 2;
  }
  .fr-profit {
    overflow: hidden;
  }
  .fr-youtube {
    --youtube-card-width: clamp(210px,27vw,260px);
  }
  .fr-benefits__slider .swiper-wrapper {
    transition-timing-function: linear;
  }
  .fr-dev.fr-motion .fr-benefits__slider [data-fr-reveal] {
    opacity: 1;
    animation: none;
    transform: none;
  }
  .fr-cost__tables {
    flex-direction: column;
  }
  .fr-cost__tables > div {
    flex: auto;
  }
}
@media (max-width: 640px) {
  .fr-dev {
    --fr-section-space: 45px;
  }
  .fr-inner {
    width: calc(100% - 32px);
  }
  .fr-stack {
    gap: 26px;
  }
  .fr-title {
    font-size: 32px;
  }
  .fr-heading p {
    font-size: 16px;
  }
  .fr-mobile {
    display: block;
  }
  .fr-desktop {
    display: none;
  }
  .fr-hero {
    padding-block: calc(var(--fr-header-height,64px) + 24px) max(32px,9.2dvh);
  }
  .fr-hero__content {
    width: calc(100% - 48px);
    gap: 24px;
  }
  .fr-hero h1 {
    padding: 0;
    font: italic 400 clamp(23px,6.6vw,30px)/1.15 var(--font-sandoll-press);
    letter-spacing: -.03em;
    -webkit-text-stroke: 2px #000;
    paint-order: stroke fill;
  }
  .fr-hero__words {
    flex-direction: column;
    gap: 0;
  }
  .fr-hero__words li {
    flex: auto;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    text-align: left;
    gap: 12px;
    padding-block: 14px;
  }
  .fr-hero__words li + li {
    border: 0;
    padding-inline-start: 0;
  }
  .fr-hero__words li + li::after {
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    transform: none;
  }
  .fr-hero__words li:first-child {
    padding-top: 0;
  }
  .fr-hero__words li:last-child {
    padding-bottom: 0;
  }
  .fr-hero__words strong {
    flex: none;
    font-size: clamp(24px,6.8vw,30px);
    -webkit-text-stroke-width: 2px;
  }
  .fr-hero__words p {
    min-width: 0;
    font-size: clamp(14px,3.8vw,16px);
    font-weight: 700;
    line-height: 1.4;
    text-align: right;
    word-break: keep-all;
  }
  .fr-hero__words strong::before {
    background: var(--main-red);
  }
  .fr-hero__words li:nth-child(2) strong::before {
    background: var(--main-green);
  }
  .fr-hero__words li:nth-child(3) strong::before {
    background: var(--fr-yellow);
  }
  .fr-conquer {
    min-height: 0;
    justify-content: flex-start;
    padding-block: 40px 32px;
    gap: 28px;
  }
  .fr-conquer__line {
    font-size: clamp(38px,10vw,62px);
  }
  .fr-conquer h2 > strong {
    font-size: clamp(85px,23vw,142px);
  }
  .fr-conquer__caption {
    font-size: 16px;
    padding-inline: 20px;
  }
  .fr-conquer__title {
    width: calc(100% - 40px);
  }
  .fr-pizzas {
    position: relative;
    inset: auto;
    display: flex;
    align-items: flex-end;
    width: 100%;
    padding-inline: 12px;
  }
  .fr-pizza {
    position: relative;
    width: 50%;
    flex: 1;
    min-width: 0;
  }
  .fr-pizza--tmt,.fr-pizza--truffle {
    inset: auto;
  }
  .fr-pizza figcaption {
    font-size: clamp(20px,5vw,24px);
  }
  .fr-conquer__arrow {
    width: 36px;
    z-index: 4;
  }
  .fr-conquer__arrow--left {
    left: 6%;
    top: 10%;
    bottom: auto;
  }
  .fr-conquer__arrow--right {
    right: 5%;
    top: 0;
    bottom: auto;
  }
  .fr-truth .fr-title {
    font-size: clamp(30px,9.16vw,36px);
    line-height: 1.27778;
  }
  .fr-truth .fr-inner {
    width: calc(100% - 48px);
    gap: 28px;
  }
  .fr-truth__cards {
    flex-direction: column;
    flex-wrap: nowrap;
    width: 100%;
    max-width: 360px;
    gap: 22px;
  }
  .fr-truth__cards li {
    flex: none;
    width: 100%;
    max-width: none;
    padding: 14px 18px 20px;
    gap: 12px;
  }
  .fr-truth__image {
    padding: 8px;
  }
  .fr-truth__image > img:first-child {
    height: 92px;
    max-width: 100%;
  }
  .fr-truth__cards h3 {
    font-size: clamp(17px,6.5cqw,26px);
    word-break: keep-all;
  }
  .fr-truth__cards p {
    font-size: clamp(18px,5.09vw,20px);
  }
  .fr-truth__last {
    font-size: 28px;
    word-break: keep-all;
  }
  .fr-sales .fr-inner {
    gap: 12px;
  }
  .fr-sales__heading {
    padding-bottom: 16px;
  }
  .fr-sales__heading .fr-title {
    font-size: var(--fr-heading-size);
    line-height: 1.2;
  }
  .fr-sales__peak {
    padding: 20px 50px 28px;
    width: 100%;
    gap: 5px;
    border-radius: 12px;
    font-size: 16px;
  }
  .fr-sales__peak strong {
    font-size: clamp(24px,7.63vw,30px);
  }
  .fr-sales__peak .fr-crown {
    width: 56px;
  }
  .fr-sales__peak .fr-laurel {
    width: 35px;
    bottom: 20px;
  }
  .fr-laurel--left {
    left: 24px;
  }
  .fr-laurel--right {
    right: 24px;
  }
  .fr-ranking {
    padding: 16px;
    gap: 16px;
    border-radius: 12px;
  }
  .fr-ranking h3 {
    font-size: clamp(20px,5.6vw,22px);
    line-height: 28px;
    gap: 8px;
  }
  .fr-ranking h3 > span {
    white-space: nowrap;
  }
  .fr-ranking h3::before,.fr-ranking h3::after {
    width: 27px;
  }
  .fr-ranking ol {
    height: auto;
    max-height: none;
    flex-wrap: nowrap;
    gap: 10px;
  }
  .fr-ranking li {
    width: 100%;
    min-height: 60px;
    border-radius: 10px;
    padding: 8px 12px;
    gap: 8px;
  }
  .fr-ranking li strong {
    font-size: clamp(18px,5.6vw,22px);
  }
  .fr-ranking small {
    font-size: 8px;
  }
  .fr-store-name {
    font-size: 10px;
    padding: 3px 10px 2px;
  }
  .fr-medal {
    width: 40px;
    font-size: 26px;
  }
  .fr-ranking li > div {
    gap: 3px;
  }
  .fr-ticker {
    --ticker-height: clamp(40px,10vw,48px);
    padding: 0;
  }
  .fr-growth__layout,.fr-award__layout,.fr-contact__layout {
    flex-direction: column;
    align-items: stretch;
  }
  .fr-chart {
    flex: none;
    width: 100%;
  }
  .fr-growth__copy {
    flex: none;
    gap: 12px;
  }
  .fr-growth__copy h2 {
    font-size: clamp(58px,18vw,90px);
  }
  .fr-growth__copy h3 {
    font-size: clamp(25px,7.63vw,36px);
  }
  .fr-growth__paragraphs {
    padding-top: 8px;
  }
  .fr-chart__badge .fr-star__text strong {
    font-size: clamp(20px,6.1vw,30px);
    -webkit-text-stroke: 1px #000;
  }
  .fr-chart__badge .fr-star__text small {
    font-size: clamp(11px,3.05vw,16px);
  }
  .fr-reviews li {
    width: calc((100% - 10px)/2);
    padding: 12px 6px;
    font-size: clamp(11px,3.05vw,14px);
  }
  .fr-reviews li p br {
    display: none;
  }
  .fr-stars {
    letter-spacing: 0;
  }
  .fr-point {
    position: relative !important;
  }
  .fr-point__band {
    font-size: 42px;
    padding-block: 12px;
  }
  .fr-point__slider {
    min-height: 470px;
    height: 65svh;
  }
  .fr-point__text h3 {
    font-size: clamp(30px,10.18vw,40px);
  }
  .fr-point__label {
    font-size: 20px;
  }
  .fr-point__text p {
    font-size: 18px;
  }
  .fr-point__text p br {
    display: none;
  }
  .fr-point__overlay {
    padding-block: 30px;
  }
  .fr-point__controls {
    gap: 6px;
  }
  .fr-territory__layout {
    flex-direction: column;
    align-items: stretch;
  }
  .fr-territory__copy h3 {
    font-size: 80px;
  }
  .fr-territory__art {
    flex: none;
    width: 100%;
  }
  .fr-distance strong {
    font-size: 42px;
  }
  .fr-interior {
    gap: 28px;
  }
  .fr-interior > .fr-heading {
    padding-inline: 16px;
  }
  .fr-interior__rows {
    gap: 20px;
  }
  .fr-brand > .fr-inner {
    width: calc(100% - 56px);
  }
  .fr-brand .fr-heading > p:last-child {
    line-height: 1.5;
  }
  .fr-principles {
    flex-direction: column;
    gap: 10px;
  }
  .fr-principles li > img {
    aspect-ratio: 337/170;
    min-height: 150px;
  }
  .fr-principles li > div {
    justify-content: center;
    padding: 20px 18px;
    gap: 10px;
  }
  .fr-principles h3 {
    font-size: clamp(22px,6vw,28px);
  }
  .fr-principles p {
    font-size: clamp(14px,3.8vw,17px);
  }
  .fr-youtube {
    --youtube-card-width: clamp(120px,38vw,210px);
  }
  .fr-youtube a {
    border-radius: clamp(8px,2.2vw,14px);
  }
  .fr-brand {
    gap: 30px;
  }
  .fr-brand__more {
    padding-inline: 16px;
    font-size: 15px;
  }
  .fr-brand__more a {
    padding: 11px 28px;
    font-size: 20px;
    gap: 9px;
  }
  .fr-award__layout {
    width: 100%;
    gap: 28px;
  }
  .fr-dev .fr-award {
    padding-bottom: 0;
  }
  .fr-award__main {
    position: relative;
    right: auto;
    bottom: auto;
    width: min(100%,430px);
    max-width: none;
    align-self: center;
  }
  .fr-award__copy {
    max-width: 100%;
    align-items: center;
    gap: 10px;
    padding: 0 28px;
    text-align: center;
  }
  .fr-award__copy .fr-title {
    font-size: var(--fr-heading-size);
    line-height: 1.16667;
    text-align: center;
  }
  .fr-award__copy p {
    font-size: var(--fr-subheading-size);
    line-height: 1.5;
  }
  .fr-award__copy ul {
    width: 100%;
    padding-top: 24px;
  }
  .fr-benefits .fr-title {
    line-height: 1.142857;
  }
  .fr-benefits__layout {
    flex-direction: column;
    align-items: center;
    gap: 24px;
    padding-top: 24px;
  }
  .fr-benefits__star {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    max-width: 430px;
  }
  .fr-benefits__copy {
    width: 100%;
    gap: 28px;
  }
  .fr-benefits__copy .fr-pill {
    align-self: center;
  }
  .fr-star__text strong {
    font-size: 42px;
  }
  .fr-benefits__copy h3 {
    padding-top: 0;
    font-size: 22px;
    word-break: keep-all;
  }
  .fr-benefits__slider h3 {
    min-height: 42px;
    padding: 4px 2px;
    font-size: clamp(14px,3.8vw,18px);
  }
  .fr-benefits__slider p {
    min-height: 46px;
    padding: 6px 2px;
    font-size: clamp(18px,4.6vw,20px);
  }
  .fr-benefits__slider h3.fr-benefit-long-label {
    font-size: clamp(11px,2.9vw,14px);
    padding: 2px;
  }
  .fr-profit > .fr-inner {
    width: 100%;
  }
  .fr-profit .fr-heading,.fr-profit__bottom {
    padding-inline: 16px;
  }
  .fr-cost .fr-title {
    font:
      800 var(--fr-heading-size)/1.16667 'Pretendard',sans-serif;
    letter-spacing: -.08em;
  }
  .fr-cost__tabs {
    gap: 8px;
  }
  .fr-cost__tabs button {
    font-size: 14px;
    padding: 10px 8px;
  }
  .fr-cost__tables {
    flex-direction: column;
    gap: 12px;
  }
  .fr-cost > .fr-inner {
    width: calc(100% - 16px);
  }
  .fr-cost__tables > div {
    padding: 0;
    min-height: 0;
    border-radius: 6px;
  }
  .fr-cost__tables h3 {
    font-size: 18px;
    padding: 20px 18px 12px;
  }
  .fr-cost__tables h3 small {
    display: inline;
    font-size: 12px;
    padding: 0;
  }
  .fr-cost__tables dl > div {
    padding: 9px 18px;
    gap: 8px;
    font-size: 13px;
  }
  .fr-cost__tables dd {
    gap: 8px;
  }
  .fr-pay-table dd small {
    font-size: 12px;
    letter-spacing: -.5px;
  }
  .fr-cost__tables dt {
    letter-spacing: -1px;
  }
  .fr-pay-table dd b {
    font-size: 14px;
  }
  .fr-pay-table > p {
    padding: 12px 18px;
    font-size: 20px;
  }
  .fr-cost__note {
    font-size: 11px;
    padding: 8px 8px 0;
  }
  .fr-cost__total strong {
    font-size: 38px;
  }
  .fr-cost__total del {
    font-size: 18px;
  }
  .fr-zero {
    width: 76%;
    max-width: 300px;
    left: 12%;
    top: 12%;
  }
  .fr-contact__layout {
    width: calc(100% - 16px);
    gap: 18px;
  }
  .fr-contact__intro {
    gap: 14px;
  }
  .fr-contact__intro .fr-title {
    font:
      800 var(--fr-heading-size)/1.16667 'Pretendard',sans-serif;
    letter-spacing: -.08em;
    text-align: center;
  }
  .fr-contact__intro > p {
    font-size: var(--fr-subheading-size);
    text-align: center;
  }
  .fr-progress {
    padding-top: 4px;
    gap: 8px;
  }
  .fr-progress > div:first-child {
    font-size: 13px;
  }
  .fr-progress__number {
    display: none;
  }
  .fr-progress [role='progressbar'] {
    height: 7px;
  }
  .fr-form {
    padding: 0;
    background: transparent;
    gap: 14px;
  }
  .fr-form fieldset {
    gap: 14px;
  }
  .fr-form input:not([type='checkbox']),.fr-form select,.fr-form textarea {
    padding: 14px 12px;
    border: 1px solid #e6e6e6;
    border-radius: 10px;
    font-size: 14px;
  }
  .fr-field__placeholder {
    left: 12px;
    font-size: 14px;
    font-weight: 400;
  }
  .fr-form .fr-select-field {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    padding: 14px 12px;
    background: white;
  }
  .fr-select-field > span {
    font-size: 20px;
  }
  .fr-form .fr-select-field select {
    font-size: 20px;
    padding: 4px 22px 4px 0;
  }
  .fr-form .fr-consent {
    justify-content: center;
    font-size: 12px;
    color: #888;
    padding: 0;
  }
  .fr-consent input {
    width: 16px;
    height: 16px;
  }
  .fr-consent input:checked::after {
    left: 4px;
    top: 1px;
    width: 4px;
    height: 8px;
  }
  .fr-form button {
    padding: 14px 20px;
    font-size: 14px;
  }
  .fr-form__notice {
    color: #888;
    font-size: 12px;
  }
  .fr-form__actions {
    gap: 8px;
  }
  .fr-procedure .fr-title {
    font:
      800 var(--fr-heading-size)/1.16667 'Pretendard',sans-serif;
    letter-spacing: -.08em;
  }
  .fr-procedure ol {
    gap: 12px;
  }
  .fr-procedure li {
    flex-basis: calc((100% - 12px)/2);
    min-height: 225px;
    padding: 18px 8px;
    gap: 10px;
  }
  .fr-procedure h3 {
    font-size: 17px;
  }
  .fr-procedure p {
    font-size: 13px;
  }
  .fr-procedure li img {
    width: 60px;
    height: 60px;
  }
}
@media (max-width:360px) {
  .fr-reorder .fr-inner {
    width: calc(100% - 8px);
  }
  .fr-reviews li {
    padding-inline: 4px;
  }
}
@media(max-width:499.98px) {
  .menu_wrap .menu-touch-detail::after {
    padding: 2px;
  }
  .home02-menu-detail {
    border-width: 2px;
  }
}
@media(max-width:640px) {
  .fr-dev {
    overflow-x: clip;
    max-width: 100%;
    --stamp-scale: 1.45;
  }
  .fr-dev .fr-growth {
    overflow: clip;
  }
  .fr-growth__copy h2 {
    max-width: 100%;
  }
  .fr-dev .fr-growth__copy h3 {
    white-space: normal;
    font-size: clamp(24px,7vw,32px);
  }
  .fr-dev .fr-point__text p {
    font-size: 14px;
    line-height: 1.5;
    overflow-wrap: anywhere;
  }
  .fr-dev .fr-point__text h3 {
    font-size: clamp(24px,7vw,30px);
  }
  .fr-dev .fr-point__label {
    font-size: 17px;
  }
  .fr-ranking li,.fr-ranking li > div {
    min-width: 0;
  }
  .fr-dev .fr-chart {
    width: 94%;
    margin-inline: auto;
    max-width: 100%;
    overflow: visible;
  }
  .fr-dev .fr-point__slider {
    overflow: hidden;
  }
}
@media(max-width:960px) {
  .fr-dev .fr-territory__copy,.fr-dev .fr-territory__bottom {
    text-align: center;
  }
  .fr-dev .fr-territory__copy p {
    text-align: center;
  }
  .fr-dev .fr-territory__copy h3 {
    margin-inline: auto;
  }
  .fr-dev .fr-territory__copy {
    align-items: center;
  }
  .fr-dev .fr-territory__copy h3 {
    align-items: center;
  }
  .fr-dev .fr-territory__copy h3 img {
    margin-inline: auto;
    object-position: center;
  }
  .fr-dev .fr-talk__stage {
    padding-top: 30px;
  }
  .fr-dev .fr-benefits__star {
    width: 43%;
    max-width: 480px;
  }
  .fr-dev .fr-zero {
    width: 62%;
    max-width: 245px;
    left: 19%;
  }
  .fr-dev .fr-territory__layout {
    align-items: center;
  }
  .fr-dev .fr-talk__card {
    font-size: 12px;
    padding: 12px 8px;
  }
  .fr-dev .fr-talk__card h3 {
    font-size: 14px;
  }
  .fr-dev .fr-talk__phone {
    width: 58%;
    left: 21%;
  }
  .fr-dev .fr-talk__card dt,.fr-dev .fr-talk__card dd {
    font-size: 12px;
  }
  .fr-dev .fr-halftone {
    animation: none;
  }
  .fr-dev .fr-growth {
    overflow: visible;
  }
}
@media(max-width:640px) {
  .fr-dev .fr-benefits__star {
    width: 84%;
    max-width: 350px;
    margin-inline: auto;
  }
}
@media(max-width:1400px) {
  .home02-community__cards {
    height: 430px;
  }
  .home02-social {
    height: 205px;
    padding: 30px;
    border-radius: 28px;
  }
  .home02-social--youtube {
    height: 430px;
  }
  .home02-social__copy h3 {
    font-size: 24px;
  }
  .home02-social__copy p {
    font-size: 16px;
  }
  .home02-social__copy > span {
    font-size: 20px;
  }
  .home02-social__arrow {
    width: 56px;
  }
}
@media(max-width:960px) {
  .home02-inner {
    width: calc(100% - 32px);
  }
  .home02-brand__stage {
    min-height: 0;
    top: var(--home-header-height,60px);
    gap: 24px;
  }
  .home02-brand__photos .swiper-slide {
    width: calc((100% - 36px)/4.5);
  }
  .home02-notice__layout {
    display: flex;
    flex-direction: column;
    gap: 28px;
    padding-left: 0;
  }
  .home02-notice__slider {
    order: 1;
    flex: none;
    width: 100%;
  }
  .home02-notice__slider .swiper-slide {
    width: 46%;
  }
  .home02-notice__slider a {
    width: 100%;
    margin-left: 0;
    border-radius: 12px;
  }
  .home02-notice__slider h3 {
    font-size: clamp(16px,2.2vw,21px);
  }
  .home02-notice__slider time {
    font-size: clamp(13px,1.7vw,16px);
  }
  .home02-notice__slider a > div {
    padding: clamp(12px,2.4vw,24px) 10px clamp(10px,1.6vw,16px);
    gap: 8px;
  }
  .home02-notice__copy {
    position: relative;
    inset: auto;
    transform: none;
    width: 100%;
    order: 2;
    align-items: center;
    text-align: center;
    padding: 0 20px;
    gap: 22px;
  }
  .home02-notice__copy h3 {
    font-size: 28px;
  }
  .home02-notice__copy p {
    font-size: 16px;
  }
  .home02-notice__controls {
    display: none;
  }
  .home02-social {
    padding: 22px;
  }
  .home02-social__copy > span {
    font-size: 16px;
    padding: 4px 14px;
  }
  .home02-social__copy h3 {
    font-size: 20px;
  }
  .home02-social__copy p {
    font-size: 14px;
  }
  .home02-social__arrow {
    width: 42px;
  }
  .home02-social__cta {
    font-size: clamp(12px,2vw,18px);
    padding: 10px 14px;
  }
  .home02-search {
    height: 54px;
    padding: 12px 0;
  }
  .home02-search > span {
    font-size: 18px;
    padding-left: 30px;
    gap: 30px;
  }
  .home02-store__inner {
    padding-top: 27px;
  }
}
@media(max-width:960px) {
  .home02-menu__layout {
    flex-direction: column;
    gap: 16px;
    width: calc(100% - 48px);
    aspect-ratio: auto;
  }
  .home02-pizza--feature {
    flex: none;
    width: 100%;
    aspect-ratio: 516/668;
    padding: 6% 0 3%;
    gap: 2cqw;
  }
  .home02-pizza--new {
    order: 1;
  }
  .home02-pizza--best {
    order: 2;
  }
  .home02-menu__small {
    --menu-card-gap: 12px;
    order: 3;
    flex: none;
    width: 100%;
    gap: 12px;
  }
  .home02-pizza--small {
    height: auto;
    aspect-ratio: 240/320;
  }
}
@media(max-width:640px) {
  .home02 {
    --home-space: 44px;
  }
  .home02-desktop {
    display: none;
  }
  .home02-mobile {
    display: inline;
  }
  .home02-section {
    gap: 24px;
  }
  .home02-heading {
    gap: 8px;
    padding-inline: 12px;
  }
  .home02-heading h2 {
    font-size: 36px;
  }
  .home02-heading p {
    font-size: 18px;
    word-break: keep-all;
  }
  .home02-button {
    padding: 10px 32px;
    font-size: 14px;
  }
  .home02-outline {
    padding: 12px 26px;
    font-size: 14px;
  }
  .home02-brand {
    gap: 0;
    padding-bottom: 0;
  }
  .home02-brand__stage {
    min-height: 0;
    top: var(--home-header-height,54px);
    padding: 40px 0 24px;
    gap: 22px;
  }
  .home02-brand__title {
    font-size: clamp(42px,10.5vw,66px);
  }
  .home02-word {
    font-size: clamp(54px,17vw,76px);
    gap: 18px;
  }
  .home02-brand__stage > p {
    font-size: 17px;
    line-height: 1.5;
    max-width: 370px;
    text-wrap: balance;
  }
  .home02-brand__photos .swiper-slide {
    width: calc((100% - 20px)/2.5);
  }
  .home02-menu__layout {
    flex-direction: column;
    gap: 16px;
    width: calc(100% - 48px);
    aspect-ratio: auto;
  }
  .home02-pizza--feature {
    flex: none;
    width: 100%;
    aspect-ratio: 516/668;
    padding: 6% 0 3%;
    gap: 2cqw;
  }
  .home02-pizza--new {
    order: 1;
  }
  .home02-pizza--best {
    order: 2;
  }
  .home02-menu__small {
    --menu-card-gap: 12px;
    order: 3;
    flex: none;
    width: 100%;
    gap: 12px;
  }
  .home02-pizza--small {
    height: auto;
    aspect-ratio: 240/320;
  }
  .home02-notice {
    gap: 24px;
  }
  .home02-community__cards {
    display: none;
  }
  .home02-community__mobile {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    width: 100%;
  }
  .home02-video {
    width: 100%;
    padding-left: 24px;
  }
  .home02-video .swiper-slide {
    width: calc((100% - 14px)/1.25);
  }
  .home02-video a {
    display: block;
    position: relative;
    border-radius: 18px;
    overflow: hidden;
  }
  .home02-video img {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
  }
  .home02-video span {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    color: #fff;
    background: #e50020;
    border-radius: 12px;
    padding: 8px 18px;
    font-size: 24px;
  }
  .home02-community__caption {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    text-align: center;
    padding-inline: 20px;
  }
  .home02-community__caption h3 {
    font-family: 'Gmarket Sans','Pretendard',sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.05em;
  }
  .home02-community__caption p {
    font:
      500 16px/1.4 'Pretendard',sans-serif;
  }
  .home02-store__inner {
    width: calc(100% - 48px);
    padding-top: 26px;
  }
  .home02-map {
    aspect-ratio: 1.05;
    border-radius: 24px;
  }
  .home02-search {
    height: 52px;
    top: 0;
    width: 100%;
    padding: 10px 16px;
    border-radius: 100px;
  }
  .home02-search > span {
    font-size: 15px;
    gap: 18px;
    padding-right: 20px;
  }
  .home02-search img {
    width: 19px;
    height: 19px;
  }
  .home02-search span img {
    width: 10px;
  }
  .home02-search > img {
    right: 16px;
  }
  .home02-search > span {
    padding-left: 20px;
  }
  .home02-search::after {
    width: 52px;
  }
  .home02.is-motion .home02-search {
    padding-inline: 0;
    max-width: 52px;
  }
  .home02-store {
    padding-bottom: 16px;
  }
  .home02-marquee span {
    font-size: 64px;
  }
}
@media(prefers-reduced-motion:reduce) {
  .home02 *, .home02 *::before, .home02 *::after {
    animation: none!important;
    transition: none!important;
  }
  .home02-page #hero {
    position: relative;
  }
  .home02 [data-home-reveal] {
    opacity: 1!important;
    transform: none!important;
  }
  .home02-brand__story {
    height: auto;
  }
  .home02-brand__stage {
    position: relative;
    top: auto;
  }
}
