/* section */
section {padding: 5vw 0;}
section >* { z-index: 3; }
section .h2tit {font-size: 23px;text-align: center;letter-spacing: 3px;font-family: "AR One Sans", sans-serif;font-weight: 600;}
section .topic-title p {font-size: 38px;text-transform: uppercase;text-align: center;}
section .topic-title p:first-letter{color:var(--primary)}
section .clip { margin: auto; width: 100%; }
section .clip img { height: 100%; }
section .clip iframe { width: 100%; height: 100%; top: 0; left: 0; }
section .clip video { width: auto; height: 100%; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); }

/* freebox */
#freebox{position:relative;background: var(--gray);}
#freebox,#freebox *{transition:unset;-webkit-transition:unset;}
#freebox:before{content:'';width: 8%;height: 100%;position: absolute;bottom: -100px;background: var(--primary);z-index: 8;left: 0;}
#freebox .topic-title{margin-bottom:50px;align-items:center}
#freebox .webframe{width: min(75%,1350px);margin: 0 auto;}
#freeboxlist{position:relative;z-index:2;}
#freeboxlist .free{padding: 0 0 20px;text-align:center;position:relative;overflow:hidden;-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.05);box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.05);background-color: #ffffff;-webkit-transform: translateY(0px);transform: translateY(0px);-webkit-transition: all .5s;transition: all .5s;margin: 0 20px;clip-path: polygon(0 0, calc(100% - 45px) 0, 100% 45px, 100% 100%, 45px 100%, 0 calc(100% - 45px));}
#freeboxlist .free .topBox{-webkit-box-align:center;align-items:center;display:flex;-webkit-box-pack:justify;justify-content:space-between;margin-bottom: 20px;position:relative;z-index:1;flex-direction:row-reverse}
#freeboxlist .free .topBox .stepBox{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;color:#888;display:-webkit-box;display:-ms-flexbox;display:flex;font-family:"Cardo",serif}
#freeboxlist .free .topBox .stepBox .number{display:inline-block;font-size:40px;line-height:0.8;font-family: "Libre Baskerville", serif;opacity:.3}
#freeboxlist .free .topBox .stepBox .text{display:inline-block;font-size:16px;line-height:1;letter-spacing:0.75px;margin-left:10px}
#freeboxlist .free:hover .topBox img{transform: scale(1.08);	filter: brightness(.88);}
#freeboxlist .free .topBox .Img{overflow:hidden;}
#freeboxlist .free .topBox .Img img{aspect-ratio: 4/3;object-fit: cover;transition: transform .6s cubic-bezier(.22, 1, .36, 1), filter .6s ease;}
#freeboxlist .free .Txt{position:relative;z-index:1;padding: 12px 30px;}
#freeboxlist .free .Txt .title{position:relative;color:#313131;letter-spacing: 1px;line-height: 140%;font-size: 20px;font-weight: 500;text-align: center;height: auto;}
#freeboxlist .free .Txt .title a{display:block;font-size:18px;font-weight:500;line-height:1.2;letter-spacing:1.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#freeboxlist .free .Txt .text{color: #2f2f2f;line-height:1.65;letter-spacing: 0.4px;opacity: .6;font-size: 14px;font-family: "Libre Baskerville", serif;}
#freeboxlist .free a{position:absolute;width:100%;height:100%;top:0;left:0;z-index:2}
#freeboxlist .free .photo{text-align:center;width:70px;margin:0 auto 30px;box-shadow:0 0 10px rgb(0 0 0 / 10%);border-radius:50%;padding:30px;background:#fff}
#freeboxlist .free:hover .photo:before{top:0}
#freeboxlist .free:nth-child(2){animation-delay: 0.2s;-webkit-animation-delay: 0.2s;}
#freeboxlist .free:nth-child(3){animation-delay: 0.3s;-webkit-animation-delay: 0.3s;}
#freeboxlist .free:nth-child(4){animation-delay: 0.4s;-webkit-animation-delay: 0.4s;}
#freeboxlist .free:nth-child(5){animation-delay: 0.5s;-webkit-animation-delay: 0.5s;}
#freeboxlist .free:nth-child(6){animation-delay: 0.6s;-webkit-animation-delay: 0.6s;}
#freeboxlist .free:nth-child(7){animation-delay: 0.7s;-webkit-animation-delay: 0.7s;}
#freeboxlist .free h4{text-align:center;font-size:22px;line-height:110%;overflow:hidden;margin-bottom: 12px;height: 25px;}
#freeboxlist .free p{font-size: 14px;text-transform: capitalize;}

/* about_area */
#about_area_area {padding: 0;position: relative;}
#about_area_area:after{content:'';width: 100%;height: 1px;position: absolute;bottom: 10%;background: var(--gray-dark);opacity: .15;z-index: 7;}
#about_area_area:before{content:url(/images/44/img-about.webp);position: absolute;right: -5%;top: -8%;zoom: 27%;animation: aboutImgAnimation 5s ease-in-out infinite;}
@keyframes aboutImgAnimation{0%{-webkit-transform:translateY(0);transform:translateY(0);}50%{-webkit-transform:translateY(20px);transform:translateY(40px);}100%{-webkit-transform:translateY(0);transform:translateY(0);}}
#about_area_area .workframe{display:grid;grid-template-columns: 60% 30%;width: 85%;margin: auto auto auto 0;justify-content: space-between;align-items: center;}
#about_area_img{order:-1}
#about_area_area .topic-title p{text-align:left;word-spacing: 100vw;line-height: 1.4;}
#about_area_area .pageh1{font-weight: 500;margin-bottom: 30px;font-size: 23px;letter-spacing: 5px;line-height: 1.6;margin-top: 10px;}
#about_area_area .title_box { padding-bottom: 0; }
#about_area_area h2 { font-size: 45px; font-style: italic; }
#about_area_area article p {margin-bottom: 30px;line-height: 210%;letter-spacing: 2px;font-weight: 400;text-align: justify;}
#about_area_area .clip {overflow: hidden;position: relative;z-index: 2;}
#about_area_area .clip img{aspect-ratio: 4/3;transform: scaleX(-1);}

/* custom_area */
#custom_area ul{margin-top: 50px;}
#custom_area ul li {margin: 0 25px;}
#custom_area ul li .clip img {aspect-ratio: 4/3;clip-path: polygon(0 0, calc(100% - 45px) 0, 100% 45px, 100% 100%, 45px 100%, 0 calc(100% - 45px));}
#custom_area ul li .h3 {margin: 20px 0 5px;font-size: 20px;text-align: center;color: var(--info);height: auto;}

/* news_area */
#news_area{position:relative;padding:120px 0 130px;overflow:hidden;background:#f5f1e9;}
#news_area::before{content:"";position:absolute;z-index:0;width: 380px;height: 100px;left: 0;top: 0;background:linear-gradient(135deg,var(--green-900) 0%,var(--green-800) 58%,var(--green-700) 100%);opacity:.96;pointer-events:none;}
#news_area::after{content:"";position:absolute;z-index:0;width:520px;height:280px;right:-150px;bottom:-95px;background:linear-gradient(135deg,var(--green-100) 0%,var(--cream) 58%,var(--warm-white) 100%);clip-path:polygon(18% 0,100% 14%,100% 100%,0 100%);pointer-events:none;}
#news_area .news-deco{position:absolute;z-index:1;pointer-events:none;}
#news_area .news-deco-left{width:180px;height: 100%;left: 5%;top: 0;border-left:1px solid rgba(var(--white-rgb),.42);border-bottom:1px solid rgba(var(--white-rgb),.22);}
#news_area .news-deco-right{width: 490px;height: 100%;right: 0;bottom: 0;background: url(/images/44/img-n-bg.jpg);background-position: center;opacity: 0.7;}
#news_area .workframe{position:relative;z-index:2;width: 86%;}
#news_area .news-layout{display:grid;grid-template-columns:minmax(270px,.78fr) minmax(0,2.35fr);gap:5vw;align-items: center;min-width:0;}
#news_area .news-intro{position:relative;}
#news_area .news-intro-inner{position:sticky;top:130px;padding:35px 0 20px;}
#news_area .news-eyebrow{display:flex;align-items:center;gap:8px;margin:0 0 24px;color:#557262;font-size:12px;font-weight:600;letter-spacing:.25em;line-height:1;}
#news_area .news-eyebrow span{color:#0f5a35;font-size:12px;font-weight:700;letter-spacing:.25em;}
#news_area .news-title{max-width:320px;}
#news_area .news-intro-text{max-width:300px;margin:26px 0 0;color:#6e746f;font-weight:400;padding-bottom: 35px;font-size: 18px;line-height: 1.6;letter-spacing: 0.6px;}
#news_area .news-line{position:relative;width:100%;margin:40px 0 28px;height:1px;background:rgba(15,90,53,.14);overflow:hidden;}
#news_area .news-line span{display:block;width:72px;height:1px;background:#0f5a35;}
#news_area .news-control{display:flex;align-items:center;gap:18px;}
#news_area .news-control button{display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border:1px solid rgba(15,90,53,.25);border-radius:50%;background:transparent;cursor:pointer;transition:all .35s ease;}
#news_area .news-control button span{color:#174a32;font-size:18px;line-height:1;transition:color .35s ease;}
#news_area .news-control button:hover{border-color:#0f5a35;background:#0f5a35;transform:translateY(-2px);}
#news_area .news-control button:hover span{color:#fff;}
#news_area .news-count{display:flex;align-items:center;gap:9px;min-width:82px;color:#174a32;font-family:Georgia,serif;font-size:12px;}
#news_area .news-count span{font-size:13px;line-height:1;}
#news_area .news-count .news-current{font-size:20px;color:#0f5a35;}
#news_area .news-count i{display:block;width:18px;height:1px;background:rgba(15,90,53,.35);transform:rotate(-45deg);}
#news_area .news-slider{margin:0 -12px;}
#news_area .news-slider-wrap{position:relative;min-width:0;overflow:hidden;}
#news_area .news-slider{position:relative;min-width:0;margin:0 -12px;overflow:hidden;}
#news_area .news-slider .slick-list{overflow:hidden;padding:0!important;}
#news_area .news-slider .slick-track{display:flex;align-items:stretch;}
#news_area .news-slider .slick-slide{float:none;height:auto;}
#news_area .news-slider .slick-slide>div{height:100%;}
#news_area .news-card{height:auto;padding:0 12px;box-sizing:border-box;}
#news_area .news-slider .slick-track{display:flex;align-items:stretch;}
#news_area .news-card{height:auto;padding:0 12px;counter-increment:news-item;}
#news_area .news-card-inner{position:relative;height:100%;min-height: 420px;overflow:hidden;background:#fff;}
#news_area .news-photo{position:absolute;inset:0;overflow:hidden;background:#ddd;}
#news_area .news-photo::after{content:"";position:absolute;inset:0;background: linear-gradient(180deg,rgba(10,38,25,0) 0%,rgba(10,38,25,.07) 20%,rgba(10,38,25,.74) 100%);transition:background .55s ease;}
#news_area .news-photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.001);filter:saturate(.86) brightness(1.02);transition:transform 1.1s cubic-bezier(.22,1,.36,1),filter .65s ease;}
#news_area .news-card-no{position:absolute;z-index:3;top:30px;left:30px;display:flex;align-items:center;justify-content:center;width:54px;height:54px;border:1px solid rgba(255,255,255,.58);border-radius:50%;background:rgba(255,255,255,.16);backdrop-filter:blur(10px);display: none;}
#news_area .news-card-no::before{content:"0" counter(news-item);color:#fff;font-family:Georgia,serif;font-size:16px;letter-spacing:.04em;}
#news_area .news-info{position:absolute;z-index:3;left:0;right:0;bottom:0;padding:44px 36px 36px;color:#fff;transition:padding .55s cubic-bezier(.22,1,.36,1),background .55s ease;}
#news_area .news-meta{display:flex;align-items:center;gap:14px;margin:0 0 14px;}
#news_area .news-meta a{position:relative;z-index:6;padding:5px 12px;border:1px solid rgba(255,255,255,.38);border-radius:999px;color:#fff;font-size:11px;font-weight:500;line-height:1.4;letter-spacing:.08em;}
#news_area .news-meta time{color:rgba(255,255,255,.75);font-family:"Quicksand",sans-serif;font-size:12px;letter-spacing:.08em;}
#news_area .news-info h3{max-width:92%;margin:0;color:#fff;font-size: clamp(18px,1.65vw,22px);font-weight:500;line-height:1.55;letter-spacing:.055em;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;}
#news_area .news-more{display:flex;align-items:center;justify-content:space-between;max-height:0;margin-top:0;overflow:hidden;opacity:0;transform:translateY(15px);transition:max-height .55s ease,margin .55s ease,opacity .45s ease,transform .55s ease;}
#news_area .news-more span{color:#fff;font-family:"Quicksand",sans-serif;font-size:11px;font-weight:600;letter-spacing:.18em;}
#news_area .news-more i{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.45);border-radius:50%;color:#fff;font-style:normal;}
#news_area .news-cover-link{position:absolute;z-index:5;inset:0;}
#news_area .news-card-inner:hover .news-photo img{transform:scale(1.065);filter:saturate(1) brightness(.9);}
#news_area .news-card-inner:hover .news-photo::after{background:linear-gradient(180deg,rgba(6,54,31,.04) 15%,rgba(6,54,31,.22) 48%,rgba(6,54,31,.93) 100%);}
#news_area .news-card-inner:hover .news-info{padding-bottom:34px;}
#news_area .news-card-inner:hover .news-more{max-height:60px;margin-top:26px;opacity:1;transform:none;}
#news_area .news-card:nth-child(even) .news-card-inner{}
#news_area .slick-dots{display:flex!important;align-items:center;gap:8px;margin:34px 12px 0;}
#news_area .slick-dots li{width:auto;height:auto;margin:0;}
#news_area .slick-dots li button{width:26px;height:2px;padding:0;background:rgba(15,90,53,.18);font-size:0;transition:width .35s ease,background .35s ease;}
#news_area .slick-dots li.slick-active button{width:58px;background:#0f5a35;}
#news_area .slick-dots li button::before{display:none;}

@media(max-width:1560px){
    #news_area .news-card-inner{
    min-height: 320px;
}
}

@media(max-width:1100px){
#news_area{padding:90px 0 100px;}
#news_area .news-layout{grid-template-columns:250px minmax(0,1fr);gap:38px;}
#news_area .news-card-inner{min-height: 320px;}
#news_area .news-card:nth-child(even) .news-card-inner{}
#news_area .news-info{padding:36px 28px 28px;}

#news_area{padding:72px 0 82px;}
#news_area .news-layout{display:block;}
#news_area .news-intro-inner{position:relative;top:auto;padding:0;}
#news_area .news-title{max-width:none;}
#news_area .news-intro-text{max-width:480px;}
#news_area .news-line{margin:30px 0 22px;}
#news_area .news-control{margin-bottom:36px;}
#news_area .news-card-inner,#news_area .news-card:nth-child(even) .news-card-inner{min-height: 290px;margin-top:0;}
#news_area::before{width: 100%;height: 20px;left: -30px;}
#news_area::after{width:320px;height:190px;right:-120px;bottom:-70px;}
#news_area .news-deco-left,#news_area .news-deco-right{display:none;}
#news_area .workframe::before{display:none;}
}

@media(max-width:768px){
#news_area .news-card-inner,#news_area .news-card:nth-child(even) .news-card-inner{min-height: 290px;margin-top:0;}
#news_area{padding:60px 0 70px;}
#news_area .news-eyebrow{margin-bottom:18px;}
#news_area .news-title{}
#news_area .news-intro-text{margin-top:18px;font-size: 16px;}
#news_area .news-slider{margin:0 -8px;}
#news_area .news-card{padding:0 8px;}
#news_area .news-card-inner,#news_area .news-card:nth-child(even) .news-card-inner{min-height: 250px;}
#news_area .news-card-no{top:22px;left:22px;width:46px;height:46px;}
#news_area .news-info{padding:30px 22px 24px;}
#news_area .news-info h3{font-size:21px;}
#news_area .news-more{display:none;}
#news_area .slick-dots{margin-top:24px;}
}

/* book_area */
#book_area li h3 { margin-top: 10px; height: 30px; font-size: 18px; }

/* photo_area */
#photo_area .item {width: 260px;height: 200px;}
#photo_area .item img {height: 100%;object-fit: cover;}


#wrap { position: relative; }
#about_area {padding: 170px 0 120px;background: #fff;position: relative;}
#about_area .about_main_img::before{content:"";position:absolute;z-index:3;inset:18px;border:1px solid rgba(255,255,255,.7);transform:scaleX(0);transform-origin:left center;transition:transform 1.2s var(--ease);pointer-events:none;}
#about_area .about_float_media {z-index:2;pointer-events:none;transform:translate3d(0,var(--parallax-y,0px),0);will-change:transform;backface-visibility:hidden;z-index:69}
#about_area .float_img {position:relative;width:100%;height:100%;overflow:hidden;background: #edf3ed;}

#about_area .about_float_01 {left:2.7%;top: -5%;width: 19%;aspect-ratio: 2.5 / 3;}
#about_area .about_float_01 .float_img:after {right:18px;bottom:18px}
#about_area .about_float_02 {right: -27.8%;bottom: -22.5%;width: 21.5%;aspect-ratio: 12 / 9;opacity:.98}
#about_area .about_float_02 .float_img:after {left:20px;bottom:18px}


#about_area.is-visible .about_main_img::before{transform:scaleX(1);}
#about_area .about_deco_circle{position:absolute;width: 170px;height: 140px;right: 41%;top: 100px;background:var(--green-100);opacity:.55;will-change:transform;clip-path: polygon(0 42%, 50% 0, 100% 42%, 84% 42%, 84% 100%, 16% 100%, 16% 42%);pointer-events: none;z-index: 0;}
#about_area .about-grid {gap: clamp(60px,7vw,120px);display: grid;grid-template-columns: 60% 44%;margin: auto auto auto 0;justify-content: space-between;align-items: center;max-width: 100%;width: 80%;z-index: 10;position: relative;}
#about_area .about-image { position: relative; min-height: 530px; overflow: hidden; box-shadow: var(--shadow); }
#about_area .about-image::before { content: ""; position: absolute; z-index: 2; inset: 18px; border: 1px solid rgba(255,255,255,.65); pointer-events: none; }
#about_area .about-image img { width: 100%; height: 100%; min-height: 530px; object-fit: cover; }
#about_area .about-copy .section-title {max-width: 470px;}
#about_area .about-copy{
    position: relative;
}


#about_area .about-lead { max-width: 650px; margin: 22px 0 44px; color: var(--muted); }
#about_area .about-lead p{
    font-size: 18px;
    line-height: 1.6;
    letter-spacing: 0.6px;
    }
#about_area .about-points { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line); }
#about_area .about-point { min-width: 0; padding: 34px 24px 4px; border-right: 1px solid var(--line); }
#about_area .about-point:first-child { padding-left: 0; }
#about_area .about-point:last-child { border-right: 0; }
#about_area .about-point img{
    width: 70px;
    margin-bottom: 20px;
}
#about_area .about-icon { width: 48px; height: 48px; margin-bottom: 18px; color: var(--green-700); }
#about_area .about-point h3 {margin: 0 0 10px;color: var(--green-900);font-size: 18px;font-weight: 600;letter-spacing: 2.5px;}
#about_area .about-point p {margin: 0;color: var(--muted);font-size: 16px;line-height: 1.8;}
#about_area .about-link {margin-top: 10px;}

#process{padding:96px 0 112px;background:linear-gradient(180deg,#f7f4ee 0%,#f2ede4 100%);}
#process .process-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid rgba(15,90,53,.22);}
#process .process-head .section-title{}
#process .process-track{counter-reset:service-card;display:flex;min-height:510px;overflow:hidden;background:#fff;box-shadow:0 22px 55px rgba(58,52,42,.09);}
#process .process-card{position:relative;isolation:isolate;overflow:hidden;flex:1 1 25%;min-width:0;color:#24392d;border-right:1px solid rgba(15,90,53,.1);transition:flex 750ms cubic-bezier(.22,1,.36,1),color 420ms ease;}
#process .process-card:last-child{border-right:0;}
#process .process-card>img{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.82) brightness(1.03);transform:scale(1.001);transition:transform 1000ms cubic-bezier(.22,1,.36,1),filter 600ms ease;}
#process .process-card::before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.94) 25%,rgba(255,255,255,.72) 50%,rgba(255,255,255,.04) 100%);transition:background 650ms ease;}
#process .process-card::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(9,76,45,.96) 0%,rgba(8,69,40,.88) 38%,rgba(8,69,40,.45) 72%,rgba(8,69,40,.2) 100%);opacity:0;transition:opacity 520ms ease;}
#process .process-card:nth-child(3)::before{opacity:0;}
#process .process-card:nth-child(3)::after{opacity:1;}
#process .process-card:nth-child(3){color:#fff;}
#process .process-track:hover .process-card{flex:.82 1 20%;}
#process .process-track:hover .process-card:hover{flex:1.55 1 40%;color:#fff;}
#process .process-track:hover .process-card:hover::before{opacity:0;}
#process .process-track:hover .process-card:hover::after{opacity:1;}
#process .process-track:hover .process-card:hover>img{transform:scale(1.06);filter:saturate(1) brightness(.88);}
#process .process-card-content{position:relative;z-index:1;padding:34px 30px;transition:transform 650ms cubic-bezier(.22,1,.36,1),color 420ms ease;}
#process .process-card:hover .process-card-content{transform:translateX(8px);}
#process .process-card-content::before{counter-increment:service-card;content:"0" counter(service-card);display:block;margin-bottom:22px;font-family:Georgia,"Times New Roman",serif;font-size:2rem;line-height:1;letter-spacing:.08em;color:currentColor;opacity:.9;}
#process .process-card h3{margin:0 0 11px;font-size: 24px;font-weight: 500;line-height:1.5;letter-spacing:.08em;color:currentColor;transition:color .4s ease;}
#process .process-description{max-width:250px;margin:0;opacity:.82;transition:color .4s ease,opacity .4s ease;color: #6e746f;font-weight: 400;padding-bottom: 35px;font-size: 18px;line-height: 1.6;letter-spacing: 0.6px;}
#process .process-card:hover .process-description,#process .process-card:focus-within .process-description{opacity:.92;}
#process .process-card:nth-child(3) h3,#process .process-card:nth-child(3) .process-description,#process .process-card:nth-child(3) .process-card-content::before{color:#fff;}
#process .process-card:hover h3,#process .process-card:hover .process-description,#process .process-card:hover .process-card-content::before,#process .process-card:focus-within h3,#process .process-card:focus-within .process-description,#process .process-card:focus-within .process-card-content::before{color:#fff;}
#process .process-link{position:absolute;z-index:5;inset:0;}
#process [data-reveal="image"]::after{background:#f4f0e9;}

@media(max-width:980px){
#process{padding:72px 0 86px;}
#process .process-head{align-items:flex-start;margin-bottom:28px;}
#process .process-track{display: flex;flex-direction: column;}
#process .process-track::-webkit-scrollbar{height:4px;}
#process .process-track::-webkit-scrollbar-track{background:rgba(15,90,53,.08);}
#process .process-track::-webkit-scrollbar-thumb{background:rgba(15,90,53,.42);border-radius:20px;}
#process .process-card{flex:0 0 72%;min-width:72%;height:460px;}
#process .process-track:hover .process-card,#process .process-track:hover .process-card:hover{flex: 0 0 71%;}
#process .process-card:hover .process-card-content{transform:none;}
#process .process-card>img,#process .process-card:hover>img{transform:scale(1.001);}
}

@media(max-width:640px){
#process{padding: 60px 0 50px;}
#process .process-head{display:block;padding-bottom:18px;}
#process .process-head .text-link{margin-top:18px;}
#process .process-track{/* margin-right:calc((100vw - 100%)/-2); *//* min-height:420px; */}
#process .process-card{flex-basis:84%;min-width: 34%;height: 420px;}
#process .process-track:hover .process-card,#process .process-track:hover .process-card:hover{flex-basis: 82%;}
#process .process-card-content{padding:28px 24px;}
#process .process-card-content::before{font-size:1.7rem;margin-bottom:17px;}
#process .process-card h3{font-size: 1.5rem;}
#process .process-description{font-size: 1rem;}
}

#process .process-head-copy{position:relative;}
#process .process-head-side{display:flex;align-items:flex-end;gap:50px;}
#process .process-card-content{height:100%;box-sizing:border-box;display:flex;flex-direction:column;}
#process .process-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid rgba(36,57,45,.14);transition:border-color .45s ease;}
#process .process-step-label,#process .process-step-en{font-family:"Quicksand",sans-serif;font-size:9px;font-weight:600;line-height:1;letter-spacing:.18em;color:currentColor;opacity:.55;}
#process .process-step-en{opacity:.35;}
#process .process-card-main{position:relative;}
#process .process-card-arrow{position:absolute;right:28px;bottom:28px;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid rgba(36,57,45,.25);border-radius:50%;opacity:0;transform:translateY(12px) rotate(-25deg);transition:opacity .45s ease,transform .6s cubic-bezier(.22,1,.36,1),border-color .4s ease,background .4s ease;}
#process .process-card-arrow span{color:currentColor;font-size:17px;line-height:1;}
#process .process-card:hover .process-card-arrow,#process .process-card:focus-within .process-card-arrow{opacity:1;transform:translateY(0) rotate(0);}
#process .process-card:hover .process-card-arrow,#process .process-card:focus-within .process-card-arrow{border-color:rgba(255,255,255,.48);background:rgba(255,255,255,.08);}
#process .process-card:hover .process-card-top,#process .process-card:focus-within .process-card-top{border-color:rgba(255,255,255,.25);}
#process .process-card:nth-child(3) .process-card-top{border-color:rgba(255,255,255,.25);}
#process .process-card:nth-child(3) .process-step-label,#process .process-card:nth-child(3) .process-step-en,#process .process-card:nth-child(3) .process-card-arrow span{color:#fff;}
#process .process-card:nth-child(3) .process-card-arrow{border-color:rgba(255,255,255,.35);}
#process .process-card:hover .process-step-label,#process .process-card:hover .process-step-en,#process .process-card:hover .process-card-arrow span,#process .process-card:focus-within .process-step-label,#process .process-card:focus-within .process-step-en,#process .process-card:focus-within .process-card-arrow span{color:#fff;}
#process .process-footer{padding-top:34px;}
#process .process-footer-line{position:relative;width:100%;height:1px;background:rgba(15,90,53,.12);overflow:hidden;}
#process .process-footer-line span{display:block;width:11%;height:100%;background:var(--green-700);}
#process .process-footer-content{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:18px;}
#process .process-footer-content>p{margin:0;color:rgba(15,90,53,.5);font-size: 13px;font-weight:600;letter-spacing:.22em;}
#process .process-footer-promise{display:flex;align-items:center;gap:13px;}
#process .process-footer-promise span{color:#52655a;font-size: 18px;letter-spacing:.08em;}
#process .process-footer-promise i{display:block;width:3px;height:3px;border-radius:50%;background:#8ba391;}

@media(max-width:980px){
#process .process-head-side{gap:25px;}
#process .process-head-mark{display:none;}
#process .process-card-arrow{opacity:1;transform:none;}
#process .process-footer-content{align-items:flex-start;}
#process .process-footer-promise{flex-wrap:wrap;justify-content:flex-end;}
}

@media(max-width:640px){
#process .process-head-side{display:block;}
#process .process-head-side .text-link{margin-top:18px;}
#process .process-card-top{margin-bottom:18px;padding-bottom:14px;}
#process .process-card-arrow{right:22px;bottom:22px;width:42px;height:42px;}
#process .process-footer{padding-top:26px;}
#process .process-footer-content{display:block;padding-top:15px;}
#process .process-footer-content>p{margin-bottom:14px;line-height:1.8;font-size: 12px;letter-spacing: 1px;}
#process .process-footer-promise{justify-content:flex-start;gap:8px 10px;}
#process .process-footer-promise span{font-size: 16px;}
}


#contact { position: relative; min-height: 410px; display: flex; align-items: center; overflow: hidden; background: #e8ddce; }
#contact .cta-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
#contact::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(247,244,237,.96) 0%,rgba(247,244,237,.83) 39%,rgba(247,244,237,.15) 66%,transparent 100%); }
.cta-content { position: relative; z-index: 2; width: min(570px,50%); padding-block: 70px; }
.cta-content h2 {margin: 0 0 18px;color: var(--green-900);font-size: clamp(2.65rem,4.6vw,3rem);font-weight: 500;line-height: 1.3;letter-spacing: .065em;}
.cta-content p.Txt {max-width: 520px;margin: 0 0 28px;color: #5a655e;font-size: 20px;line-height: 1.6;letter-spacing: 0.6px;}
.cta-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.btn-outline { color: var(--green-800); background: rgba(255,255,255,.7); }
.btn-outline:hover { color: #fff; }

@media (max-width: 1120px) {
    #about_area .about_float_01, #about_area .about_float_02,#about_area .about_deco_circle{
    display: none;
}
  #about_area .about-grid {grid-template-columns: .9fr 1.1fr;gap: 54px;width: 90%;}
  #about_area .about-points { grid-template-columns: 1fr; }
  #about_area .about-point { display: grid; grid-template-columns: 44px 1fr; column-gap: 18px; padding: 22px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  #about_area .about-point:last-child { border-bottom: 0; }
  #about_area .about-icon { grid-row: span 2; width: 40px; height: 40px; margin: 0; }
  #about_area .about-point h3, #about_area .about-point p { grid-column: 2; }
	#about_area .about-point h3{
    margin: 0;
}
    #about_area .about-point img{
    margin-bottom: 0;
}
}
@media (max-width: 960px) {
  #about_area {padding: 60px 0;}
  #about_area .about-grid {grid-template-columns: 1fr;gap: 42px;margin: auto;}
  #about_area .about-image { min-height: 0; aspect-ratio: 4/3; }
  #about_area .about-image img { min-height: 0; height: 100%; }
  .section-title {}
	.webBox .pageh1{
    font-size: 1.15rem;
}
	#about_area .about-copy .section-title{
    max-width: inherit;
}
  #about_area .about-lead { margin-bottom: 28px; }
	#about_area .about-lead p{
    font-size: 16px;
}
  #contact {min-height: 420px;align-items: flex-end;position: relative;}
	#contact::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(250, 249, 245, .92) 0%, rgba(250, 249, 245, .72) 29%, rgba(250, 249, 245, .18) 55%, transparent 72%);
    pointer-events: none;
}
  #contact .cta-bg { object-position: 66% center; }
  #contact::after {background: linear-gradient(180deg,rgba(247,244,237,.12) 0%,rgba(247,244,237,.3) 0%,rgba(247,244,237,.97) 70%,rgba(247,244,237,1) 100%);z-index: 10;}
  .cta-content {width: 100%;padding: 48px 0;z-index: 30;}
  .cta-content h2 {font-size: clamp(1rem,7vw,3rem);}
	.cta-content p.Txt{
    font-size: 17px;
}
}
@media (max-width: 520px) { .section-title { letter-spacing: .035em; } .process-card { min-height: 330px; } }




@media screen and (max-width: 1680px) {
    #freebox:before{bottom: -87px;}
}
@media screen and (max-width: 1460px) {
    #freebox:before{bottom: 0;}
}
@media screen and (max-width: 1280px) {
    #about_area_area .clip img{aspect-ratio:1/1}
}
@media screen and (max-width: 1024px) {
    #freebox .webframe{width:90%}
    #freebox:before{display:none;}
    #freeboxlist{grid-template-columns: repeat(3, 1fr);}
	#product_list { margin: auto; }
    #freeboxlist .free .Txt .title{font-size:18px;}
}
@media screen and (max-width: 980px) {
    #custom_area ul{grid-template-columns: 1fr;}
}
@media screen and (max-width: 760px) {
	section .clip img{height: auto;}
	#product_sub_list>div { margin: 10px auto 50px; }
	#product_sub_list li { width: 150px; }
	#product_sub_list li .clip { height: 150px; }
	#product_list { width: 70vw; }
	#product_list li .clip { height: 80vw; }
	#product_list li .info_box { width: 45vw; height: 30vw; }
}
@media screen and (max-width: 550px) {
    #about_area_img:after{left:-20px;}
    #freeboxlist{grid-template-columns:1fr}
    section .topic-title p{font-size:30px;}
}
@media screen and (max-width: 480px) {
	#book_area li.row { margin: auto; width: 250px; }
}