@charset "utf-8";

#wrap { position:relative; width:100%; }

.hide { font-size:0; height:0; left:0; opacity:0; position:absolute; top:0; width:0; }
.inner { height:100%; margin:0 auto; max-width:980px; position:relative; z-index:5; }

.top_main2 {position: relative;height: calc(100vh - 48px); padding-top:186px; padding-left:129px; overflow-x: hidden; background:url('../img/vis_main_img01.png') no-repeat bottom right;}
.top_main2 .vis-main-summary { display:flex; align-items:center; gap:0 15px; padding-bottom:43px; font-size:50px;  font-family:"pretendardB"; color:#232176; }
.top_main2 .vis-main-summary span { font-family:"PretendardR"; font-size:20px; color:#232176; }
.top_main2 .vis-main-title span { display:block; }
.top_main2 .vis-main-title .vis-main-stxt { font-size:79px; line-height:100%; }
.top_main2 .vis-main-title .vis-main-mtxt { font-size:164px; line-height:1.2; color:#232176; font-family:"PretendardBlk"; }
.top_main2 .bg-txt-box { position: relative; display:inline-block; padding:27px 199px 27px 0; margin-top:10px; font-family:"pretendardB"; font-size:49px; color:#fff; background:#232176; border-bottom-right-radius: 56px; border-top-right-radius:56px; }
.top_main2 .bg-txt-box:before  { content:""; display:block; position:absolute;top:0; left:-140px; width:140px; height:100%; background:#232176; }

.vis-main-deco-text { position:absolute; top:calc(100vh - 110px); left:50%; transform:translateX(-50%); display:inline-flex; align-items:center;justify-content:center; background: linear-gradient(170deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.3) 100%);padding:1px; border-radius: 62px;z-index:10; }
.vis-main-deco-text .vis-main-deco-inr {padding:28px 119px; white-space:nowrap; background: #232176; border-radius: 62px; }
.vis-main-deco-text .vis-main-deco-inr span { font-family:"PretendardB";  font-size:58px; color:#fff;}
.vis-main-deco-text .vis-main-deco-inr span.deco-color { color:#3CB4E5; text-decoration:underline; text-underline-offset:12px;}

/* Rectangle 4 */

@media screen and (min-width:2100px){
	.top_main2 { padding-left:300px; background-size:50%; background-position:bottom -150px right;}
	.top_main2 .bg-txt-box:before { left:-300px; width:300px;}
}

@media screen and (max-width:1800px){
	.top_main2 .vis-main-summary { padding-bottom:20px; font-size:35px; }
	.top_main2 .vis-main-title .vis-main-stxt { font-size:60px; }
	.top_main2 .vis-main-title .vis-main-mtxt { font-size:130px; }
	.top_main2 .bg-txt-box { padding-right:150px; font-size:35px; }

	.vis-main-deco-text {top: calc(100vh - 102px); }
	.vis-main-deco-text .vis-main-deco-inr span {  font-size:40px; }
	.vis-main-deco-text .vis-main-deco-inr span.deco-color { text-underline-offset:10px;  }
}

@media screen and (max-width:1440px){
	.top_main2 {padding-left:70px; background-position:bottom right -100px;}
}


@media screen and (max-width:1220px){
	.top_main2 {padding-left:50px; background-position:bottom right -150px;}

	.top_main2 .vis-main-summary { padding-bottom:20px; font-size:25px; }
	.top_main2 .vis-main-title .vis-main-stxt { font-size:35px; }
	.top_main2 .vis-main-title .vis-main-mtxt { font-size:80px; }
	.top_main2 .bg-txt-box { padding:15px 80px 15px 0; font-size:25px; }
}

@media screen and (max-width:950px){
	.top_main2 { padding-top:80px; background-size:95%; background-position:bottom right;}
	.top_main2 .vis-main-summary { padding-bottom:20px; font-size:20px; }
	.top_main2 .vis-main-title .vis-main-stxt { font-size:30px; }
	.top_main2 .vis-main-title .vis-main-mtxt { font-size:70px; }
	.top_main2 .bg-txt-box { padding:15px 80px 15px 0; font-size:20px; }


	.vis-main-deco-text {top: calc(100vh - 90px); }
	.vis-main-deco-text .vis-main-deco-inr { padding:20px 100px; }
	.vis-main-deco-text .vis-main-deco-inr span { font-size:35px;  }
	.vis-main-deco-text .vis-main-deco-inr span.deco-color { text-underline-offset:8px;  }
}

@media screen and (max-width:767px){
	.top_main2 { padding-top:50px; padding-left:30px; background:url('../img/vis_main_m_img01.png') no-repeat bottom right;  }
	.top_main2 .vis-main-summary { gap:0 7px; padding-bottom:20px; font-size:24px; }
	.top_main2 .vis-main-summary span { font-size:12px; }
	.top_main2 .vis-main-title .vis-main-stxt { padding-bottom:5px; font-size:28px; }
	.top_main2 .vis-main-title .vis-main-mtxt { font-size:55px; }
	.top_main2 .bg-txt-box { padding:12px 30px 12px 0; font-size:20px; }

	.vis-main-deco-text {top: calc(100vh - 78px); }
	.vis-main-deco-text .vis-main-deco-inr { padding:15px 50px; }
	.vis-main-deco-text .vis-main-deco-inr span { font-size:20px; }
	.vis-main-deco-text .vis-main-deco-inr span.deco-color { text-underline-offset:4px; }
}


.top_wrap { background:var(--white); height: fit-content; padding:80px 0 124px; }
.top_wrap h1 { background:url("../img/logo.svg") center top / auto 100% no-repeat; display:block; height:26px; overflow:hidden; text-indent:-20000px; }

.top_ttl { margin-top:72px; text-align:center; }
.top_ttl strong { color:var(--navy); display:block; font-family:"PretendardB"; font-size:60px; text-align:center; }
.top_ttl strong.bg { background:var(--navy); color:var(--white); display:inline-block; margin-bottom:14px; padding:0 18px; }
.top_ttl > h2 { color: var(--navy); font-family: "pretendardEB"; font-size: 68px; margin-top: 40px; }
/* .top_ttl p { color:var(--grey3c); font-size:30px; line-height:1.4; margin-top:56px; }
.top_ttl p b { color:var(--black); font-family:"PretendardSB"; font-size:inherit; } */

.top_video { height:550px; margin-top:80px; overflow:hidden; padding:0 !important; position:relative !important; width:100%; }
.top_video.solution { margin-top:98px; }
.top_video iframe { height:110% !important; left:50% !important; position:absolute !important; top:50% !important; transform:translate(-50%, -50%); width:100% !important; }

.cont_each { height: fit-content; padding:120px 0 150px; position:relative; }
.cont_each.no_pb { padding-bottom:50px; }
.cont_each.wbg { background:var(--white); }
.cont_each.nbg { background:var(--navy); }
.cont_each.gbg { background:#f8f8f8; }
.cont_each.arrow { padding-top:calc(150px + 7.68%); }
.cont_each.arrow:before { content:""; height:0; left:0; padding-bottom:7.68%; position:absolute; top:0; width:100%; z-index:5; }
.cont_each.arrow.narrow:before { background:url("../img/bg_triangle_navy.png") center / 100% auto no-repeat; }
.cont_each.arrow.garrow:before { background:url("../img/bg_triangle_grey.png") center / 100% auto no-repeat; }
.cont_each.arrow.warrow:before { background:url("../img/bg_triangle_white.png") center / 100% auto no-repeat; }
.cont_each.ncarrow::after { aspect-ratio: 1/1; background:url("../img/down_triangle.png") center / 100% auto no-repeat; bottom: 0; content: ""; display: block; left: 50%; transform: translate(-50%, 50%); position: absolute; width: 9.86%; }
.cont_each.bna,
.cont_each.location { padding-top:0; }
.cont_each.model_bg { background:url("../img/model_bg.jpg") center top / cover no-repeat; height:850px; padding:0; }

.cont_each.oneday { padding-top:0; }

.cont_each.btm_bg:after { background:#f8f8f8; bottom:0; content:""; height:400px; left:0; position:absolute; width:100%; }

.cont_each.remedy { background: #22217608; overflow: hidden; }
.cont_each.remedy .top_ttl { text-align: left; width: 100%; }
.cont_each.remedy .ex_align { text-align: center; margin: 0 auto; }
.cont_each.remedy .desc { font-size: 28px; line-height: 1.5; margin-top: 60px; text-align: center; }
.cont_each.remedy .slide_wrap { margin: 0 auto; position: relative; width: 100%; }

.improve_slide { margin-top: 80px; overflow: hidden; position: relative; padding: 0 40px; }
.improve_slide figure { width: 100%; }
.improve_slide p { background:#f9f9f9; color:var(--grey3c); font-size:28px; height:60px; line-height:60px; margin-top:5px; }
.improve_slide img { aspect-ratio: 16/9; width: 100%; }

.cont_each.remedy .slide_wrap .improve_slide_nav button { aspect-ratio: 1/1; background-size: 100% 100%; background-position: center center; background-repeat: no-repeat; display: inline-block; text-indent: -20000px; vertical-align: top; width: 88px; z-index: 3; }
.cont_each.remedy .slide_wrap .improve_slide_nav .prev { background-image: url("../img/slide_arrow_l_on.png"); left: -4px; position: absolute; top: calc(50% - 30px); transform: translateY(-50%); }
.cont_each.remedy .slide_wrap .improve_slide_nav .prev.swiper-button-disabled { background-image: url("../img/slide_arrow_l.png"); }
.cont_each.remedy .slide_wrap .improve_slide_nav .next { background-image: url("../img/slide_arrow_r_on.png"); float: right; position: absolute; top: calc(50% - 30px); transform: translateY(-50%); right: -4px;}
.cont_each.remedy .slide_wrap .improve_slide_nav .next.swiper-button-disabled { background-image: url("../img/slide_arrow_r.png"); }

.remedy_case { padding: 80px 0 0; }
.remedy_case .case_each + .case_each { margin-top: 80px;  }
.remedy_case .case_each > strong { background: var(--navy); color: var(--white); display: block; font-size: 42px; margin-bottom: 60px; padding: 10px 0; text-align: center; }
.remedy_case li { width: 100%; }
.remedy_case li + li { margin-top: 40px; }
.remedy_case li img { aspect-ratio: 16/9; width: 100%; }
.remedy_case li p { background: #F9F9F9; color: var(--grey3c); font-size: 38px; margin-top: 10px; padding: 10px 0; text-align: center; }
.remedy_case li p b { color: var(--navy); font-family: "pretendardSB"; font-size: inherit; }
.remedy_case li p span { font-size: inherit; }
.remedy_case li .continue { background: url("../img/arrow_down.png") center / auto 100% no-repeat; height: 80px; margin: 40px auto 0;  }

.cont_each h2 { background-position:center top; background-repeat:no-repeat; background-size:88px auto; color:var(--navy); display:block; font-family:"PretendardB"; font-size:60px; padding-top:106px; position:relative; text-align:center; white-space:nowrap; }
.cont_each h2.no_icon { padding-top:0; }
.cont_each h2.question { background-image:url("../img/ic_question.svg"); }
.cont_each h2.teeth_magnifier { background:url("../img/ic_teeth_magnifier.svg") 10px top / 88px auto no-repeat; display:inline-block; line-height:1.4; padding-top:108px; text-align:justify; }
.cont_each h2.teeth_magnifier span { color:inherit; font-family:"PretendardL"; font-size:inherit; letter-spacing:-2px; }
.cont_each h2.teeth_magnifier b { text-align: justify; }
.cont_each h2.cube { background-image:url("../img/ic_cube.svg"); }
.cont_each h2.doctor { background-image:url("../img/ic_doctor.svg"); }
.cont_each h2.certi { background-image:url("../img/ic_certi.svg"); }
.cont_each h2.ambulance { background-image:url("../img/ic_ambulance.svg"); }
.cont_each h2.cube span,
.cont_each h2.doctor span,
.cont_each h2.certi span,
.cont_each h2.ambulance span { color:inherit; display:block; font-family:"PretendardSB"; font-size:40px; margin-bottom:14px; }
.cont_each h2.doctor span { margin:14px 0 0; }
.cont_each h2.tooth { background-image:url("../img/ic_tooth.svg"); font-size:80px; }

.cont_each h2 b { background:var(--navy); color:var(--white); display:inline-block; font-family:"PretendardB"; font-size:60px; padding:0 10px; }


.sub_cont_each { margin-top:150px; }

.sub_ttl { color:var(--grey3c); font-size:32px; line-height:1.4; margin-top:60px; text-align:center; }
.sub_ttl strong { color:var(--black); font-family:"PretendardSB"; font-size:inherit; }
.sub_ttl b { color: var(--navy); font-family:"PretendardSB"; font-size:inherit; }
.sub_ttl span { color: inherit; font-family: "PretendardM"; font-size: 22px; }

.sub_ttl.bold { font-family: "pretendardB"; }
.sub_ttl strong { font-family:"PretendardB"; }
.sub_ttl b { font-family:"PretendardB"; }

.side_effect_list { margin-top:100px; }
.side_effect_list ul { font-size:0; margin: -20px 0 0 -20px; text-align:center; width: 100%; }
.side_effect_list ul li { background: #F9F9F9; display:inline-block; margin:20px 0 0 20px; vertical-align:top; width: calc(50% - 20px); }

.side_effect_list ul li p { background:#f9f9f9; color:var(--grey3c); font-size:28px; height:60px; line-height:60px; margin-top:5px; }
.side_effect_list ul li p strong { color:var(--navy); font-family:"PretendardSB"; font-size:inherit; }

.precision .txt { text-align: center; }
.precision .txt strong { border-bottom: 2px solid rgba(255, 255, 255, 0.3); color:var(--white); display: block; font-size:60px; letter-spacing:-1.5px; line-height:1.2; padding-bottom: 25px; }
.precision .txt strong b { color:inherit; font-family:"PretendardB"; font-size:inherit; }
.precision .txt p { color:rgba(255, 255, 255, 0.8); font-size:30px; letter-spacing:-1px; line-height:1.4; margin-top:25px; }

.oneday_each { font-size: 0; }
.oneday_each h3 { background: #F9F9F9; color:var(--navy); display:block; font-family:"PretendardSB"; font-size:60px; margin:130px 0 80px; position:relative; padding: 10px 0; text-align:center; }
.oneday_each > div > span { color: #707070; display: block; font-size: 22px; font-family: "pretendardSB"; line-height: 1.5; word-break: keep-all; }
.oneday_each > div > strong { display: block; font-size: 24px; font-family: "pretendardSB"; line-height: 1.5; margin-bottom: 20px; word-break: keep-all; }
.oneday_each > div > strong > span { font-size: inherit; }
.oneday_each > div > p { font-size: 28px; line-height: 1.4; word-break: keep-all; }
.oneday_each .left { display: inline-block; float: none; vertical-align: top; width: 50%; }
.oneday_each .left > p:only-child { margin-top: 15px; }
.oneday_each .right { display: inline-block; float: none; padding-left: 20px; vertical-align: top; width: 50%; }
.oneday_each .right.txt_right { text-align: right; }
.oneday_each img { width: 100%; }
.oneday_each img + img { margin-top: 20px; }
.for_web { display:block; }
.for_mob { display:none; }

.diff_tag { color: var(--navy); margin-top: 60px; text-align: center; }
.diff_tag strong { color: inherit; font-family: "pretendardSB"; font-size: 36px; }
.diff_tag p { color: inherit; font-family: "pretendardSB"; font-size: 28px; margin-top: 30px; }

.band { background: var(--navy); height: 150px; text-align: center; width: 100%; }
.band a { color: var(--white); font-size: 28px; line-height: 150px; }

@media screen and (max-width:980px) {
	.inner { padding:0 20px; }

	.top_video { height:0; padding-bottom:58.5% !important; }
	.top_video iframe { height:100% !important; width:110% !important; }
}

@media screen and (max-width:960px) {
	.inner { padding:0; }
	.top_wrap { padding:74px 0 0; }
	.top_wrap h1 { height:20px; }
	
	.top_ttl { margin-top:60px; }
	.top_ttl > h2 { font-size: 46px; }
	.top_ttl strong { font-size:34px; }
	.top_ttl p { font-size:16px; margin-top:8px; }

	.top_video { margin-top:70px; }
	.top_video.solution { margin-top:48px; }

	.cont_each { padding:60px 0; }
	.cont_each.no_pb { padding-bottom:25px; }
	.cont_each.arrow { padding-top:calc(75px + 7.68%); }
	.cont_each.bna { padding:30px 0 70px; }
	.cont_each.band { padding:0 0 120px; }

	.cont_each.btm_bg:after { height:200px; }

	.cont_each h2 { background-size:50px auto; font-size:30px; padding-top:62px; }

	.cont_each h2.cube span,
	.cont_each h2.doctor span,
	.cont_each h2.certi span,
	.cont_each h2.ambulance span { font-size:16px; margin-bottom:7px; }
	.cont_each h2.doctor span { margin-top:7px; }

	.cont_each h2 b { font-size:30px; padding:3px 6px; }

	.sub_cont_each { margin-top:75px; }

	.sub_ttl { font-size:20px; margin-top:22px; }
	.sub_ttl span { font-size: 12px; }

	.cont_each.model_bg { background:url("../img/m/model_bg.jpg") center top / cover no-repeat; height:640px; }

	.cont_each h2.teeth_magnifier { background-position:left top; background-size:50px auto; padding-top:58px; }

	.top_video.tech { margin-top:30px; }


	.for_web { display:none; }
	.for_mob { display:block; }

	.side_effect_list { margin-top: 50px; padding: 0 50px 20px; }
	.side_effect_list ul { margin: 0; }
	.side_effect_list ul li { margin: 10px 0 0; width: 100%; }
	.side_effect_list ul li p { font-size: 18px; height: 30px; line-height: 30px; }

	.cont_each.remedy .inner { max-width: 600px; }
	.cont_each.remedy .ex_align { padding: 0 20px; }
	.cont_each.remedy .slide_wrap { max-width: 600px; width: 100%; }
	.cont_each.remedy .slide_wrap .improve_slide_nav .prev { left: -30px; top: calc(50% - 17.5px); width: 60px; }
	.cont_each.remedy .slide_wrap .improve_slide_nav .next { top: calc(50% - 17.5px); right: -30px; width: 60px; }

	.improve_slide { padding: 0; width: 100%; }
	.improve_slide p { height: 30px; line-height: 30px; }
	.improve_slide .swiper-wrapper { width: 100%; }
	
	.remedy_case .case_each + .case_each { margin-top: 50px; }
	.remedy_case li + li { margin-top: 20px; }
	.remedy_case li .continue { height: 36px; margin: 10px auto 0; }
	
	.cont_each.remedy .desc { font-size: 18px; margin: 60px auto 0; text-align: left; width: 320px; }

	.diff_tag { margin-top: 40px; }

	.precision { padding: 0 30px; }
	.precision .txt strong b { font-size: 30px; }

	.precision .txt p { font-size: 20px; }
	.oneday_each { padding: 0px 20px; width: 100%; }
	.oneday_each:first-child h3 { padding-top: 20px; }
	.oneday_each h3 { font-size: 20px; margin: 80px 30px 50px; white-space: nowrap; }
	.oneday_each .left > p:only-child { margin-top: 8px; }
	.oneday_each .right { padding-left: 12px; }
	.oneday_each > div > span { font-size: 14px; }
	.oneday_each > div > strong { font-size: 16px; }
	.oneday_each > div > p { font-size: 18px; }
	.improve_slide p { font-size: 16px; }

	.diff_tag strong { font-size: 22px; }
	.diff_tag p { font-size: 20px; }

	.band { height: 100px; margin-top: -20px; }
	.band a { font-size: 22px; line-height: 100px; }

	.remedy_case { padding: 60px 30px 0; }

	.remedy_case .case_each > strong { font-size: 21px; margin-bottom: 30px; padding: 3px 0; vertical-align: middle; }
	.remedy_case li p { font-size: 20px; padding: 5px 0; }
}

@media screen and (max-width:490px) {
	.oneday_each > div > span { font-size: 10px; }
	.oneday_each > div > strong { font-size: 13px; margin-bottom: 8px; }
	.oneday_each > div > p { font-size: 11px; }
}