@media screen and (max-width:1599px) {
:root { --top-nav: 5.5rem; --pt: 2rem; }
.btn-normal { --mw: 12rem; --h: 3.6rem; }
.top-nav-menu { --mx: 1.25rem; }
}
@media screen and (max-width:1399px) {
:root { --top-nav: 5rem }
.btn-normal { --mw: 10rem; --h: 3rem; }
.top-nav-menu { --mx: 1rem; }
}
@media screen and (max-width:1119px) {
.top-nav-menu { --mx: .825rem; }
}
@media screen and (max-width:991px) {
:root { --top-nav: 60px }
html { font-size: 112.5%; }
body { line-height: 1.4; font-size: 14px; padding-top: var(--top-nav); }
body:before { position: absolute; z-index: -1; width: 100%; height: calc(100% - 50px); content: ""; pointer-events: none; opacity: 0; background-color: rgba(34, 34, 41, 1); }
.frame-wide { padding-right: 27px; padding-left: 27px; }
.frame-middle, .frame-narrow { padding-right: 27px; padding-left: 27px; }
.frame-middle .frame-narrow { padding-left: 0; padding-right: 0; }
.top-nav, .fixed-bar .top-nav { height: 60px; --pt: 0 }
.top-banner { background-size: 100% 100%; }
.top-nav:before { opacity: 1; }
.tn-menu { align-items: center; padding-bottom: 0; }
.top-nav-logo { width: 50%; }
.top-nav-logo h1, .fixed-bar .top-nav-logo h1 { height: 50px; }
.top-nav-logo .logo-color { display: none; }
.top-nav-logo img.logo-white { display: block; opacity: 1; }
.top-toggle-nav { display: block; margin-left: auto; }
.top-toggle-nav > span { display: block; }
.top-toggle-nav > span { position: relative; width: 24px; height: 24px; }
.top-toggle-nav svg { font-size: 24px; position: absolute; top: 0; left: 0; transition: opacity .25s; color: var(--normal); }
.top-toggle-nav svg.icon-menu { opacity: 1; }
.top-toggle-nav svg.icon-menu-close, .top-toggle-nav svg.icon-menu-right { opacity: 0; }
.mobile-menu, .mobile-menu body { overflow: hidden !important; height: 100% !important; }
.mobile-menu .top-toggle-nav svg.icon-menu { opacity: 0; }
.mobile-menu .top-toggle-nav svg.icon-menu-close { opacity: 1; color: var(--normal); }
.mobile-menu .tn-menu { z-index: 1000; top: 0; display: flex; opacity: 1; }
.mobile-menu .tn-logo img.logo-color { opacity: 0; }
.mobile-menu body:before { z-index: 5; opacity: 1; }
.mobile-menu .logo-white svg path { fill: var(--dark); }
.top-nav-menu > .flex-ce { height: 70%; padding-top: 8vh; }
.main-nav-bar { position: fixed; z-index: 0; z-index: -1; opacity: 0; top: 0; right: 0; display: block; width: 100%; height: 100%; margin: 0; padding: 0; transition: none; transform: translate3d(0, -100%, 0); background: var(--white); overflow: hidden; }
.top-nav-menu { padding: 30vw 0 0 0; height: 100vh; }
.top-nav-menu > div { flex-wrap: wrap; }
.top-nav-menu dl { width: 100%; height: auto }
.top-nav-menu dt { height: 3.25rem; padding: 0; }
.top-nav-menu dt a { font-size: 1rem; line-height: 3.25rem; }
.mobile-menu .main-nav-bar { transform: translate3d(0, 0, 0); opacity: 1; }
.fixed-bar .top-nav, .top-nav-small { transform: none; }
.top-sub-menu { position: relative; height: 0; box-shadow: none; background-color: unset; border-radius: 0; }
.top-nav-menu dl.active .top-sub-menu { height: auto; opacity: 1; transform: none; pointer-events: unset; padding-bottom: 1rem; }
.top-nav-menu dl::after { content: unset; }
.top-nav-menu dt a { font-size: 20px; color: var(--normal); }
.tnm-title > span { opacity: 1; }
.top-sub-nav a { padding-left: 2rem; color: var(--muted) }
.top-sub-nav a em { font-size: 14px; }
.top-nav-menu .tnm-icon { font-size: 1rem; color: var(--muted); }
.top-nav-menu dl.active .tnm-icon { transform: rotate(180deg); }
.btn-normal { background-size: contain; white-space: nowrap; white-space: nowrap; }
.mobile-nobr br { display: none; }
.empty-line { line-height: 0; height: 0; font-size: 0; margin-bottom: .75rem; }
.slick-dotted.slick-slider { margin-bottom: 1.5rem; }
.slick-dots { bottom: -1.5rem; font-size: 0; line-height: 1; }
.slick-dots li button:before { background: var(--dark); border-radius: 4px; }
.slick-dots li button::after { background: var(--primary); border-radius: 4px; }
.slick-dots li, .slick-dots li button { width: 8px; height: 8px; padding: 0 }
.slick-dots li { margin-left: .35rem; margin-right: .35rem; }
h2.title > em { height: .5rem; }
.btn-normal { --mw: 8rem; --h: 2.25rem; border-radius: 6px; }
.btn-normal.btn-icon { --mw: var(--h); padding: 0 }
.btn-normal.btn-icon svg { width: 1.8rem; height: 1.8rem; }
.hbs-info { padding-top: 0; }
.home-what { background-size: 105% auto; }
.whatc-item:not(:last-child) { margin-bottom: 1rem; }
.mfc-copyright em { display: block }
}
@media screen and (max-width:575px) { }
@media screen and (max-width:374px) { }