@charset "utf-8";
/* common */
.doc-tit {font-size: 25px; font-weight: 500; color: #242424; text-align: center; position: relative;}
.doc-tit.large {font-size: 30px;}
.doc-tit.medium {font-size: 20px;}
.doc-tit.small {font-size: 18px;}

.doc-tit.bot-line:before {position: absolute; content: ''; width: 100px; height: 1px; bottom: 0; left: 50%; transform: translateX(-50%); background-color: #ddd;}
.doc-tit p {position: relative; display: inline-block; margin-bottom: 30px;}
.doc-tit.bot-line p:before {position: absolute; content: ''; width: 15px; height: 15px; left: -22px; background: url('../images/sub/greetings_tit_left.png') no-repeat top center; background-size: contain;}
.doc-tit.bot-line p:after {position: absolute; content: ''; width: 15px; height: 15px; right: -22px; background: url('../images/sub/greetings_tit_right.png') no-repeat top center; background-size: contain;}

.doc-sub-tit {text-align: center; padding-top: 38px; padding-bottom: 55px;}
.doc-sub-tit p {font-size: 18px; font-weight: 500; line-height: 1.765em;}
/* sub01_01 */
.greetings {display: flex;}
.greetings .img {min-width: 504px; position: relative;}
.greetings .doc-tit {text-align: left;}
.greetings .doc-tit:before {content: none;}
.greetings .doc-cnt {padding-left: 70px; padding-top: 30px;}
.greetings .doc-desc p:not(:last-child) {padding-bottom: 30px;}
.greetings .doc-desc p strong {font-weight: 500; color: #242424;}

/* sub01_02 */
.history .years {margin-top: 75px;}
.history .year h2 {position: relative; font-size: 70px; font-weight: 800; color: #29a44a; margin-bottom: 55px;}
.history .year:nth-child(even) h2 {text-align: right;}
.history .year h2:before {position: absolute; content: ''; width: 85%; height: 1px; max-width: 999px; top: 50%; right: 0; transform: translateY(-50%); background-color: #ddd;}
.history .year.long h2:before {width: 63%;}
.history .year:nth-child(even) h2:before {left: 0;}
.history .year:nth-child(even) .year-cnt {flex-direction: row-reverse;}
.history .year-cnt {display: flex; align-items: center; margin-bottom: 100px;}
.history .year-txt {flex: 1; padding-left: 70px; padding-right: 70px; font-size: clamp(0.9375rem, 0.8438rem + 0.2344vw, 1.125rem);}
.history .year-txt ul {width: fit-content;}
.history .year:nth-child(even) .year-txt ul {margin-left: auto;}
.history .year-txt li:not(:last-child) {margin-bottom: 7px;}
.history .year-txt li p {position: relative; padding-left: 12px; line-height: 1.5em;}
.history .year-txt li p:before {position: absolute; content: '-'; left: 0; font-size: 16px;}
.history .year-txt span {font-size: 17px; font-weight: 600; color: #29a44a; margin-right: 12px;}
.fz20 {font-size: clamp(0.9375rem, 0.7813rem + 0.3906vw, 1.25rem); font-weight: 500;}

/* sub02_01 */
.business-list.fullpage-wrapper {transform: translate3d(0px, 0px, 0px);}
.business-list.mb {margin-bottom: 100px;}
.business-list ul {display: flex; flex-wrap: wrap; margin: 0 -15px;}
.business-list li {width: 33.3333%; padding: 0 15px;}
.business-list li .txt {padding: 0 35px; margin-top: 20px;}
.business-list li p {line-height: 1.563em; margin-top: 3px; text-align: center;}
.business-consign {z-index: -1;}
.business-consign .catering-list {background-color: #f8f8f8; padding: 100px 0; margin-bottom: -100px;}
.business-consign .catering-list .doc-tit p {font-family: 'Noto Serif', serif; font-size: 30px; font-weight: 700; margin-bottom: 80px; letter-spacing: 0;}
.business-consign .fp-tableCell {vertical-align: top; height: 1289px !important;}
/* sub02_02 */
.business-move > * {letter-spacing: 0;}
.business-info .contain {display: flex; justify-content: space-between; align-items: center; gap: 45px; margin-top: 65px; margin-bottom: 60px;}
.business-info .img {min-width: 565px;}
.business-move .business-info .txt .doc-tit span {display: inline-block; width: 20px; margin-bottom: 10px;}
.business-info .txt .doc-tit {text-align: left;}
.business-info .txt p {line-height: 1.625em; padding-right: 10px;}
.business-info .txt li {margin-bottom: 28px;}
.business-info .txt li:last-child {margin-bottom: 0;}
.business-move .business-list li {margin-bottom: 0;}

.business-move .business-list {padding-top: 60px; background-color: #f8f8f8; padding-bottom: 100px; margin-bottom: -100px;}

/* sub02_03 */
.business-circul .business-info .contain {margin-bottom: 100px;}
.business-circul .business-info .txt li {position: relative; margin-bottom: 0; padding-left: 10px;}
.business-circul .business-info .txt li:before {position: absolute; content: '·'; font-size: 17px; color: inherit; left: 0;}
.business-circul .business-info .txt p {line-height: 1.875em;}
.business-circul .business-info .txt .doc-tit p {line-height: 1.5em; border-bottom: 1px solid #ddd; padding-bottom: 13px; margin-bottom: 25px;}

.business-circul .business-supply {background-color: #fff; padding: 100px 0; border-bottom: 1px solid #eee;}
.cold-chain {padding-top: 100px;}
.cold-chain .contain > .doc-tit p {color: #29a44a; margin-top: 60px; margin-bottom: 40px;}
.cold-chain .process {display: flex; justify-content: space-between; text-align: center; margin: 0 -20px}
.cold-chain .process .img {display: flex; justify-content: center; align-items: center; width: 140px; height: 140px; border-radius: 100%; background-color: #f8f8f8; margin:auto; margin-bottom: 20px;}
.cold-chain .process .doc-tit.small p {margin-bottom: 13px;}
.cold-chain .process .item {position: relative; padding: 0 20px;}
.cold-chain .process .item:not(:last-child):before {position: absolute; content: ''; background: url('../images/sub/process_arrow.png') no-repeat center center; background-size: contain; width: 21px; height: 27px; right: -80px; top: 60px;}
.cold-chain .process .list-cnt li p {font-size: 17px; line-height: 1.625em; position: relative; padding-left: 10px; display: inline;}
.cold-chain .process .list-cnt li p:before {position: absolute; content: '-'; left: 0; color: inherit; font-size: inherit;}

/* sub03 */
.gallery {margin-top: 80px;}

/* sub04_02 */
.root_daum_roughmap {width: 100% !important;}

.contact {margin-top: 50px; padding: 29px 20px; border-top: 2px solid #808080; border-bottom: 1px solid #ddd;;}
.contact .items {display: flex; justify-content: space-between;}
.contact .item, .contact .doc-info {display: flex; align-items: center;}
.contact .img {margin-right: 15px;}
.contact .item p:not(:first-child) {position: relative; padding-left: 10px; margin-left: 10px;}
.contact .item p:not(:first-child):before {position: absolute; content: ''; width: 2px; height: 15px; background-color: #ddd; left: 0; top: 50%; transform: translateY(-50%)}
.contact span {font-size: 17px; color: #242424; font-weight: 500;}