body.loading { position: fixed; } .lazy_loading { position: fixed; top: 0; bottom: 0; left: 0; right: 0; z-index: 100; background: #F5F5F5; svg { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); } .loading-bar { position: absolute; top: calc(50% + 80px); left: 50%; width: 160px; height: 8px; border-radius: 5px; border: #383838 1px solid; background: #383838; transform: translateX(-50%); &>div { position: absolute; width: 100%; right: 0; top: 0px; bottom: 0px; border-radius: 4px; background: #FFFFFF; transform-origin: right center; } } } body::-webkit-scrollbar { width: 2px; height: 2px; } body::-webkit-scrollbar-track { box-shadow: inset 0 0 6px #FFFFFF; } body::-webkit-scrollbar-thumb { background-color: #000000; outline: 1px solid #000000; } .visible-xs { @media (min-width: 769px) { display: none !important; } @media (max-width: 768px) { display: block !important; } } .hidden-xs { @media (max-width: 768px) { display: none !important; } } .bg-center { background-position: center; background-size: contain; background-repeat: no-repeat; } h2 { position: relative; margin: 0; padding-bottom: calc(10vw / 19.2) 0; color: #383838; font-size: calc(48vw / 19.2); font-weight: 700; line-height: 1.5; text-align: center; @media (max-width: 1440px) { font-size: 36px; } } h3 { position: relative; margin: 0; padding-bottom: calc(10vw / 19.2) 0; color: #383838; font-size: calc(20vw / 19.2); font-weight: 700; line-height: 1.5; text-align: center; text-transform: uppercase; @media (max-width: 1440px) { font-size: 15px; } } .btn-custom { display: block; position: relative; padding: 14px 30px; width: calc(100% - 60px); color: #FFFFFF; font-size: 18px; line-height: 28px; text-align: center; text-decoration: none; background: #383838; border-radius: 30px; } .grid-item { display: flex; display: -webkit-flex; position: relative; &[data-type=about] { display: inline-flex; display: -webkit-inline-flex; margin-top: calc(50vw / 19.2); gap: calc(140vw / 19.2); @media (max-width: 768px) { flex-wrap: wrap; -webkit-flex-wrap: wrap; margin-top: calc(40vw / 3.75); gap: calc(40vw / 3.75) calc(5vw / 3.75); } &>* { min-width: calc(220vw / 19.2); text-align: center; @media (max-width: 768px) { flex: 1; -webkit-flex: 1; min-width: calc(169vw / 3.75); } img { margin: calc(10vw / 19.2); width: calc(120vw / 19.2); height: auto; @media (max-width: 768px) { margin: calc(10vw / 3.75) calc(34.5vw / 3.75); width: calc(100vw / 3.75); } } p { margin: 0; padding: 0; color: #383838; font-size: calc(24vw / 19.2); font-weight: 700; line-height: 1.5; @media (max-width: 768px) { font-size: calc(18vw / 3.75); } span { display: block; margin-top: calc(2vw / 19.2); color: #888888; font-family: 'Gothic A1', sans-serif; font-size: calc(18vw / 19.2); font-weight: 500; @media (max-width: 768px) { margin-top: calc(2vw / 3.75); font-size: calc(12vw / 3.75); } } } } } &[data-type=service] { display: block; padding: calc(274vw / 19.2) 0 calc(120vw / 19.2); @media (max-width: 768px) { padding: calc(73vw / 3.75) 0 0; } .item { position: relative; margin: 0 calc(120vw / 19.2); width: calc(480vw / 19.2); height: calc(480vw / 19.2); background-color: #383838; border-radius: 50%; @media (max-width: 768px) { margin: 0 calc(15vw / 3.75); width: calc(345vw / 3.75); height: calc(345vw / 3.75); } &:before { content: ''; position: absolute; left: calc(2vw / 19.2); right: calc(2vw / 19.2); top: calc(2vw / 19.2); bottom: calc(2vw / 19.2); background-color: #E5E3DF; border-radius: 50%; @media (max-width: 768px) { left: calc(2vw / 3.75); right: calc(2vw / 3.75); top: calc(2vw / 3.75); bottom: calc(2vw / 3.75); } } &>div { position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%); } .img { display: inline-block; display: -webkit-inline-block; margin: calc(10vw / 19.2); width: calc(100vw / 19.2); height: calc(100vw / 19.2); background-position: center center; background-size: contain; background-repeat: no-repeat; @media (max-width: 768px) { margin: calc(24vw / 3.75) calc(10vw / 3.75) calc(10vw / 3.75); width: calc(100vw / 3.75); height: calc(100vw / 3.75); } } h2 { color: #383838; font-size: calc(44vw / 19.2); font-weight: 700; line-height: 1.5; span { display: block; margin-top: calc(7vw / 19.2); color: #888888; font-family: 'Gothic A1', sans-serif; font-size: calc(18vw / 19.2); font-weight: 500; } } p { margin: 0; color: #383838; font-size: calc(24vw / 19.2); font-weight: 700; line-height: 1.5; @media (max-width: 768px) { font-size: calc(24vw / 3.75); } &.num { margin-bottom: calc(10vw / 19.2); letter-spacing: 0.04em; @media (max-width: 768px) { margin-bottom: calc(10vw / 3.75); } } span { display: block; color: #888888; font-family: 'Gothic A1', sans-serif; font-size: calc(18vw / 19.2); font-weight: 500; @media (max-width: 768px) { font-size: calc(18vw / 3.75); } } } &+.item { &:after { content: ''; position: absolute; left: calc(-120vw / 19.2); top: 50%; width: calc(116vw / 19.2); height: calc(14vw / 19.2); background-image: url('./../images/homepage/service-cutter.svg'); background-position: center center; background-size: contain; background-repeat: no-repeat; transform: translate(-50%, -50%); @media (max-width: 768px) { display: none; } } } } } } html, body { margin: 0; padding: 0; font-family: 'Noto Serif TC', sans-serif; background-color: #F5F5F5; } .btn-menu { position: fixed; cursor: pointer; } .menu-desktop { display: flex; display: -webkit-flex; position: fixed; align-items: center; margin: 0; padding: calc(30vw / 19.2) calc(32vw / 19.2); left: 50%; top: 0; width: calc(1440vw / 19.2); height: calc(40vw / 19.2); background-color: transparent; border-radius: calc(200vw / 19.2); transform: translateX(-50%); z-index: 20; @media (max-width: 1440px) { padding: 9px 31.5px; width: 1080px; height: 60px; border-radius: 150px; box-sizing: border-box; } @media (max-width: 1200px) { padding: 9px 31.5px; width: calc(1080vw / 12); height: 60px; border-radius: 150px; box-sizing: border-box; } @media (max-width: 768px) { flex-flow: column; -webkit-flex-flow: column; padding: 6px 0; top: 0; left: 0; right: 0; width: 100%; height: 68px; background: linear-gradient( #F5F5F5 0px , #F5F5F5 80px , transparent 80px, transparent 100% ); /* box-shadow: rgba(0,0,0,.1) 0px 1px 1px; */ border-radius: 0; transform: none; box-sizing: content-box; overflow: hidden; transition: 300ms; padding-left: 16px; align-items: start; } @media (max-width: 390px) { padding: calc(6vw / 3.9) 0; height: calc(68vw / 3.9); background: linear-gradient( #F5F5F5 0px , #F5F5F5 calc(80vw / 3.9) , transparent calc(80vw / 3.9), transparent 100% ); } .logo { width: calc(256vw / 19.2); height: calc(68vw / 19.2); @media (max-width: 1440px) { width: 256px; height: 68px; } @media (max-width: 768px) { width: 256px; height: 68px; } @media (max-width: 390px) { width: calc(217.5vw / 3.9); height: calc(30vw / 3.9); } img { width: 100%; height: 100%; } } .content { flex: 1; -webkit-flex: 1; text-align: right; @media (max-width: 768px) { position: absolute; right: 0; top: 80px; background-color: #F5F5F5; } @media (max-width: 390px) { top: calc(80vw / 3.9); } .sitemap { display: inline-flex; display: -webkit-inline-flex; gap: calc(40vw / 19.2); @media (max-width: 1440px) { gap: 30px; } @media (max-width: 768px) { flex-flow: column; -webkit-flex-flow: column; gap: 0; margin: 0; padding: 0; text-align: center; } &>* { position: relative; padding: calc(6vw / 19.2) calc(10vw / 19.2); color: #383838; text-shadow: rgba(245,245,245,.5) 1px 1px; font-size: calc(18vw / 19.2); font-weight: 400; line-height: 1.5; list-style-type: none; white-space: nowrap; cursor: pointer; @media (max-width: 1440px) { padding: 4.5px 7.5px; font-size: 16px; } @media (max-width: 768px) { padding: 8px 20px; min-width: 280px; font-size: 16px; } &.active { color: #8D8172; @media (max-width: 768px) { color: #8D8172; } &:after { content: ''; position: absolute; left: 0; right: 0; top: 100%; height: calc(3vw / 19.2); background-color: #8D8172; @media (max-width: 768px) { display: none; } } } } } } &.active { @media (max-width: 768px) { height: 280px; } @media (max-width: 390px) { height: calc(80vw / 3.9 + 200px); } } } .btn-menu { right: 0; top: 0; width: 80px; height: 80px; background: #F5F5F5; z-index: 10; @media (max-width: 390px) { width: calc(80vw / 3.9); height: calc(80vw / 3.9); } &>i { display: block; position: absolute; left: 50%; top: 50%; width: calc(50vw / 19.2); height: calc(4vw / 19.2); background: #000000; border-radius: 4px; transform: translate(-50%, -50%); transition: 300ms; @media (min-width: 390px) and (max-width: 1080px) { width: 30px; height: 2px; } @media (max-width: 390px) { width: calc(30vw / 3.9); height: calc(2vw / 3.9); } &:before, &:after { content: ''; position: absolute; left: 0; right: 0; top: 0; bottom: 0; width: calc(50vw / 19.2); height: calc(4vw / 19.2); background: #000000; border-radius: 4px; transition: 300ms; @media (min-width: 390px) and (max-width: 1080px) { width: 30px; height: 2px; } @media (max-width: 390px) { width: calc(30vw / 3.9); height: calc(2vw / 3.9); } } &:before { transform: translateY(calc(-17.76vw / 19.2)); @media (min-width: 390px) and (max-width: 1080px) { transform: translateY(-10px); } @media (max-width: 390px) { transform: translateY(calc(-10vw / 3.9)); } } &:after { transform: translateY(calc(17.76vw / 19.2)); @media (min-width: 390px) and (max-width: 1080px) { transform: translateY(10px); } @media (max-width: 390px) { transform: translateY(calc(10vw / 3.9)); } } } &.active { z-index: 12; &>i { width: 0; height: 0; &:before{ transform: translateX(-50%) rotate(45deg); } &:after { transform: translateX(-50%) rotate(-45deg); } } } } #banner { position: relative; min-height: calc(1068vw / 19.2); overflow-x: hidden; @media (max-width: 768px) { min-height: calc(762vw / 3.75); } @media (max-width: 390px) { margin-top: calc(60vw / 3.9); } .content { position: absolute; left: calc(250vw / 19.2); top: calc(254vw / 19.2); @media (max-width: 768px) { left: calc(16vw / 3.75); top: calc(51vw / 3.75); } .title { margin: 0 0 calc(34vw / 19.2); padding: 0; color: #383838; font-size: calc(68vw / 19.2); font-weight: 900; line-height: 1.5; @media (max-width: 768px) { font-size: calc(40vw / 3.75); } @media (max-width: 575px) { font-size: 18px; } &+.desc { position: relative; margin-top: calc(41vw / 19.2); padding-top: calc(41vw / 19.2); &:before { content: ''; position: absolute; top: 0; left: 0; width: calc(490vw / 19.2); height: calc(2vw / 19.2); transform: translateY(-50%); background-color: #383838; @media (max-width: 768px) { width: calc(200vw / 3.75); height: calc(2vw / 3.75); } } } } .desc { margin: 0; padding: 0; color: #383838; font-size: calc(44vw / 19.2); font-weight: 900; line-height: 1.5; @media (max-width: 768px) { font-size: calc(24vw / 3.75); } } } .sticker { position: absolute; background-position: center; background-size: 100%; background-repeat: no-repeat; pointer-events: none; overflow: hidden; &.sticker-0 { left: 0; top: calc(148vw / 19.2); width: calc(1530vw / 19.2); height: calc(732vw / 19.2); @media (max-width: 768px) { left: 0; right: 0; top: 0; width: auto; height: calc(360vw / 3.75); } } &.sticker-1 { left: calc(1210vw / 19.2); top: 0; width: calc(470vw / 19.2); height: calc(800vw / 19.2); @media (max-width: 768px) { left: 0; right: 0; top: calc(428vw / 3.75); width: auto; height: calc(200vw / 3.75); } } &.sticker-2 { left: calc(1570vw / 19.2); top: calc(150vw / 19.2); width: calc(240vw / 19.2); height: calc(320vw / 19.2); @media (max-width: 768px) { left: calc(30vw / 3.75); top: calc(297vw / 3.75); width: calc(120vw / 3.75); height: calc(180vw / 3.75); } } &.sticker-3 { left: 0; right: 0; bottom: 0; height: calc(320vw / 19.2); @media (max-width: 768px) { left: 0; right: 0; top: calc(582vw / 3.75); width: auto; height: calc(180vw / 3.75); } } &.sticker-4 { right: 0; bottom: calc(170vw / 19.2); width: calc(900vw / 19.2); height: calc(620vw / 19.2); @media (max-width: 768px) { right: 0; top: calc(346vw / 3.75); width: calc(315vw / 3.75); height: calc(280vw / 3.75); } } } } #about { position: relative; padding-top: calc(271vw / 19.2); height: calc(1452vw / 19.2); text-align: center; @media (max-width: 768px) { padding-top: calc(188vw / 3.75); height: calc(1466vw / 3.75); box-sizing: border-box; } .content { position: relative; &:before { content: ''; position: absolute; left: 50%; top: calc(-140vw / 19.2); width: calc(2vw / 19.2); height: calc(80vw / 19.2); background-color: #383838; transform: translateX(-50%); @media (max-width: 768px) { top: calc(-70vw / 3.75); width: calc(2vw / 3.75); height: calc(40vw / 3.75); } } .desc { margin: 0; font-size: calc(36vw / 19.2); font-weight: 700; line-height: 1.8; @media (max-width: 768px) { padding: 0 calc(16vw / 3.75); font-size: calc(24vw / 3.75); letter-spacing: 0.04em; } } } .sticker { position: absolute; background-position: center; background-size: 100%; background-repeat: no-repeat; pointer-events: none; overflow: hidden; &.sticker-0 { left: 0; top: 0; width: calc(921vw / 19.2); height: calc(667vw / 19.2); @media (max-width: 768px) { left: 0; right: 0; top: 0; width: auto; height: calc(293vw / 3.75); } &.visible { background-image: url('./../images/homepage/about-sticker-0.png'); @media (max-width: 768px) { background-image: url('./../images/homepage/about-sticker-0-mb.png'); } } } &.sticker-1 { right: 0; top: 0; width: calc(730vw / 19.2); height: calc(641vw / 19.2); @media (max-width: 768px) { display: none; } &.visible { background-image: url('./../images/homepage/about-sticker-1.png'); } } &.sticker-2 { left: calc(1570vw / 19.2); top: calc(984vw / 19.2);; width: calc(40vw / 19.2); height: calc(360vw / 19.2); @media (max-width: 768px) { display: none; } &.visible { background-image: url('./../images/homepage/about-sticker-2.jpg'); } } &.sticker-3 { left: calc(290vw / 19.2); top: calc(1183vw / 19.2);; width: calc(60vw / 19.2); height: calc(360vw / 19.2); @media (max-width: 768px) { display: none; } &.visible { background-image: url('./../images/homepage/about-sticker-3.jpg'); } } &.sticker-4 { left: calc(250vw / 19.2); top: calc(1324vw / 19.2);; width: calc(20vw / 19.2); height: calc(360vw / 19.2); @media (max-width: 768px) { display: none; } &.visible { background-image: url('./../images/homepage/about-sticker-4.jpg'); } } &.sticker-5 { left: calc(370vw / 19.2); top: calc(949vw / 19.2);; width: calc(1180vw / 19.2); height: calc(640vw / 19.2); @media (max-width: 768px) { left: 0; right: 0; top: auto; bottom: 0; width: auto; height: calc(320vw / 3.75); } &.visible { background-image: url('./../images/homepage/about-sticker-5.jpg'); @media (max-width: 768px) { background-image: url('./../images/homepage/about-sticker-5-mb.jpg'); } } } } } #service { margin-top: calc(-232vw / 19.2); text-align: center; background-color: #E5E3DF; @media (max-width: 768px) { margin: 0; padding-top: calc(120vw / 3.75); box-sizing: border-box; } .content { position: relative; @media (max-width: 768px) { } &:before { content: ''; position: absolute; left: 50%; top: calc(-140vw / 19.2); width: calc(2vw / 19.2); height: calc(80vw / 19.2); background-color: #383838; transform: translateX(-50%); @media (max-width: 768px) { top: calc(-70vw / 3.75); width: calc(2vw / 3.75); height: calc(40vw / 3.75); } } .title { color: #383838; font-size: calc(44vw / 19.2); font-weight: 700; line-height: 1.5; @media (max-width: 768px) { font-size: calc(28vw / 3.75); } } .desc { margin: calc(7vw / 19.2) 0 0; color: #888888; font-family: 'Gothic A1', sans-serif; font-size: calc(18vw / 19.2); font-weight: 500; @media (max-width: 768px) { margin-top: calc(7vw / 3.75); font-size: calc(14vw / 3.75); } } } .swiper-pagination { display: none; @media (max-width: 768px) { display: block; position: relative; margin: 0; padding: calc(60vw / 3.75) 0; bottom: 0; } .swiper-pagination-bullet { margin: 0 calc(10vw / 3.75); width: calc(10vw / 3.75); height: calc(10vw / 3.75); border: #383838 calc(2vw / 3.75) solid; background-color: transparent; opacity: 1; &.swiper-pagination-bullet-active { background-color: #383838; } } } } #contact { position: relative; .contact-banner { position: relative; height: calc(406vw / 19.2); background-color: #383838; background-position: center center; background-size: cover; background-repeat: no-repeat; @media (max-width: 768px) { height: calc(280vw / 3.75); } &.visible { background-image: url('./../images/homepage/contact-banner.jpg'); @media (max-width: 768px) { background-image: url('./../images/homepage/contact-banner-mb.jpg'); } } &>div { position: absolute; left: 0; right: 0; top: 50%; text-align: center; transform: translateY(-50%); } .title { color: #FFFFFF; font-size: calc(48vw / 19.2); font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; @media (max-width: 768px) { font-size: calc(28vw / 3.75); } } .desc { margin: calc(25vw / 19.2) 0 0; color: #FFFFFF; font-family: 'Gothic A1', sans-serif; font-size: calc(28vw / 19.2); font-weight: 500; line-height: 1.5; letter-spacing: 0.04em; @media (max-width: 768px) { margin-top: calc(25vw / 3.75); font-size: calc(14vw / 3.75); } } } .content { display: flex; display: -webkit-flex; align-items: center; @media (max-width: 1080px) { flex-wrap: wrap; -webkit-flex-wrap: wrap; } .left { width: calc(830vw / 19.2); height: calc(964vw / 19.2); background-position: center center; background-size: cover; background-repeat: no-repeat; @media (max-width: 1080px) { order: 2; width: 100%; height: calc(320vw / 3.75); } &.visible { background-image: url('./../images/homepage/contact-image.jpg'); @media (max-width: 1080px) { background-image: url('./../images/homepage/contact-image-nb.jpg'); } @media (max-width: 768px) { background-image: url('./../images/homepage/contact-image-tl.jpg'); } @media (max-width: 575px) { background-image: url('./../images/homepage/contact-image-mb.jpg'); } } } .right { flex: 1; -webkit-flex: 1; padding: 0 calc(250vw / 19.2) 0 calc(140vw / 19.2); @media (max-width: 1080px) { order: 1; width: 100%; padding: calc(40vw / 10.8) calc(30vw / 10.8); } @media (max-width: 768px) { padding: calc(120vw / 3.75) calc(16vw / 3.75) calc(80vw / 3.75); } } .title { padding-left: calc(10vw / 19.2); font-size: calc(66vw / 19.2); text-align: left; @media (max-width: 768px) { font-size: calc(28vw / 3.75); text-align: center; } &:before { @media (max-width: 768px) { content: ''; position: absolute; left: 50%; top: calc(-70vw / 3.75); width: calc(2vw / 3.75); height: calc(40vw / 3.75); transform: translateX(-50%); background-color: #383838; } } } .desc { margin: calc(7vw / 19.2) 0 0; color: #888888; font-family: 'Gothic A1', sans-serif; font-size: calc(18vw / 19.2); font-weight: 500; @media (min-width: 769px) { display: none; } @media (max-width: 768px) { margin-top: calc(7vw / 3.75); font-size: calc(14vw / 3.75); text-align: center; } } .info { margin-top: calc(40vw / 19.2); margin-bottom: calc(40vw / 19.2); @media (max-width: 1080px) { margin-top: calc(40vw / 10.8); margin-bottom: calc(40vw / 10.8); } @media (max-width: 768px) { margin-top: calc(23vw / 3.75); margin-bottom: calc(40vw / 3.75); } div+div { margin-top: calc(24vw / 19.2); } } .address, .email, .phone { display: block; position: relative; padding-left: calc(33vw / 19.2); min-height: calc(23vw / 19.2); color: #888888; font-size: calc(18vw / 19.2); font-weight: 500; line-height: 1.5; text-decoration: none; background-position: left top; background-size: calc(23vw / 19.2) calc(23vw / 19.2); background-repeat: no-repeat; @media (max-width: 1440px) { padding-left: 33px; min-height: 23px; font-size: 16px; background-size: 23px 23px; } } .address { @media (max-width: 768px) { padding-bottom: calc(14vw / 3.75); } background-image: url('./../images/homepage/icon-address.svg'); } .email { background-image: url('./../images/homepage/icon-email.svg'); } .phone { background-image: url('./../images/homepage/icon-phone.svg'); } .address-btn { position: absolute; right: 0; top: 0; color: #888888; font-size: calc(18vw / 19.2); font-weight: 500; line-height: 1.5; text-decoration: none; @media (max-width: 1080px) { font-size: calc(16vw / 10.8); } @media (max-width: 768px) { right: auto; left: 33px; top: 100%; font-size: calc(16vw / 3.75); } } } } .footer { position: relative; z-index: 10; .flex { display: flex; display: -webkit-flex; gap: calc(60vw / 19.2); align-items: center; &:last-child { padding: calc(36vw / 19.2) calc(30vw / 19.2); background: #000000; @media (max-width: 768px) { padding: 14px 20px; } } } .copyright { flex: 1; -webkit-flex: 1; color: #CCCCCC; font-size: 13px; line-height: 1; text-align: center; @media (max-width: 768px) { text-align: center; } } } form { border: none; margin: auto; fieldset { border: none; padding: 0; } label { display: block; width: 100%; color: #333030; font-size: 14px; line-height: 1.4; letter-spacing: 0.04em; &.req { &:after { content: '*'; } } } input, textarea { display: block; padding: calc(16vw / 19.2) calc(20vw / 19.2); width: 100%; color: #333030; font-size: calc(18vw / 19.2); line-height: 1; background: #FAF9F7; border: none; outline: none; border-radius: calc(10vw / 19.2); box-sizing: border-box; @media (max-width: 1080px) { padding: calc(16vw / 10.8) calc(20vw / 10.8); font-size: calc(18vw / 10.8); border-radius: calc(10vw / 10.8); } @media (max-width: 768px) { padding: calc(16vw / 3.75) calc(20vw / 3.75); font-size: calc(18vw / 3.75); border-radius: calc(10vw / 3.75); } } input { &[type=submit] { max-width: calc(240vw / 19.2); margin: calc(40vw / 19.2) auto 0; padding: calc(8vw / 19.2) calc(20vw / 19.2); border-radius: 10px; float: left; @media (max-width: 1080px) { margin: calc(40vw / 10.8) auto 0; padding: calc(8vw / 10.8) calc(20vw / 10.8); } @media (max-width: 768px) { float: none; margin: calc(40vw / 3.75) auto 0; padding: calc(16vw / 3.75) calc(20vw / 3.75); max-width: none; width: 100%; } } } textarea { resize: none; height: calc(120vw / 19.2); @media (max-width: 1080px) { height: calc(120vw / 10.8); } @media (max-width: 768px) { height: calc(120vw / 3.75); } } .input-group { display: flex; display: -webkit-flex; gap: calc(80vw / 19.2) calc(40vw / 19.2); @media (max-width: 768px) { gap: 44px; } @media (max-width: 767px) { flex-wrap: wrap; -webkit-flex-wrap: wrap; } .input { flex: 1; -webkit-flex: 1; @media (max-width: 767px) { flex: auto; -webkit-flex: auto; width: 100%; } } &+.input-group { margin-top: calc(40vw / 19.2); @media (max-width: 768px) { margin-top: 44px; } } } .input { display: inline-block; display: -webkit-inline-block; } .btn-custom { padding: calc(16vw / 19.2) calc(20vw / 19.2); width: calc(220vw / 19.2); border-radius: calc(10vw / 19.2); @media (max-width: 1080px) { padding: calc(16vw / 10.8) calc(20vw / 10.8); width: calc(220vw / 10.8); border-radius: calc(10vw / 10.8); } @media (max-width: 768px) { padding: calc(16vw / 3.75) calc(20vw / 3.75); width: calc(220vw / 3.75); border-radius: calc(10vw / 3.75); } } }