@charset "UTF-8";

#wrap {position:relative; min-height: 100%; background: #F9F5EF;}

/* main */
#amp_amp { fill: none; stroke: #171010; stroke-width: 5; stroke-dasharray: 3000; stroke-dashoffset: 3000; }
#amp_e_01 { fill: none; stroke: #171010; stroke-width: 5; stroke-dasharray: 1000; stroke-dashoffset: 1000; }
#amp_e_02 { fill: none; stroke: #171010; stroke-width: 5; stroke-dasharray: 1000; stroke-dashoffset: 1000; }
#amp_e_03 { fill: none; stroke: #171010; stroke-width: 5; stroke-dasharray: 1000; stroke-dashoffset: 1000; }
#amp_l  { fill: none; stroke: #171010; stroke-width: 5; stroke-dasharray: 1000; stroke-dashoffset: 1000; }

.main .parallax { overflow: hidden; }
.main .parallax .horizontal {display: flex; flex-wrap: nowrap; width: fit-content;}

.main_visual {flex:none; width:95vw;}

.main_portfolio {flex:none; box-sizing:border-box; height:100vh;}
.list_portfolio {display:flex; flex-wrap:nowrap; height:100%;}
.list_portfolio li {flex:none; width:40vw;}
.list_portfolio li > a {display:block;}
.list_portfolio .thumbnail {display:block; position:relative; overflow:hidden; padding-bottom:56%;}
.list_portfolio .thumbnail img {position:absolute; left:50%; top:50%; width:100%; object-fit: cover; transform: translate(-50%, -50%);}
.list_portfolio .info {box-sizing:border-box; position: relative; min-height:460px; padding:28px 20px 40px;}
.list_portfolio .tags {display:flex; justify-content:space-between; font-family: 'Faktum Wide'; font-size: 24px; font-weight: 600; line-height: 130%; letter-spacing: -1px;}
.list_portfolio .tags .year {white-space: nowrap; text-transform: uppercase;}
.list_portfolio .name {display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient: vertical; overflow:hidden; height:180px; margin-top:70px; padding:0 15px; font-size:50px; font-weight:600; text-align:center; text-transform:uppercase; letter-spacing: -1px; word-break: keep-all; text-overflow: ellipsis;}
.list_portfolio .detail {display:block; position:absolute; right:10px; bottom:40px; width:110px; height:110px;}
.list_portfolio .detail::before {content: ''; display: block; position: absolute; top: 50%; left: 50%; width: 80px; height: 80px; background: url(./../images/icon_link_arrow.svg) no-repeat center; transform: translate(-50%, -50%); transition: all 0.3s; z-index:1;}
.list_portfolio .detail::after {content:''; display:block; position:absolute; top:50%; left:50%; width:80px; height:80px; border:1px solid #171010; border-radius: 50%; transform: translate(-50%, -50%); transition: all 0.3s;}
.list_portfolio .detail:hover::before {background-image: url(./../images/icon_link_arrow_hover.svg);}
.list_portfolio .detail:hover::after {background:#171010;}

.main_featured {overflow:hidden; position:relative; padding-bottom:150px;}
.wrap_floating_featured {mix-blend-mode: difference;}
.floating_featured {box-sizing:border-box; position: absolute; left: 0; top: 0; width:100%; padding:0 20px; z-index:1;}
.title_featured {display:block;  width:100%; padding:100px 0 70px; font-family:'Faktum Wide'; font-size:21px; font-weight:700; color:#e2e5ff; /* 반전 시 #171010*/}
.list_featured {box-sizing:border-box; border-top:1px solid #e2e5ff; z-index:1;}
.list_featured li a {display:flex; padding:25px 0; border-bottom:1px solid #e2e5ff; color:#e2e5ff;}
.list_featured .num {flex:none; font-family: 'Faktum Wide'; margin-top:-10px; margin-right:20px; font-size:16px; font-weight:800;}
.list_featured .title { overflow:hidden; font-size: 36px; font-weight: 300; letter-spacing: -1px; white-space: nowrap; text-overflow: ellipsis;}
.list_featured .type {flex: none; font-family: 'Faktum Wide'; margin-top:-10px; font-size: 16px; font-weight: 800;}
.main_featured .featured_bg {display: block;}
.main_featured .featured_bg img {max-width:100%;}
.main_featured .bg1 {padding:100px 225px 0 0; text-align:right;}
.main_featured .bg2 {padding:300px 0 0 180px;}
.main_featured .bg3 {padding:195px 0 0; text-align:center;}
.main_featured .bg4 {padding:220px 95px 0 0; text-align:right;}
.main_featured .bg5 {padding:130px 0 0 120px;}


.main_visual2 { position:relative; z-index:1; }

/* about */
#wrap.about {background:#171010;}
.about .header .gnb a {color:#F9F5EF;}
.about .header .gnb a.contact {color: #171010;}

.about-we {overflow:hidden; padding:160px 0 140px; color:#F9F5EF; /* background: #171010; */}
.about-we .sec_typo {overflow:hidden; position:relative; padding:0 80px 20px; z-index:1;}
.about-we .typo {position: relative; font-family: 'Faktum Wide'; font-size:195px; line-height:80%; letter-spacing: -11.7px; text-transform:uppercase; z-index:1;}
.about-we .typo.t1 {padding-right:225px; text-align: right;}
.about-we .typo.t2 {position:relative; padding-right:20px; text-align: right;}
.about-we .typo.t2::before {content:''; display:block; position:absolute; top:50%; left:0; right:640px; height:15px; background:#F9F5EF;}
.about-we .typo.t4 {padding-left:540px;}

.about-we .video {display: flex; justify-content:center; margin-top:120px;}
.about-we .wrap_video {width:100%;}
.about-we .wrap_video video {width:100%;}
.about-we .txt_video {margin-top:140px; font-size:24px; font-weight:700; text-align:center; letter-spacing:-1px;}
.about-we .txt_we {margin-top:140px; padding:0 20px; font-family: 'Faktum Wide'; font-size:16px; text-align:center; text-transform:uppercase; letter-spacing:-1px;}

.about-infinite {overflow:hidden; position:relative; padding:115px 8vw;}
.about-infinite .slogan {font-family: 'Faktum Wide'; font-size:70px; font-weight:600; line-height:80%; text-transform:uppercase; letter-spacing:-2px;}
.about-infinite .flex_infinite {display:flex; flex-direction: column; gap:60px; margin-top:90px;}
.about-infinite .txt {font-size:24px; font-weight:700; letter-spacing:-1px;}
.about-infinite .photos {display:flex; overflow:hidden; justify-content:center; gap:12px;}
.about-infinite .photos div {flex:0 1 auto; width:fit-content;}
.about-infinite .photos img {max-width:100%;}
.about-infinite .wrap_ico {position: absolute; top: 215px; right: 155px; width: 260px; height: 260px; z-index:1;}


.about-solution {overflow:hidden; padding-bottom:340px;}
.about-solution .txt_intro {display:flex; justify-content:center; padding:270px 0 230px;}
.about-solution .wrap_txt {position:relative;}
.about-solution .wrap_txt p {font-size:50px; line-height:100%; font-weight:300; text-align:center; letter-spacing:-1.5px;}
.about-solution .wrap_txt .badge {display:block; position:absolute; left:100%; top:50%; background:#fff; height:70px; margin-left:-20px; padding: 0 30px; border-radius:80px; font-size:24px; line-height:70px; font-family: 'Faktum Wide'; font-weight:700; transform: translateY(-50%); box-shadow: 3px 11px 20px 0px rgba(0, 0, 0, 0.25);}

.about-solution .list_business {display:flex; align-items: center; flex-direction:column; margin-top:230px; padding:0 20px;}
.about-solution .list_business li {flex:none; display:flex; flex-wrap: wrap; align-items: center; width:100%; max-width:1600px; border-bottom:5px solid #171010;}
.about-solution .list_business strong {display:block; flex:none; position:relative; margin-right:80px; font-family: 'Faktum Wide'; font-size:48px; font-weight:500; line-height:140px; white-space: nowrap; text-transform:uppercase;}
.about-solution .list_business .badge {display:block; position:absolute; top:25px; left:100%; padding:0 30px; border-radius:50px; height:56px; margin-top:-5px; margin-left:-15px; font-family: 'Neue Montreal'; font-size:40px; font-weight: 800; line-height:56px; background:#fff; box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);}
.about-solution .list_business .tags {display:flex; align-items:center; flex-wrap: wrap; justify-content:flex-end; gap:20px; flex:1; min-height:70px; padding:35px 0 35px 15px;}
.about-solution .list_business .tag {overflow:hidden; height:68px; padding:0 20px; border:1px solid #171010; border-radius:50px; font-family: 'Faktum Wide'; font-size:24px; line-height:68px; font-weight:700; white-space: nowrap;}


/* 2024.07.31 수정 */
.about-solution .solution-slide {overflow:hidden; margin-top:200px; padding-top:50px;}
.about-solution .solution-slide-navigation {display:none; justify-content: space-between; margin-top:57px; padding:0 15px;}
.about-solution .solution-slide-navigation img {display:block;}
.about-solution .horizontal {display:flex; justify-content: center;}
.about-solution .list_mindset {display:flex; width:fit-content; box-sizing:border-box; gap:150px; flex-wrap: nowrap;}
.about-solution .list_mindset li {box-sizing:border-box; text-align:center;}
/* .about-solution .list_mindset li:first-child::after {content:''; display:block; position:absolute; left:-25vw; top:50%; right:calc(100% + 10px); height:89px; background:url(./../images/icon_slide_indicator.svg) no-repeat left center; background-size:contain; transform: translateY(-50%);} */
.about-solution .list_mindset .title {display:block; font-family: 'Faktum Wide'; font-size:32px; font-weight:700; line-height: 100%; letter-spacing: -0.5px; text-transform:uppercase;}
.about-solution .list_mindset .thumbnail {overflow:hidden; position:relative; width:fit-content; margin:78px auto 0;}
.about-solution .list_mindset .thumbnail img {display:block;}
.about-solution .list_mindset .thumbnail .count {display:block; position:absolute; left:0; bottom:-50px; width:100%; font-family: 'Faktum Wide'; font-size:180px; text-align:center; color:#fff; color:#F9F5EF; letter-spacing: -3.5px;}
.about-solution .list_mindset .name {display:block; margin-top:34px; font-family: 'Faktum Wide'; font-size:24px; font-weight:700; text-transform:uppercase; letter-spacing:-0.5px;}
.about-solution .list_mindset .desc {margin-top:34px;}

.about-better {display:flex; align-items:center; justify-content:center; overflow:hidden; height:100vh; padding:0 30px; /* background:#171010; */}
.about-better .typo {display:flex; align-items:center; gap:8px; font-family: 'Faktum Wide'; font-size:75px; color:#fff; font-weight:600; text-transform:uppercase;}
.about-better .typo span {flex:none;}
.about-better .typo span.bar {display:inline-block; width:250px; height:7px; flex:1; background:#fff;}

.about-make {overflow:hidden; padding:0 0 255px;}
.about-make .desc_make {display:flex; padding:0 8vw; gap:100px; justify-content:space-between;}
.about-make .desc_make img {max-width:100%;}
.about-make .desc_make .lt {padding-top:565px;}
.about-make .desc_make .lt .txt {margin-bottom:55px; font-size:24px; font-weight:700; letter-spacing:-1px;}
.about-make .desc_make .rt {padding-top:125px; text-align:right;}
.about-make .desc_make .rt .txt {margin-bottom:55px; font-family: 'Faktum Wide'; font-size:32px; line-height:100%; letter-spacing:-1.5px; text-transform:uppercase;}

/* .about-make .wrap_txt_make {overflow: hidden; position:relative;}
.about-make .txt_make {font-family: 'Faktum Wide'; font-weight:500; font-size:195px; line-height:80%; letter-spacing: -11.7px;}
.about-make .txt_make.lt {margin-top:255px;}
.about-make .txt_make.rt {text-align:right;} */

.about-make .wrap_txt_make {margin: 255px 0 0;}
.about-make .wrap_txt_make .marquee {position: relative; overflow: hidden; height:156px; padding:5px 0; white-space: nowrap; font-size: 0;}

.about-make .wrap_txt_make .marquee p {position:absolute; top:5px; left:0; font-size:0;}
.about-make .wrap_txt_make .marquee.reverse p { display:flex; justify-content: flex-end; position: absolute; top:5px; right:0; font-size:0;}
.about-make .wrap_txt_make span {display:inline-block; padding-right:30px; font-family: 'Faktum Wide'; font-weight: 500; font-size: 195px; line-height: 80%; letter-spacing: -11.7px;}

.about-hall {height:100vh; background:url(./../images/img_about_hall.jpg) no-repeat center; background-size:cover;}

.about-motto {overflow:hidden; height:100vh;}
.about-motto .list_motto {position:relative; height:100%; overflow:hidden;}
.about-motto .list_motto li {position:absolute; left:50%; top:50%; display:flex; align-items:center; justify-content: center; box-sizing:border-box; flex:none; width:100%; font-weight: 700; letter-spacing: -1.5px; transform:translate(-50%, -50%);}
.about-motto .list_motto strong {flex:none; width:210px; margin-right:265px; font-size:50px;}
.about-motto .list_motto strong > span {display:inline-block; position: relative;}
.about-motto .list_motto .badge {display:block; position:absolute; bottom:100%; left:100%; padding:0 30px; border-radius:50px; height:56px; margin-bottom:-18px; margin-left:-21px; font-family: 'Neue Montreal'; font-size:40px; font-weight: 800; line-height:56px; background:#fff; box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);}

.about-motto .list_motto p {font-size:24px; word-break: keep-all;}

.about-hall2 {height:100vh; /* background: url(./../images/temp_video.png) no-repeat center; background-size: cover;*/}

.about-history {overflow:hidden; padding:180px 30px 300px;}
.about-history h3 {max-width: 1560px; margin: 0 auto 75px; font-family: 'Faktum Wide'; font-weight:700; font-size:48px; letter-spacing: -1px;}
.about-history .list_history {max-width:1560px; margin:0 auto;}
.about-history .list_history dt {display:flex; justify-content:space-between; align-items: center; padding:25px 0 15px; border-bottom:1px solid #171010; font-family: 'Faktum Wide'; font-size:36px; letter-spacing:-0.5px; cursor: pointer;}
.about-history .list_history dt::after {content:''; display:block; width:20px; height:16px; background:url(./../images/icon_accordion.svg) no-repeat center; background-size:contain; transform: rotate(180deg); transition: all 0.3s;}
.about-history .list_history.opened dt::after {transform: rotate(360deg);}
.about-history .list_history dd {overflow:hidden;}

.about-history .btn_more {display:block; margin:120px auto 0; font-size:24px; font-weight:500;}
.about-history .list_detail {padding: 80px 30px 130px;}
.about-history .list_detail li {display:flex;}
.about-history .list_detail li + li {margin-top:50px;}
.about-history .list_detail .icon {display:flex; align-items: center; justify-content: center; flex:none; width:60px; height:60px;}
.about-history .list_detail .icon img {flex:none; max-width:100%; max-height:100%;}
.about-history .list_detail .month {font-family:'Faktum Wide'; font-size:24px; font-weight:700;}
.about-history .list_detail .txt {padding-top:3px; padding-left:70px;}
.about-history .list_detail .txt strong {display:block; font-size:20px; font-weight:700; letter-spacing: -1px; word-break: keep-all;}
.about-history .list_detail .txt span {display: block; margin-top:10px; font-family: 'Faktum Wide'; font-size: 20px; letter-spacing: -1px; word-break: keep-all;}

.about-grow {display:flex; overflow:hidden; height:100vh;}
.about-grow .bg_grow {flex:auto; background:url(./../images/bg_grow_01.jpg) no-repeat center; background-size:cover;}
.about-grow .txt_grow {display:flex; flex:none; flex-direction:column; box-sizing:border-box; width:992px; max-width:100%; padding:20px 20px 20px 45px;}
.about-grow .txt_grow .t1 {text-align:right; font-family:'Faktum Wide'; font-size: 94px; font-weight:500; line-height:80%; text-transform:uppercase; letter-spacing:-1.5px;}
.about-grow .bg_txt_grow {margin-top:40px; flex:1; background: url(./../images/bg_grow_02.jpg) no-repeat center; background-size: contain;}
.about-grow .txt_grow .t2 {margin-top:60px; font-size:24px; font-weight:700; letter-spacing:-1px;}
.about-grow .txt_grow .t2 span.bar {display:inline-block; width:160px; height:3px; background:#171010; vertical-align:middle;}

/* work */
.content_work {padding: 98px 0 100px;}
.title_work {display:flex; align-items: center; justify-content:space-between; padding:75px 20px 0;}
.title_work h2 {font-family: 'Faktum Wide'; font-size:64px; font-weight:500; text-transform:uppercase;}

.title_work .filter {display:flex; gap:64px;}
.title_work .filter li {font-weight:500; cursor: pointer; text-transform: uppercase;}
.title_work .filter li.active {text-decoration: underline; text-underline-offset:5px; font-weight:700;}
.wrap_work {margin-top:110px; padding:0 20px;}
.list_work {display:flex; flex-wrap: wrap; gap: 65px 16px;}
.list_work li {width:calc(25% - 12px); font-size:0;}
.list_work li.work-small {width:calc(20% - 12.8px);}
.list_work li.work-large {width:calc(50% - 8px);}
.list_work li .info {position:relative; padding:25px 60px 10px 0;}
.list_work li img {width:100%; vertical-align: bottom;}
.list_work li .year,
.list_work li .type {display:inline-block; font-family: 'Faktum Wide'; font-size:16px; font-weight:500;}
.list_work li .year {margin-right:8px;}

.list_work li .title {display:block; margin-top:6px; font-size:16px; font-weight:500;}
.list_work li .detail { display: block; position: absolute; top:20px; right: 0; width: 60px; height: 60px; }
.list_work li .detail::before { content: ''; display: block; position: absolute; top: 50%; left: 50%; width: 20px; height: 15px; background: url(./../images/icon_link_arrow.svg) no-repeat center; background-size: contain; transform: translate(-50%, -50%); transition: all 0.3s; z-index: 1; }
.list_work li .detail::after { content: ''; display: block; position: absolute; top: 50%; left: 50%; width: 40px; height: 40px; border: 1px solid #171010; border-radius: 50%; transform: translate(-50%, -50%); transition: all 0.3s; }
.list_work li .detail:hover::before { background-image: url(./../images/icon_link_arrow_hover.svg); }
.list_work li .detail:hover::after { background: #171010; }
.wrap_work .btn_more { display: block; margin: 200px auto 0; font-size: 24px; font-weight: 500; }

/* contact */
.contact .content_contact {padding:98px 0 100px;}
.contact .content_contact .txt {position:relative; padding:0 20px;}
.contact .content_contact .t1 {padding-top:90px; font-family: 'Faktum Wide'; font-size:200px; font-weight:500; line-height:80%; letter-spacing: -10px; text-transform: uppercase;}
.contact .content_contact .t1-wrap {display:inline-block; position:relative;}
.contact .content_contact .wrap_ico {display:block; position:absolute; top:70px; left:100%; width:160px; height:160px; margin-left:20px;}

.contact .content_contact .t2 {margin-top:100px; font-family: 'Faktum Wide'; font-size: 36px; font-weight:600; line-height: 100%; letter-spacing: -1px; text-transform: uppercase;}
.contact .content_contact .map {margin-top:90px; padding:0 20px;}
.contact .content_contact .infos {display:flex; justify-content:center; margin-top:125px;}
.contact .content_contact .infos dt {font-family: 'Neue Montreal'; font-size:20px;}
.contact .content_contact .infos dd {margin:10px 0 70px; font-family: 'Neue Montreal'; font-size:20px;}
.contact .content_contact .infos dd a {font-weight: 800;}
.contact .content_contact .infos dd .tel {border-bottom: 2px solid #171010;}
.contact .content_contact .talk {margin-top:80px; text-align:center;}
.contact .content_contact .talk a {display:inline-block; position:relative; padding-right:60px; font-family: 'Faktum Wide'; font-weight:600; font-size:96px; letter-spacing:-5px; text-decoration:underline;}
.contact .content_contact .talk .badge {display:block; position:absolute; top: 0; left:100%; width:82px; height:56px; margin-left:-80px; border-radius:50px; background:#fff url(./../images/icon_post.png) no-repeat center; box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);}


@media all and (max-width:1920px) {
    .about-we .typo {font-size:10.1563vw;}
    .about-we .typo.t1 {padding-right:11.7188vw;}
    .about-we .typo.t2::before {right:33.33vw;}
    .about-we .typo.t4 {padding-left:28.1250vw;}
}

/* 768해상도 아래는 모바일로 */
@media all and (max-width:768px) {
    /* main . index */
    .main .parallax .horizontal {display:block; width:auto;}
    .main_visual {width:auto; height:auto;}

    .main_portfolio {height:auto;}
    .list_portfolio {display:block;}
    .list_portfolio li {width:100%;}
    .list_portfolio li + li {margin-top:10px;}
    .list_portfolio .thumbnail {margin-top:0; padding:0;}
    .list_portfolio .thumbnail img {position:static; transform: none;}
    .list_portfolio .info {display:flex; align-items: center; justify-content: space-between; gap:5px; min-height:auto; padding:25px 10px 150px 15px; background:#F9F5EF;}
    /* .list_portfolio .wrap_info {} */
    .list_portfolio .tags {justify-content: flex-start; gap:10px; font-size:16px; font-weight:500; opacity: 1; transform:none;}
    .list_portfolio .type {white-space: nowrap;}
    .list_portfolio .name {display:block; height:auto; margin-top:5px; padding:0; font-size:20px; font-weight:500; text-align:left; opacity: 1; transform: none;}
    .list_portfolio .detail {position:static; flex:none; width:53px; height:53px; background:url(./../images/mobile/icon_link_arrow.svg) no-repeat center; opacity: 1; transform: none;}
    .list_portfolio .detail::before {content:none;}
    .list_portfolio .detail::after {content:none;}

    .main_visual2 {height:auto;}

    .main_featured {background:#F9F5EF;}
    .floating_featured {padding:0 15px;}
    .title_featured {padding:75px 0 30px;}
    .list_featured li a {padding:20px 0;}
    .list_featured .num {margin-top:-8px; margin-right:7px; font-size:13px;}
    .list_featured .title {font-size:16px;}
    .list_featured .type {display:none;}

    .main_featured .bg1 {max-width:158px; margin:0 auto; padding:160px 0 0; text-align:center;}
    .main_featured .bg2 {padding:170px 50vw 0 5vw;}
    .main_featured .bg3 {padding:140px 5vw 0 40vw;}
    .main_featured .bg4 {padding:70px 30vw 0 5vw;}
    .main_featured .bg5 {padding:90px 10vw 0 40vw;}

    /* about */
    .about-we {padding:70px 0 55px;}
    .about-we .sec_typo {max-width:380px; margin:0 auto; padding:0 10px 15px;}
    .about-we .typo {font-size:49px; letter-spacing: -3px;}
    .about-we .typo.t1 {padding:0; text-align:left;}
    .about-we .typo.t2 {padding:0;}
    .about-we .typo.t2::before {left:40px; right:155px; height:3px;}
    .about-we .typo.t3 {padding-left:16px;}
    .about-we .typo.t4 {padding:0 24px 0 0; text-align:right;}

    .about-we .video {margin:25px auto 0; box-sizing:border-box;}
    .about-we .txt_video {margin-top:50px; font-size:16px; letter-spacing: -0.5px;}
    .about-we .txt_we {margin-top:55px; padding:0 35px; font-size:11px; letter-spacing: 0;}

    .about-infinite {padding:70px 16px;}
    .about-infinite .slogan {font-size:28px; line-height:100%; font-weight:700; letter-spacing: -0.5px;}
    .about-infinite .flex_infinite {flex-direction: column-reverse; margin-top:75px;}
    .about-infinite .txt {font-size:16px;}
    .about-infinite .photos {overflow:visible; justify-content: normal; gap:0;}
    .about-infinite .photos div {flex:0 0 auto; width: fit-content;}
    .about-infinite .wrap_ico {top:210px; right:40px; width:93px; height:93px;}

    .about-solution {padding-bottom:80px;}

    .about-solution .txt_intro {padding:140px 0 100px;}
    .about-solution .wrap_txt p {font-size:32px; letter-spacing: -1px;}
    .about-solution .wrap_txt .badge {top:-30px; left:auto; right:-16px; bottom:0; height:32px; padding:0 10px; font-family: 'Neue Montreal'; font-size:16px; font-weight:800; line-height:32px; transform: none;}

    .about-solution .list_business {margin-top:0;}
    .about-solution .list_business li {flex-direction:column; align-items:normal; position:relative; min-height:60px;}
    .about-solution .list_business strong {flex:none; margin-right:auto; font-size:24px; line-height:60px;}
    .about-solution .list_business .badge {top:5px; height:32px; margin-top:0; margin-left:-3px; padding:0 18px; font-size:16px; font-weight:800; line-height:32px; transform: none;}
    .about-solution .list_business .tags {display:none; min-height:auto; padding:15px 0; justify-content: flex-start; gap:6px;}
    .about-solution .list_business .tag {height:auto; padding:5px 10px; font-size:12px; line-height:normal;}

    .about-solution .solution-slide {margin-top:120px;}
    .about-solution .solution-slide-navigation {display:flex;}
    .about-solution .list_mindset li {width:100vw; padding:0;}
    .about-solution .list_mindset li:first-child::after {content:none;}
    .about-solution .list_mindset .title {font-size:24px;}
    .about-solution .list_mindset .thumbnail {width:auto; margin-top: 55px; padding:0 70px;}
    .about-solution .list_mindset .thumbnail img {max-width:100%;}
    .about-solution .list_mindset .thumbnail .count {bottom:-20px; font-size:72px; letter-spacing: -1.5px;}
    .about-solution .list_mindset .name {margin-top:28px; font-size:14px;}

    .about-better .typo {display:block; font-size:24px;}
    .about-better .typo span.bar {display:none;}

    .about-make {padding-bottom:0;}
    .about-make .desc_make {display:block; padding:0 15px;}
    .about-make .desc_make .lt {padding-top:75px;}
    .about-make .desc_make .lt .txt {margin-bottom:42px; font-size:16px;}
    .about-make .desc_make .rt {padding-top:42px;}
    .about-make .desc_make .rt .txt {margin-bottom:42px; font-size:16px;}

    .about-make .wrap_txt_make {margin: 40px 0 0;}
    .about-make .wrap_txt_make .marquee,
    .about-make .wrap_txt_make .marquee2 {height:30px;}
    .about-make .wrap_txt_make span {font-size:48px; letter-spacing: -1px;}
    .about-hall {display:none;}

    .about-motto {height:auto; padding:100px 15px 75px;}
    .about-motto .list_motto {overflow: visible;}
    .about-motto .list_motto li {flex-direction: column; align-items: normal; gap:35px; position:static; padding:0; transform: none;}
    .about-motto .list_motto li + li {margin-top:120px;}
    .about-motto .list_motto strong {display:block; width:auto; margin:0; font-size:32px; font-weight:700; letter-spacing: -1px;}
    .about-motto .list_motto .badge {width:30px; height:38px; margin-bottom:-13px; margin-left:-14px; padding:0 9px; font-size:24px; text-align:center; line-height:38px;}
    .about-motto .list_motto p {font-size:16px; font-weight:700; line-height:24px; letter-spacing: -0.5px;}

    .about-hall2 {height:auto;}

    .about-history {padding:40px 15px 90px;}
    .about-history h3 {margin-bottom:20px; font-size:28px; letter-spacing: -0.5px;}
    .about-history .list_history dt {font-size:24px;}
    .about-history .list_detail {padding:35px 15px 40px;}
    .about-history .list_detail li + li {margin-top:20px;}
    .about-history .list_detail .icon {width:40px; height:40px;}
    .about-history .list_detail .txt {padding-top:2px; padding-left:60px;}
    .about-history .list_detail .txt strong {font-size:13px;}
    .about-history .list_detail .txt span {margin-top:10px; font-size:13px; letter-spacing: 0;}

    .about-grow {display:block; height:auto;}
    .about-grow .bg_grow {padding-bottom:115%;}
    .about-grow .txt_grow {padding:40px 15px 0;}
    .about-grow .txt_grow .t1 {text-align:left; font-size:48px; font-weight:600; letter-spacing: -1px;}
    .about-grow .bg_txt_grow {margin-top:55px; padding-bottom:100%;}
    .about-grow .txt_grow .t2 {margin-top:55px; font-size:16px;}
    .about-grow .txt_grow .t2 span.bar {width:100px; height:2px;}

    /* work */
    .content_work {padding-top:60px;}
    .title_work {position:relative; padding-top:5px;}
    .title_work h2 {font-size:40px;}
    .title_work .filter {align-items:flex-end; flex-direction:column; gap:20px; position:absolute; right:20px; top:19px;}
    .title_work .filter li {display:none;}
    .title_work .filter.opened li {display:block; width:fit-content;}
    .title_work .filter li.active {display:block;}
    .title_work .filter li.active::before {content:'+';}

    .wrap_work {margin-top:20px;}
    .list_work {flex-direction: column; gap:70px; flex-wrap:nowrap;}

    .list_work li,
    .list_work li.work-small,
    .list_work li.work-large {flex:none; width:auto;}
    .list_work li .detail {background:url(./../images/mobile/icon_link_arrow.svg) no-repeat center;}
    .list_work li .detail::before,
    .list_work li .detail::after {content:none;}

    /* contact */
    .contact .content_contact {overflow:hidden; padding:60px 0 10px;}
    .contact .content_contact .txt {padding:0 15px;}
    .contact .content_contact .t1 {padding-top:50px; font-size:58px; letter-spacing: -2px;}
    .contact .content_contact .wrap_ico {top:-40px; left:auto; right:10px; width:55px; height:55px; margin:0;}
    .contact .content_contact .t2 {margin-top:40px; font-size:20px;}
    .contact .content_contact .map {margin-top:40px; padding:0 15px;}

    .contact .content_contact .infos {margin-top:40px; text-align:center;}
    .contact .content_contact .infos dd {margin:10px 0 40px;}
    .contact .content_contact .infos dd a {font-weight:normal; border-bottom: 1px solid #171010;}

    .contact .content_contact .talk {margin-top:30px;}
    .contact .content_contact .talk a {padding-right:53px; font-size:48px; font-weight:normal; letter-spacing: -2.4px;}
    .contact .content_contact .talk .badge {top:-8px; left: auto; right:0; width:62px; height:40px; margin:0; background-size:30px;}


}