.main_page { overflow:hidden; } 
.main_section_inner { width:100%; max-width:1440px; margin:0 auto; } 
.main_title { color:#111; font-size:44px; font-weight:700; line-height:1.5; } 
.main_title em { color:#248def; } 
.main_detail_button { display:flex; width:180px; height:44px; padding:0 23px; border:1px solid #248def; border-radius:22px; align-items:center; justify-content:space-between; color:#248def; font-size:16px; font-weight:500; line-height:1.6; } 
.main_detail_button .icon_detail { flex:none; transform:rotate(90deg); } 

.main_visual { position:relative; height: 100vh; color:#fff; } 
.main_visual_image { width:100%; height:100%; object-fit:cover; } 
.main_visual_inner { position:absolute; inset:0; display:flex; width:100%; max-width: 1480px; margin:0 auto; align-items: center; padding: 0 20px; } 
.main_visual_text { } 
.main_visual_text span { display:inline-flex; padding:6px 24px; border-radius:100px; background:#248def; font-size:20px; font-weight:700; line-height:1.5; } 
.main_visual_text h1 { margin-top:20px; font-size:70px; font-weight:700; line-height:1.5; } 
.main_quick_links { position: fixed; z-index:90; right: 40px; bottom: 40px; display:flex; flex-direction:column; gap:10px; } 
.main_quick_links a { display:block; width:80px; height:80px; border-radius: 80px; box-shadow: 0px 4px 12px rgba(3, 31, 58, 0.12); overflow: hidden; } 

.main_about { padding:110px 20px; background:#fff; } 
.main_about_content { display:flex; margin-top:20px; gap:40px; } 
.main_about_column { display:flex; min-width:0; width:100%; flex-direction:column; } 
.main_about p { color:#111; font-size:18px; font-weight:500; line-height:1.6; } 
.main_about_image { width:100%; object-fit:cover; } 
.main_about_image_01 { margin-top:25px; aspect-ratio:700/369; } 
.main_about_description { margin-top:25px; } 
.main_about_right .main_detail_button { margin-top:30px; } 

.main_result { padding:110px 20px; background:#e9ecef; } 
.main_result_inner { display:flex; gap:40px; } 
.main_result_copy,
.main_result_slider { min-width:0; width:100%; } 
.main_result_copy { display:flex; flex-direction:column; } 
.swiper_wrapper { display:flex; width:100%; } 
.swiper_slide { width:100%; flex:none; } 
.main_result_copy .main_title br { display:none; } 
.main_result_copy > p { margin-top:20px; color:#111; font-size:18px; font-weight:500; line-height:1.6; } 
.main_result_controls { display:flex; margin-top:40px; align-items:center; gap:24px; } 
.main_result_count { display:flex; align-items:center; gap:12px; } 
.main_result_count strong,
.main_result_count b { color:#111; font-size:18px; font-weight:500; line-height:1.6; } 
.main_result_count > i { position:relative; display:block; width:44px; height:2px; background:rgba(17,17,17,.2); } 
.main_result_count > i span { position:absolute; top:0; left:0; width:100%; height:2px; transform:scaleX(.1); transform-origin:left center; background:#111; transition:transform .5s ease; } 
.main_result_controls button { display:flex; width:50px; height:50px; padding:0; align-items:center; justify-content:center; } 
.main_result_controls button .icon { width:50px; height:50px; } 
.main_result_next .icon_next { background-image:url(/dlrmf2000/img/svg/icon_prev.svg); } 
.main_result_prev .icon_prev { transform:rotate(180deg); } 
.main_result_slide { display:flex; flex-direction:column; gap:10px; } 
.main_result_slide figure { position:relative; width:100%; overflow:hidden; } 
.main_result_slide img { width: 100%; aspect-ratio: 700 / 285; object-fit: cover; border-radius: 20px; overflow: hidden; } 
.main_result_slide figcaption { position:absolute; top:20px; left:20px; padding:4px 24px; border-radius:100px; background:#111; color:#fff; font-size:16px; font-weight:600; line-height:1.6; } 
.main_result_slide figure:last-child figcaption { background:#248def; } 

.main_as { padding:110px 20px; background:#fff; } 
.main_as_inner { position:relative; display:flex; width:100%; max-width:1440px; height:150px; margin:0 auto; padding:0 60px; border-radius:20px; align-items:center; overflow:visible; background:linear-gradient(180deg,#021e38 0%,#105799 100%); color:#fff; } 
.main_as_text { position:relative; z-index:1; } 
.main_as_text h2 { font-size:32px; font-weight:700; line-height:1.5; } 
.main_as_text h2 em { color:#248def; } 
.main_as_text br { display:none; } 
.main_as_text p { margin-top:8px; font-size:18px; font-weight:500; line-height:1.6; } 
.main_as_image { position:absolute; height:auto; } 
.main_as_roller { top:-41px; right:164px; width:130px; } 
.main_as_caulking { top:-53px; right:304px; width:70px; } 
.main_as_bucket { top:104px; right:363px; width:25px; } 

.main_contact { padding-bottom:110px; background:#fff; } 
.main_contact_inner { display:flex; width:100%; max-width:1920px; margin:0 auto; gap:40px; } 
.map_cont { width:calc(50% - 20px); border-radius:0 20px 20px 0; overflow:hidden; min-height:565px; } 
.map_cont iframe { width:100%; height: 100%; } 
.main_contact_content { width:100%; max-width:700px; margin-top:10px; margin-right:max(20px, calc((100vw - 1440px)/2)); } 
.main_contact_content .main_title br { display:none; } 
.main_contact_list { display:flex; margin-top:30px; flex-direction:column; gap:10px; } 
.main_contact_list a { display:flex; min-height:69px; padding:15px 24px; border:1px solid #d1dadf; border-radius:15px; align-items:center; justify-content:space-between; gap:20px; background:#fff; } 
.main_contact_list span { display:flex; min-width:0; flex:1; align-items:center; gap:8px; color:#111; font-size:18px; font-weight:500; line-height:1.6; } 
.main_contact_list strong { overflow:hidden; min-width:0; font:inherit; text-overflow:ellipsis; white-space:nowrap; } 
.main_contact_list time { flex:none; color:#888; font-size:16px; font-weight:500; line-height:1.6; } 
.main_contact_empty { display:flex; min-height:69px; padding:15px 24px; border:1px solid #d1dadf; border-radius:15px; align-items:center; justify-content:center; color:#888; font-size:16px; } 
.main_contact_content .main_detail_button { margin:30px auto 0; } 

/* hover */
@media (hover: hover) and (pointer:fine) { 
 .main_detail_button { transition:background-color .2s ease, color .2s ease; } 
 .main_detail_button:hover { background:#248def; color:#fff; } 
 .main_detail_button .icon_detail { transition:filter .2s ease; } 
 .main_detail_button:hover .icon_detail { filter:brightness(0) invert(1); } 
 .main_contact_list a { transition:border-color .2s ease, transform .2s ease; } 
 .main_contact_list a:hover { border-color:#248def; transform:translateX(5px); } 
 .main_result_controls button:hover .icon_prev,
 .main_result_controls button:hover .icon_next { background-image:url(/dlrmf2000/img/svg/icon_next.svg); } 
 } 

@media (max-width:1024px) { 
 .main_section_inner { max-width:100%} 
 .main_title {max-width: 200px;font-size:24px;line-height:1.5;} 
 .main_detail_button { width:140px; height:40px; padding:0 15px; border-radius:20px; font-size:14px; } 
 .icon_detail { width:16px; height:16px; } 

 .main_visual { height:740px; } 
 .main_visual_image { object-position:center center; } 
 .main_visual_inner { max-width:none; padding:0 20px; } 
 .main_visual_text {} 
 .main_visual_text span {padding:5px 15px;font-size: 16px;} 
 .main_visual_text h1 {margin-top: 12px;font-size: 36px;line-height:1.5;} 
 .main_quick_links {right:20px;bottom: 20px;} 
 .main_quick_links a { width:60px; height:60px; } 

 .main_about { padding:60px 20px; } 
 .main_about_content {margin-top: 12px;flex-direction:column;gap:0;} 
 .main_about_column { display:contents; } 
 .main_about p { font-size:15px; line-height:1.6; } 
 .main_about p br { display:none; } 
 .main_about_intro { order:1; } 
 .main_about_image_01 {order:2;margin-top: 20px;} 
 .main_about_description { order:3; margin-top:20px; } 
 .main_about_right .main_detail_button {order:4;margin-top: 30px;} 
 .main_about_image_02 {order:5;margin-top: 20px;} 

 .main_result { padding:60px 20px; } 
 .main_result_inner { flex-direction:column; gap:20px; } 
 .main_result_copy .main_title br { display:block; } 
 .main_result_copy > p {margin-top: 12px;font-size:15px;line-height:1.6;} 
 .main_result_copy > p br { display:none; } 
 .main_result_controls {margin-top: 30px;} 
 .main_result_controls { gap:12px; } 
 .main_result_count { gap:10px; } 
 .main_result_count strong,
 .main_result_count b { font-size:14px; } 
 .main_result_count > i { width:30px; } 
 .main_result_controls button { width:40px; height:40px; } 
 .main_result_controls button .icon { width:40px; height:40px; } 
 .main_result_slide { gap:10px; } 
 .main_result_slide img { aspect-ratio:2/1; } 
 .main_result_slide figcaption { top:15px; left:15px; padding:3px 15px; font-size:13px; } 

 .main_as { padding:60px 20px; } 
 .main_as_inner { height:290px; padding:24px; border-radius:10px; align-items:flex-start; } 
 .main_as_text h2 { font-size:20px; } 
 .main_as_text br { display:block; } 
 .main_as_text p { margin-top:8px; font-size:15px; line-height:1.6; } 
 .main_as_roller { top:156px; right:12px; width:92px; } 
 .main_as_caulking { top:148px; right:114px; width:46px; } 
 .main_as_bucket { top:258px; right:152px; width:18px; } 
.map_cont { width: calc(100% - 20px); min-height: auto; height: 240px; border-radius:10px; display: flex; } 
 .main_contact_inner { flex-direction:column; gap:0; } 
 .main_contact_map { width:calc(100% - 20px); aspect-ratio:340/240; border-radius:0 10px 10px 0; } 
 .main_contact_content {max-width: calc(100% - 40px);margin:30px auto 0;} 
 .main_contact_content .main_title br { display:block; } 
 .main_contact_list { margin-top:20px; gap:8px; } 
 .main_contact_list a { min-height:56px; padding:12px 15px; border-radius:10px; } 
 .main_contact_list span { gap:7px; font-size:15px; } 
 .main_contact_list time { font-size:13px; } 
 .main_contact_empty { min-height:56px; padding:12px 15px; border-radius:10px; font-size:14px; } 
 .icon_lock { width:18px; height:18px; } 
 .main_contact_content .main_detail_button { margin:30px auto 0; } 
 .main_contact { padding-bottom:60px; } 
 } 
