@charset "utf-8";

#sub #wrapper {overflow:visible;}

.doc-tit {margin-bottom:25px; font-size:var(--fz40); font-weight:700; letter-spacing:0; line-height:1.4em; color:#242424;}

.doc-txt {font-size:var(--fz20); color:#454545; line-height:-.03em; line-height:1.4em;}
.doc-txt2 {font-size:var(--fz18); color:#454545; line-height:-.03em; line-height:1.4em; font-weight:400;}

.greeting {padding-bottom:240px; background:linear-gradient(to bottom, #fff 30%, #faf4f2 85%);}
.greeting .contain {display:flex;}
.greeting .desc {margin-top:25px;}
.greeting .desc .comp {font-size:var(--fz20); font-weight:400; letter-spacing:-.03em; line-height:1.5em; color:#878787;}
.greeting .desc .name {font-size:var(--fz20); font-weight:600; letter-spacing:-.03em; line-height:1.5em; color:#242424;}
.greeting .son {width:548px; margin-right:30px;}
.greeting .wrap {flex:1 1 auto; min-width:0; width:1%;}
.greeting .wrap .top {display:flex; align-items:flex-end; background: #f4eae6;}
.greeting .wrap .desc {margin:0 0 25px 20px;}
.greeting .wrap .desc .comp {font-size:var(--fz16);}
.greeting .wrap .desc .name {font-size:var(--fz16);}
.greeting .cnt {margin-top:190px;}
.greeting .cnt h2 {margin-bottom:52px; font-family:var(--font-out); font-size:var(--fz100); font-weight:700; letter-spacing:.01em; line-height:1em; color:#f7efec;}
.greeting .cnt p {font-size:var(--fz20); font-weight:400; letter-spacing:-.03em; line-height:1.6em; color:#686868;}
.greeting .cnt p + p {margin-top:17px;}

.history-txt {margin-bottom:90px; font-size:var(--fz18); font-weight:600; letter-spacing:-.03em; line-height:1.44em; color:#242424;}
.history-wrap {display:flex; justify-content:space-between;}
.history-wrap .img-wrap {width:calc(50% - 60px);}
.history-wrap .img {left:0; position:sticky; top:calc(var(--header-height) + 30px);}
.history-wrap .img img {border-radius:24px;}
.history {width:calc(50% - 60px); margin-top:48px; position:relative;}
.history .group {padding-left:65px; margin-bottom:58px;}
.history .group:last-child {margin-bottom:0;}
.history .group h3 {line-height:1.4em; position:relative; margin-bottom:20px; font-size:var(--fz30); font-weight:800; letter-spacing:-.03em; color:#242424;}
.history .group h3:before {z-index:10; content:''; position:absolute; left:-65px; top:50%; margin:-4px 0 0 -4px; width:9px; height:9px; border-radius:100%; background:var(--color-primary);} 
.history .group ul li {text-indent:-.4em; padding-left:.4em; font-size:var(--fz18); font-weight:400; color:#454545; margin-bottom:13px; line-height:1.4em;}
.history .group ul li strong {font-weight:600;}
.history .progress-container {margin-top:20px; position:absolute; left:0; top:0; height:100%; width:1px; background:#ddd; z-index:10;}
.history .progress-bar {width:3px; margin-left:-1px; background:var(--color-primary); height:100%;}

.ideal-top {text-align:center; margin-bottom:77px;}
.ideal-top h2 {margin-bottom:35px; font-size:var(--fz32); font-weight:600; letter-spacing:-.03em; line-height:1.3em; color:#242424;}
.ideal-top h2 strong {font-family:var(--font-pop); font-weight:700;}

.ideal {padding:80px 0 230px; background:url('/images/sub/ideal-bg.jpg') no-repeat 50% 50% / cover;}
.ideal .list ul {display:flex; margin:0 -32px;}
.ideal .list ul li {width:33.333%; text-align:center; padding:0 32px;}
.ideal .list ul li .img {margin-bottom:27px;}
.ideal .list ul li .img img {border-radius:24px;}
.ideal .list ul li .tit-en {font-family:var(--font-pop); font-size:var(--fz28); font-weight:600; letter-spacing:-.03em; line-height:1.4em; color:#242424;}
.ideal .list ul li .tit-ko {margin:15px 0 28px; font-size:var(--fz20); font-weight:500; letter-spacing:-.03em; line-height:1.4em; color:#242424;}
.ideal .list ul li .txt {font-size:var(--fz18); font-weight:500; letter-spacing:-.03em; line-height:1.67em; color:#878787;}

.biz-intro {display:flex; height:100vh;}
.biz-intro a {text-align:center; padding:30px; display:flex; flex-direction:column; align-items:center; justify-content:center; width:50%; height:100%; background-size:cover; background-repeat:no-repeat; color:#fff;}
.biz-intro a .txt {font-size:var(--fz32); font-weight:500; line-height:1.4em;}
.biz-intro a .logo {margin:53px 0 75px;}
.biz-intro a:hover .more2 {color:#242424; background:#fff;}

.biz-cnt {display:flex; align-items:center;}
.biz-cnt .img {margin-right:100px;}
.biz-cnt .img img {border-radius:52px 0 52px 0;}
.biz-cnt .cnt h2 {font-size:var(--fz40); font-weight:600; letter-spacing:-.03em; line-height:1.4em; color:#242424;}
.biz-cnt .cnt p {margin:43px 0 100px; font-size:var(--fz18); font-weight:400; letter-spacing:-.03em; line-height:1.78em;}

.address-info {margin-top:35px; display:flex; justify-content:space-between;}
.address-info dl {font-size:var(--fz18); font-weight:500; line-height:1.4em; color:#242424; display:flex; align-items:center;}
.address-info dl dt {display:flex; align-items:center; margin-right:13px;}
.address-info dl dt img {margin-right:10px;}
.address-info dl dd {font-weight:600;}
.address-info .wrap {display:flex;}
.address-info .wrap dl {margin-right:30px;}
.address-info .wrap dl:last-child {margin-right:0;}