/* iPhone unfolded landscape only. Existing content, native viewport width. */
html.kt-iphone-tablet {
    --kt-tablet-gutter:20px;
    /* Keep iOS landscape text at its authored size; pinch zoom stays enabled. */
    -webkit-text-size-adjust:100%; text-size-adjust:100%;
}
html.kt-iphone-tablet body { min-width:0 !important; }
html.kt-iphone-tablet *,
html.kt-iphone-tablet *::before,
html.kt-iphone-tablet *::after { box-sizing:border-box; }
html.kt-iphone-tablet #mainQuick { display:none !important; }
html.kt-iphone-tablet div#header { height:auto !important; min-height:0 !important; position:relative !important; top:0 !important; }
html.kt-iphone-tablet div#header + div[style*="margin-top:110px"] { display:none !important; }

/* Shared header and a single row of touch navigation. */
html.kt-iphone-tablet #header .headerNavi,
html.kt-iphone-tablet #mainMenu .mainMenuNavi,
html.kt-iphone-tablet #mainTop,
html.kt-iphone-tablet #mainContents .mainContentsNavi,
html.kt-iphone-tablet #mainGoods .mainGoodsInner,
html.kt-iphone-tablet #subContainerNavi,
html.kt-iphone-tablet #footer .footerNavi,
html.kt-iphone-tablet #mainBanner > ul {
    width:calc(100% - 2 * var(--kt-tablet-gutter)) !important;
    max-width:1120px !important; min-width:0 !important;
    margin-left:auto !important; margin-right:auto !important;
}
html.kt-iphone-tablet #header .headerNavi {
    display:flex !important; align-items:center; justify-content:space-between;
    gap:20px; height:84px !important; padding:12px 0 !important;
}
html.kt-iphone-tablet #header .headerNavi h1 {
    position:static !important; float:none !important; width:auto !important;
    height:auto !important; margin:0 !important; padding:0 !important; transform:none !important;
}
html.kt-iphone-tablet #header .headerNavi h1 img { max-width:300px !important; width:100%; height:auto !important; }
html.kt-iphone-tablet #header .headerNavi .topBm,
html.kt-iphone-tablet #header .headerNavi .topCall { position:static !important; float:none !important; margin:0 !important; flex-shrink:0; }
html.kt-iphone-tablet div#header div#mainMenu,
html.kt-iphone-tablet div#header div#mainMenu .mainMenuNavi { height:auto !important; position:relative; }
html.kt-iphone-tablet div#header div#mainMenu { z-index:50; }
html.kt-iphone-tablet div#mainMenu ul.mainMenuList {
    display:flex !important; flex-wrap:nowrap !important; justify-content:space-between;
    width:100% !important; min-width:0 !important; height:auto !important;
    margin:0 !important; padding:0 !important;
}
html.kt-iphone-tablet div#mainMenu ul.mainMenuList::after { display:none !important; }
html.kt-iphone-tablet div#mainMenu ul.mainMenuList > li {
    width:auto !important; min-width:0; flex:1 1 auto; float:none !important; position:relative;
    height:auto !important; margin:0 !important;
}
html.kt-iphone-tablet div#mainMenu ul.mainMenuList > li > a {
    display:flex !important; align-items:center; justify-content:center;
    min-height:46px; height:auto !important; padding:12px 4px !important;
    font-size:clamp(11px,1.42vw,14px) !important; line-height:1.4 !important; white-space:nowrap !important;
}
html.kt-iphone-tablet div#mainMenu ul.mainMenuList > li > ul.mainMenuSub {
    width:280px !important; max-width:calc(100vw - 40px) !important;
    max-height:calc(100vh - 190px); overflow-y:auto; z-index:100;
}
html.kt-iphone-tablet.kt-fold-touch div#mainMenu ul.mainMenuList > li:nth-child(-n+3).kt-fold-menu-open > ul.mainMenuSub {
    left:0 !important; right:auto !important; transform:translateY(0) !important;
}
html.kt-iphone-tablet.kt-fold-touch div#mainMenu ul.mainMenuList > li:nth-last-child(-n+3).kt-fold-menu-open > ul.mainMenuSub {
    left:auto !important; right:0 !important; transform:translateY(0) !important;
}

/* Homepage: resize the hero and reflow cards instead of scaling the page. */
html.kt-iphone-tablet #mainImg .mainImgNavi { width:100% !important; min-width:0 !important; }
html.kt-iphone-tablet #mainTop {
    display:grid !important; grid-template-columns:minmax(0,2.05fr) minmax(230px,1fr);
    gap:14px; height:auto !important; padding:18px 0 !important; align-items:start;
}
html.kt-iphone-tablet #mainTop::after { display:none !important; }
html.kt-iphone-tablet #mainScreen,
html.kt-iphone-tablet #mainTopRight { float:none !important; width:100% !important; min-width:0; margin:0 !important; }
html.kt-iphone-tablet #mainTop #mainScreen { height:auto !important; aspect-ratio:741 / 438; align-self:start; }
html.kt-iphone-tablet #mainTop #mainScreen .bx-wrapper,
html.kt-iphone-tablet #mainTop #mainScreen .bx-viewport { height:100% !important; margin:0 !important; }
html.kt-iphone-tablet #mainScreen .slides1,
html.kt-iphone-tablet #mainScreen .slides1 > li,
html.kt-iphone-tablet #mainScreen .slides1 > li > a { height:100% !important; }
html.kt-iphone-tablet #mainScreen img { max-width:100%; width:100%; height:100%; object-fit:contain; }
html.kt-iphone-tablet #mainTop #mainTopRight { height:auto !important; display:flex !important; flex-direction:column; gap:10px; }
html.kt-iphone-tablet #mainTopRight .ktPromo,
html.kt-iphone-tablet #mainTopRight .ktPhone,
html.kt-iphone-tablet #mainTopRight .ktActions { width:100% !important; min-width:0 !important; }
html.kt-iphone-tablet #mainTopRight .ktPromo { padding:14px !important; height:auto !important; min-height:136px; margin:0 !important; }
html.kt-iphone-tablet #mainTopRight .ktTitle { font-size:clamp(18px,2.2vw,23px) !important; line-height:1.3 !important; }
html.kt-iphone-tablet #mainTopRight .ktDesc { font-size:12px !important; line-height:1.5 !important; margin-top:12px !important; }
html.kt-iphone-tablet #mainTopRight .ktArt { width:68px !important; height:58px !important; top:12px !important; right:8px !important; }
html.kt-iphone-tablet #mainTopRight .ktPhone { padding:12px 16px !important; height:auto !important; margin:0 !important; }
html.kt-iphone-tablet #mainTopRight .ktNumber { font-size:clamp(23px,3vw,30px) !important; line-height:1.2 !important; }
html.kt-iphone-tablet #mainTopRight .ktPhoneLabel { font-size:13px !important; }
html.kt-iphone-tablet #mainTopRight .ktHours { font-size:11px !important; }
html.kt-iphone-tablet #mainTopRight .ktActions { height:auto !important; margin:0 !important; gap:8px !important; }
html.kt-iphone-tablet #mainTopRight .ktAction { padding:12px 8px !important; min-height:60px !important; }
html.kt-iphone-tablet #mainTopRight .ktAction strong { font-size:13px !important; }
html.kt-iphone-tablet #mainTopRight .ktAction small { font-size:10px !important; }
html.kt-iphone-tablet #mainTopRight .ktActionIcon { width:16px !important; height:16px !important; }
html.kt-iphone-tablet #mainTopRight .ktAction > span { min-width:0; }
html.kt-iphone-tablet #mainTopRight .ktAction strong,
html.kt-iphone-tablet #mainTopRight .ktAction small { white-space:normal !important; word-break:keep-all; overflow-wrap:anywhere; }
html.kt-iphone-tablet #mainTopRight .ktAction .ktActionIcon { flex:0 0 16px !important; margin-left:4px !important; }
html.kt-iphone-tablet #mainContents #mainAd,
html.kt-iphone-tablet #mainContents #mainList { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:12px; align-items:stretch; }
html.kt-iphone-tablet #mainContents #mainAd > li:last-child { grid-column:auto; width:100% !important; max-width:none; }
html.kt-iphone-tablet #mainContents #mainAd > li { aspect-ratio:362 / 190; min-height:0 !important; height:auto !important; }
html.kt-iphone-tablet #mainContents #mainAd > li > p,
html.kt-iphone-tablet #mainContents #mainAd .mainBanner,
html.kt-iphone-tablet #mainContents #mainAd .bx-wrapper,
html.kt-iphone-tablet #mainContents #mainAd .bx-viewport { height:100% !important; margin:0 !important; }
html.kt-iphone-tablet #mainContents #mainAd .slides2,
html.kt-iphone-tablet #mainContents #mainAd .slides2 > li { height:100% !important; }
html.kt-iphone-tablet #mainContents #mainAd > li > p > a,
html.kt-iphone-tablet #mainContents #mainAd .slides2 > li > a { height:100%; }
/* Legacy nested links create an empty anchor before the second banner. */
html.kt-iphone-tablet #mainContents #mainAd > li > a:empty,
html.kt-iphone-tablet #mainContents #mainAd > li > p > a:empty { display:none !important; }
html.kt-iphone-tablet #mainContents #mainAd img { max-width:100%; max-height:100%; height:100%; object-fit:contain; }
html.kt-iphone-tablet #mainContents #mainList .mainConsult { grid-column:auto; }
html.kt-iphone-tablet #mainContents #mainList .mainConsultLine { min-height:270px; padding:12px 10px !important; }
html.kt-iphone-tablet #mainContents .mainRealTit { font-size:clamp(12px,1.6vw,16px) !important; }
html.kt-iphone-tablet #mainContents .mainRealLine li { display:flex !important; justify-content:space-between; gap:2px; font-size:clamp(10px,1.2vw,12px) !important; }
html.kt-iphone-tablet #mainContents .mainRealLine li > span { float:none !important; width:auto !important; padding:0 !important; white-space:nowrap; }
html.kt-iphone-tablet #mainContents .mainRealLine li > span:nth-child(3) { display:none; }
html.kt-iphone-tablet #mainContents #mainList .mainRealTit { padding:16px 30px 14px 12px !important; }
html.kt-iphone-tablet #mainContents #mainList .mainRealTitText { font-size:14px !important; }
html.kt-iphone-tablet #mainContents #mainList .mainRealMore { right:10px; }
html.kt-iphone-tablet #mainContents #vTicker1,
html.kt-iphone-tablet #mainContents #vTicker2 { width:calc(100% - 24px) !important; margin:16px 12px !important; }
html.kt-iphone-tablet #mainContents #vTicker1 ul,
html.kt-iphone-tablet #mainContents #vTicker2 ul { width:100% !important; margin:0 !important; padding:0 !important; }
html.kt-iphone-tablet #mainContents #vTicker1 li,
html.kt-iphone-tablet #mainContents #vTicker2 li { margin:0 !important; padding-left:0 !important; }
html.kt-iphone-tablet #mainContents .mainRealLine li::before { display:none !important; }
html.kt-iphone-tablet #mainContents .consultTitle { font-size:19px !important; }
html.kt-iphone-tablet #mainContents .consultDesc { font-size:11px !important; }
html.kt-iphone-tablet #mainContents .consultGrid { display:grid !important; grid-template-columns:minmax(0,1fr) 48px !important; gap:6px !important; padding:0 !important; }
html.kt-iphone-tablet #mainContents .consultGrid > .consultInputRow { grid-column:1; }
html.kt-iphone-tablet #mainContents .consultInputRow { display:grid !important; grid-template-columns:44px minmax(0,1fr) !important; gap:4px !important; min-width:0; }
html.kt-iphone-tablet #mainContents .consultInputRow label { font-size:11px !important; white-space:nowrap; }
html.kt-iphone-tablet #mainContents .consultField { width:100% !important; margin:0 !important; }
html.kt-iphone-tablet #mainContents .consultField,
html.kt-iphone-tablet #mainContents .captchaField { min-width:0 !important; }
html.kt-iphone-tablet #mainContents #mainList .captchaField { display:flex !important; width:100% !important; gap:6px !important; margin:0 !important; }
html.kt-iphone-tablet #mainContents .captchaField input { width:72px !important; min-width:0 !important; max-width:72px; flex:1 1 50px; }
html.kt-iphone-tablet #mainContents #mainList .captchaField img { width:80px !important; max-width:80px; height:20px; flex:0 0 80px; margin:0 !important; }
html.kt-iphone-tablet #mainContents .consultField input,
html.kt-iphone-tablet #mainContents .consultField select { width:100% !important; min-width:0 !important; font-size:16px !important; }
html.kt-iphone-tablet #mainContents .captchaField input { font-size:16px !important; }
html.kt-iphone-tablet #mainContents .mainConsultSubmit { width:48px !important; height:100% !important; padding:6px !important; font-size:13px !important; position:static !important; grid-column:2; grid-row:1 / span 3; align-self:stretch; }
html.kt-iphone-tablet #mainContents .mainConsultAgree,
html.kt-iphone-tablet #mainContents .mainConsultT { font-size:10px !important; white-space:normal !important; }
/* One category per row at EVERY tablet width, including 1025px and above.
   Never combine three outer categories with three inner card columns. */
html.kt-iphone-tablet #mainGoods .goodsCategoryList { width:100% !important; grid-template-columns:minmax(0,1fr) !important; gap:20px !important; }
html.kt-iphone-tablet #mainGoods .goodsCategory { min-width:0; width:100% !important; }
html.kt-iphone-tablet #mainGoods .goodsItems { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:12px; }
html.kt-iphone-tablet #mainGoods .goodsCard { width:auto !important; min-width:0; margin:0 !important; }
html.kt-iphone-tablet #mainGoods .goodsLink { display:flex !important; flex-direction:column; gap:8px; height:100%; padding:14px 12px !important; min-width:0; }
html.kt-iphone-tablet #mainGoods .goodsLink > * { min-width:0; max-width:100%; }
html.kt-iphone-tablet #mainGoods .goodsTitle { font-size:16px !important; line-height:1.45 !important; white-space:normal; overflow-wrap:anywhere; }
html.kt-iphone-tablet #mainGoods .goodsTop { display:block !important; margin:0 !important; }
html.kt-iphone-tablet #mainGoods .goodsSub { font-size:12px !important; line-height:1.5 !important; }
html.kt-iphone-tablet #mainGoods .goodsBadge { display:inline-block; margin-top:6px; }
html.kt-iphone-tablet #mainGoods .goodsIcon { margin:0 !important; }
html.kt-iphone-tablet #mainGoods .goodsGuide { white-space:normal !important; overflow-wrap:anywhere; font-size:12px !important; line-height:1.5 !important; margin:0 !important; }
html.kt-iphone-tablet #mainGoods .goodsBottom { margin-top:auto; }
html.kt-iphone-tablet #mainGoods .goodsPrice { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:baseline; gap:2px; white-space:normal; }
html.kt-iphone-tablet #mainGoods .goodsPrice em { font-size:20px !important; line-height:1.3 !important; }
html.kt-iphone-tablet #mainGoods .ktCalc { width:100% !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
html.kt-iphone-tablet #mainGoods .ktCalc > * { min-width:0; }
html.kt-iphone-tablet #mainGoods .goodsCategory .ktCalc label .ktSelectButton { width:100% !important; max-width:100%; min-width:0; flex:1 1 0 !important; }
html.kt-iphone-tablet #mainGoods .ktCalc .ktCalcTotal strong,
html.kt-iphone-tablet #mainGoods .ktCalc .ktPromoAmount { font-size:22px !important; line-height:1.3; }
html.kt-iphone-tablet #mainGoods .ktCalc .ktPromoTitle { font-size:14px !important; white-space:normal; }
html.kt-iphone-tablet #mainGoods .ktCalc h4,
html.kt-iphone-tablet #mainGoods .ktCalcResult,
html.kt-iphone-tablet #mainGoods .ktCalc > .ktPromo { grid-column:1 / -1; }

/* Detail pages: smaller navigation column, fluid content, responsive media. */
html.kt-iphone-tablet #subContainerNavi {
    display:grid !important; grid-template-columns:180px minmax(0,1fr);
    gap:20px; align-items:start; padding-top:20px !important;
}
html.kt-iphone-tablet #subContainerNavi::after { display:none !important; }
html.kt-iphone-tablet #subLeft { float:none !important; width:100% !important; min-width:0; grid-column:1; grid-row:1; position:static !important; transform:none !important; }
html.kt-iphone-tablet #subLeft h2 { width:100% !important; padding:20px 12px !important; line-height:1.3 !important; font-size:24px !important; }
html.kt-iphone-tablet #subLeft .subMenu a { padding-left:12px !important; }
html.kt-iphone-tablet #subLeft img { max-width:100% !important; height:auto !important; }
html.kt-iphone-tablet #subRight { float:none !important; width:100% !important; min-width:0 !important; padding:0 0 40px !important; grid-column:2; grid-row:1; }
html.kt-iphone-tablet #subRight :where(div,section,article,form,fieldset,dl,ul,ol,p,h3,h4,h5) { min-width:0; max-width:100% !important; }
html.kt-iphone-tablet #subRight img,
html.kt-iphone-tablet #vw_content img { max-width:100% !important; height:auto !important; }
html.kt-iphone-tablet #subRight #subTop,
html.kt-iphone-tablet #subRight #internet,
html.kt-iphone-tablet #subRight #service,
html.kt-iphone-tablet #subRight #subPage,
html.kt-iphone-tablet #subRight #vw_content { width:100% !important; margin-left:0 !important; margin-right:0 !important; }
html.kt-iphone-tablet #subRight #subTop { margin-top:12px !important; padding-top:18px !important; }
html.kt-iphone-tablet #subRight #subTop h3 { font-size:27px !important; letter-spacing:-1px !important; }
html.kt-iphone-tablet #subRight #subTop .subCate { position:static !important; text-align:center; }
html.kt-iphone-tablet #subRight #subTop .subCate p { text-align:center !important; padding-top:8px !important; }
html.kt-iphone-tablet #subRight .internetPrice,
html.kt-iphone-tablet #subRight #service,
html.kt-iphone-tablet #subRight .internetTop { width:100% !important; }
html.kt-iphone-tablet #subRight .internetPrice { padding:20px 16px !important; }
html.kt-iphone-tablet #subRight .internetPrice p { font-size:23px !important; }
html.kt-iphone-tablet #subRight .internetPrice p span { font-size:30px !important; }
html.kt-iphone-tablet #subRight table { width:100% !important; max-width:100% !important; table-layout:fixed; }
html.kt-iphone-tablet #subRight th,
html.kt-iphone-tablet #subRight td { overflow-wrap:anywhere; }
html.kt-iphone-tablet #subRight input:not([type="radio"]):not([type="checkbox"]),
html.kt-iphone-tablet #subRight select,
html.kt-iphone-tablet #subRight textarea { max-width:100% !important; }
html.kt-iphone-tablet #service .serviceBox ul { width:100% !important; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:0 12px; }
html.kt-iphone-tablet #service .serviceBox li { width:auto !important; margin:0 !important; padding:24px 16px !important; }
html.kt-iphone-tablet #subRight .appliHero__badges { flex-wrap:wrap !important; }

/* Footer is part of the same fluid canvas. */
html.kt-iphone-tablet #mainBanner > ul { display:flex !important; flex-wrap:wrap; justify-content:center; gap:12px; }
html.kt-iphone-tablet #mainBanner > ul > li { float:none !important; }
html.kt-iphone-tablet #footer .footerNavi { display:grid; grid-template-columns:minmax(0,1fr) 100px; gap:16px; align-items:center; }
html.kt-iphone-tablet #footer .footerNavi::after { display:none; }
html.kt-iphone-tablet #footer .footerNavi > ul { grid-column:1; margin:0 !important; padding:0 !important; border:0 !important; }
html.kt-iphone-tablet #footer .footerBtn { position:static !important; grid-column:2; grid-row:1; margin:0 !important; }
html.kt-iphone-tablet #footer .footerBtn img { width:100px; height:auto; }
html.kt-iphone-tablet #footer .footerTb { grid-column:1 / -1; grid-row:2; width:100% !important; max-width:100% !important; padding:20px !important; display:grid; grid-template-columns:100px minmax(0,1fr); gap:12px 20px; }
html.kt-iphone-tablet #footer .footerLogo { float:none !important; width:auto !important; grid-column:1; grid-row:1 / span 2; margin:0 !important; padding:6px 0 !important; }
html.kt-iphone-tablet #footer .footerPolicy { grid-column:2; margin:0 !important; flex-wrap:wrap; }
html.kt-iphone-tablet #footer .footerCompany { grid-column:2; margin:0 !important; min-width:0; }
html.kt-iphone-tablet #footer .address,
html.kt-iphone-tablet #footer .address .companyName,
html.kt-iphone-tablet #footer .footerPolicy a { font-size:13px !important; }
html.kt-iphone-tablet #footer .address { line-height:1.7 !important; }
html.kt-iphone-tablet #footer .address .copyright { font-size:11px !important; line-height:1.5 !important; }
html.kt-iphone-tablet #footer .footerTb table { width:100% !important; table-layout:fixed; }
html.kt-iphone-tablet #footer .footerTb p,
html.kt-iphone-tablet #footer .footerTb td { overflow-wrap:anywhere; }
html.kt-iphone-tablet #footer .footerNavi > ul { width:100% !important; display:flex; flex-wrap:wrap; }
html.kt-iphone-tablet #footer img { max-width:100%; }

@media (max-width:900px) {
    html.kt-iphone-tablet #mainTop { grid-template-columns:minmax(0,1fr); }
    html.kt-iphone-tablet #mainTop #mainTopRight { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; align-items:stretch; }
    html.kt-iphone-tablet #mainTopRight .ktArt,
    html.kt-iphone-tablet #mainTopRight .ktPhoneIcon,
    html.kt-iphone-tablet #mainTopRight .ktAction .ktActionIcon { display:none !important; }
    html.kt-iphone-tablet #mainTopRight .ktPromo { min-height:0; padding:12px !important; }
    html.kt-iphone-tablet #mainTopRight .ktTitle { font-size:18px !important; }
    html.kt-iphone-tablet #mainTopRight .ktDesc { font-size:11px !important; margin-top:8px !important; }
    html.kt-iphone-tablet #mainTopRight .ktPhone { display:flex; flex-direction:column; justify-content:center; padding:12px !important; }
    html.kt-iphone-tablet #mainTopRight .ktNumber { font-size:23px !important; }
    html.kt-iphone-tablet #mainTopRight .ktActions { display:grid !important; grid-template-columns:1fr; }
    html.kt-iphone-tablet #mainTopRight .ktAction { display:block !important; min-height:0 !important; padding:10px !important; }
}

@media (max-width:800px) {
    html.kt-iphone-tablet { --kt-tablet-gutter:16px; }
    html.kt-iphone-tablet #header .headerNavi .topBm { display:none !important; }
    html.kt-iphone-tablet #subContainerNavi { grid-template-columns:minmax(0,1fr); gap:12px; }
    html.kt-iphone-tablet #subRight { grid-column:1; grid-row:2; }
    html.kt-iphone-tablet #subLeft { margin-bottom:0 !important; }
    html.kt-iphone-tablet #subLeft h2 { padding:12px 16px !important; line-height:1.3 !important; font-size:22px !important; }
    html.kt-iphone-tablet #subLeft .subMenu { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
    html.kt-iphone-tablet #subLeft .subMenu a { padding:8px !important; line-height:1.4 !important; }
    html.kt-iphone-tablet #subLeft > p,
    html.kt-iphone-tablet #subLeft > a,
    html.kt-iphone-tablet #subLeft .kt-left-contact { display:none !important; }
}

@media (max-width:700px) {
    html.kt-iphone-tablet #mainContents #mainList { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    html.kt-iphone-tablet #mainContents #mainList .mainConsult { grid-column:1 / -1; }
    html.kt-iphone-tablet #mainContents #mainList .mainConsultLine { min-height:0; padding:16px !important; }
    html.kt-iphone-tablet #mainGoods .goodsTitle { font-size:14px !important; }
    html.kt-iphone-tablet #mainGoods .goodsLink { padding:12px 8px !important; }
    html.kt-iphone-tablet #footer .footerTb { grid-template-columns:80px minmax(0,1fr); gap:12px; padding:14px !important; }
}
