/*
*
*   /front-page
*
*/
/*  hero section */
.FrontPageHeroSection{position:relative;min-height:clamp(520px,72vw,760px);background-position:center center;background-repeat:no-repeat;background-size:cover;overflow:hidden}
.FrontPageHeroSection::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,0) 24%,rgba(0,0,0,.08) 100%)}
.FrontPageHeroSection::after{content:"";position:absolute;left:0;right:0;bottom:0;height:180px;background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.16) 36%,rgba(255,255,255,.32) 100%)}
.FrontPageHeroSection .ContainerBlock{position:relative;z-index:2}
.FrontPageHeroSection__inner{position:relative;min-height:clamp(520px,72vw,760px);padding:48px 0 132px}
.FrontPageHeroSection__main{display:flex;align-items:center;min-height:calc(clamp(520px,72vw,760px) - 180px)}
.FrontPageHeroSection__content{max-width:620px;padding:32px 36px;background:rgba(0,0,0,.2);backdrop-filter:blur(4px)}
.FrontPageHeroSection__lead{margin:0 0 14px;color:#ffffff;font-size:14px;font-weight:500;letter-spacing:.08em;text-shadow:0 2px 10px rgba(0,0,0,.22)}
.FrontPageHeroSection__title{margin:0;color:#ffffff;font-size:clamp(30px,4.6vw,52px);line-height:1.22;font-weight:500;text-shadow:0 4px 20px rgba(0,0,0,.24)}
.FrontPageHeroSection__text{max-width:540px;margin:18px 0 0;color:#ffffff;font-size:15px;line-height:2;text-shadow:0 2px 10px rgba(0,0,0,.22)}
.FrontPageHeroQuickNav{position:absolute;left:50%;bottom:32px;transform:translateX(-50%);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:min(100%,980px);background:rgba(255,255,255,.94);box-shadow:0 18px 40px rgba(0,0,0,.12)}
.FrontPageHeroQuickNav__item{display:flex;align-items:center;justify-content:center;gap:10px;min-height:96px;padding:18px 16px;color:#39b86d;text-decoration:none;transition:background-color .25s ease,color .25s ease,transform .25s ease}
.FrontPageHeroQuickNav__item + .FrontPageHeroQuickNav__item{border-left:1px solid rgba(57,184,109,.18)}
.FrontPageHeroQuickNav__item:hover{background:#f4fbf6;color:#17ac4e;transform:translateY(-2px)}
.FrontPageHeroQuickNav__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 60px;width:60px;height:60px}
.FrontPageHeroQuickNav__label{display:block;font-size:14px;font-weight:500;line-height:1.45;letter-spacing:.02em;text-align:left}
@media (max-width: 1023px){
.FrontPageHeroSection{min-height:560px}
.FrontPageHeroSection__inner{min-height:560px;padding:40px 0 164px}
.FrontPageHeroSection__main{min-height:356px}
.FrontPageHeroSection__content{max-width:560px;padding:28px 28px}
.FrontPageHeroQuickNav{width:min(100%,760px)}
.FrontPageHeroQuickNav__item{min-height:86px;padding:16px 12px}
.FrontPageHeroQuickNav__label{font-size:13px}
}
@media (max-width: 767px){
.FrontPageHeroSection{min-height:auto;background-position:center center}
.FrontPageHeroSection::after{height:140px}
.FrontPageHeroSection__inner{min-height:auto;padding:28px 0 24px}
.FrontPageHeroSection__main{display:block;min-height:auto;padding-top:88px}
.FrontPageHeroSection__content{max-width:none;padding:22px 18px;background:rgba(0,0,0,.2)}
.FrontPageHeroSection__lead{margin:0 0 10px;font-size:12px}
.FrontPageHeroSection__title{font-size:30px;line-height:1.28}
.FrontPageHeroSection__text{margin:14px 0 0;font-size:13px;line-height:1.9}
.FrontPageHeroQuickNav{position:relative;left:auto;bottom:auto;transform:none;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-top:22px}
.FrontPageHeroQuickNav__item{justify-content:flex-start;min-height:78px;padding:14px 14px}
.FrontPageHeroQuickNav__item:nth-child(n+3){border-top:1px solid rgba(57,184,109,.18)}
.FrontPageHeroQuickNav__item:nth-child(2n){border-left:1px solid rgba(57,184,109,.18)}
.FrontPageHeroQuickNav__item + .FrontPageHeroQuickNav__item{border-left:none}
.FrontPageHeroQuickNav__label{font-size:13px;line-height:1.4}
}

/* News */
.FrontPagePostPickupSection{padding:56px 0 72px;background:linear-gradient(180deg,rgba(120,189,84,.06) 0%,rgba(255,255,255,1) 100%)}
.FrontPagePostPickupSection__inner{display:flex;flex-direction:column;gap:56px}
.FrontPagePostPickupBlock{}
.FrontPagePostPickupBlock__head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:0 0 22px}
.FrontPagePostPickupBlock__title{margin:0;font-size:clamp(28px,3vw,40px);line-height:1.4;color:#14301a}
.FrontPagePostPickupBlock__footer{display:flex;justify-content:flex-end;margin:22px 0 0}
.FrontPagePostPickupBlock__more{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border:1px solid rgba(23,172,78,.26);border-radius:999px;background:#fff;font-size:14px;font-weight:500;line-height:1.4;color:#14301a;transition:transform .25s ease,background-color .25s ease,border-color .25s ease}
.FrontPagePostPickupBlock__more:hover{transform:translateY(-1px);background:#f4fbf5;border-color:rgba(23,172,78,.42)}
.PostList--top{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width: 767px){
.FrontPagePostPickupSection{padding:36px 0 48px}
.FrontPagePostPickupSection__inner{gap:40px}
.FrontPagePostPickupBlock__head{margin:0 0 16px}
.FrontPagePostPickupBlock__title{font-size:clamp(24px,7vw,30px)}
.FrontPagePostPickupBlock__footer{margin:18px 0 0}
.FrontPagePostPickupBlock__more{width:100%;padding:12px 16px}
.PostList--top{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* LifeSection */
.FrontPageSecondLifeSection{padding:56px 0 84px;background:#f6f6f3;overflow:hidden}
.FrontPageSecondLifeSection__group{position:relative}
.FrontPageSecondLifeSection__group--top{min-height:460px}
.FrontPageSecondLifeSection__group--bottom{display:grid;grid-template-columns:520px 480px;justify-content:center;align-items:end;column-gap:10px;width:min(100%,1010px);margin:22px auto 0}
.FrontPageSecondLifeSection__textBlock{align-self:end;padding-left:20px}
.FrontPageSecondLifeSection__imageWrap--bottom{justify-self:start;width:100%;max-width:480px;min-height:280px}
.FrontPageSecondLifeSection__imageWrap{position:relative;overflow:hidden}
.FrontPageSecondLifeSection__imageWrap--top{width:min(100%,56%);min-height:420px}
.FrontPageSecondLifeSection__image{display:block;width:100%;height:100%;object-fit:cover}
.FrontPageSecondLifeSection__cardGroup--top{position:absolute;top:18px;left:48%;width:min(100%,40%)}
.FrontPageSecondLifeSection__card{background:rgba(255,255,255,.65);box-shadow:0 18px 40px rgba(0,0,0,.08)}
.FrontPageSecondLifeSection__card--heading{padding:14px 18px;margin:0 0 1rem}
.FrontPageSecondLifeSection__card--body{padding:16px 18px}
.FrontPageSecondLifeSection__title{margin:0;color:#39b86d;font-size:clamp(26px,3vw,40px);line-height:1.35;font-weight:500}
.FrontPageSecondLifeSection__subTitle{margin:0;color:#39b86d;font-size:clamp(24px,2.7vw,36px);line-height:1.35;font-weight:500}
.FrontPageSecondLifeSection__text{margin:0;color:#333333;font-size:20px;line-height:1.95}
.FrontPageSecondLifeSection__textBlock .FrontPageSecondLifeSection__text{margin-top:16px}
.FrontPageSecondLifeSection .js-fade-up-target{opacity:0;transform:translateY(48px);transition:opacity .9s ease,transform .9s ease}
.FrontPageSecondLifeSection .js-fade-up-target.is-visible{opacity:1;transform:translateY(0)}
@media (max-width: 1023px){
.FrontPageSecondLifeSection{padding:48px 0 72px}
.FrontPageSecondLifeSection__group--top{min-height:400px}
.FrontPageSecondLifeSection__group--bottom{grid-template-columns:minmax(0,.92fr) minmax(0,.78fr);column-gap:34px}
.FrontPageSecondLifeSection__imageWrap--top{width:min(100%,58%);min-height:360px}
.FrontPageSecondLifeSection__imageWrap--bottom{width:min(100%,90%);min-height:240px}
.FrontPageSecondLifeSection__cardGroup--top{left:44%;width:min(100%,50%)}
.FrontPageSecondLifeSection__card--heading{padding:12px 16px}
.FrontPageSecondLifeSection__card--body{padding:14px 16px}
.FrontPageSecondLifeSection__text{font-size:14px}
}
@media (max-width: 767px){
.FrontPageSecondLifeSection{padding:36px 0 56px}
.FrontPageSecondLifeSection__group--top{min-height:auto}
.FrontPageSecondLifeSection__imageWrap--top{width:100%;min-height:58vw}
.FrontPageSecondLifeSection__cardGroup--top{position:relative;top:auto;left:auto;width:100%;margin-top:-10vw}
.FrontPageSecondLifeSection__card--heading{padding:14px 14px;margin:2.5rem 0 .8rem}
.FrontPageSecondLifeSection__card--body{padding:14px 14px}
.FrontPageSecondLifeSection__group--bottom{display:block;margin-top:24px}
.FrontPageSecondLifeSection__textBlock{padding:0}
.FrontPageSecondLifeSection__imageWrap--bottom{width:100%;min-height:52vw;margin-top:18px}
.FrontPageSecondLifeSection__title{font-size:28px}
.FrontPageSecondLifeSection__subTitle{font-size:26px;text-align: center;}
.FrontPageSecondLifeSection__text{font-size:18px;line-height:1.7;text-align:center;}
.FrontPageSecondLifeSection .js-fade-up-target{transform:translateY(36px)}
}

/*ChoiceSection*/

.TopPageChoiceSection{padding:70px 0 86px;background:#f5f6f3}
.TopPageChoiceSection .ContentBlock{max-width:1120px}
.TopPageChoiceSection__eyebrow{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 85px;color:#39b46a;font-size:clamp(1.5rem,5.4vw,2.5rem);font-weight:500;letter-spacing:.04em;text-align:center}
.TopPageChoiceSection__eyebrowIcon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;line-height:1}
.TopPageChoiceSection__eyebrowIcon svg{display:block;width:26px;height:26px}
.TopPageChoiceSection__head{display:grid;grid-template-columns:1.08fr .92fr;column-gap:42px;align-items:start;max-width:1040px;margin:0 auto 100px}
.TopPageChoiceSection__titleWrap{display:flex;align-items:flex-end;justify-content:flex-end}
.TopPageChoiceSection__title{margin:0;color:#26b24d;font-size:clamp(3.3rem,5.4vw,4.9rem);font-weight:500;line-height:1.08;letter-spacing:.02em}
.TopPageChoiceSection__textWrap{padding-top:8px}
.TopPageChoiceSection__lead{margin:0;color:#333;font-size:1.2rem;line-height:1.7}
.TopPageChoiceSection__cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1040px;margin:0 auto 45px}
.TopPageChoiceCard{display:block;text-decoration:none}
.TopPageChoiceCard__image{position:relative;overflow:hidden;aspect-ratio:1/1;margin:0;background:#e9ece8}
.TopPageChoiceCard__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.TopPageChoiceCard:hover .TopPageChoiceCard__image img{transform:scale(1.04)}
.TopPageChoiceCard__label{position:absolute;right:0;bottom:0;z-index:2;display:flex;align-items:center;justify-content:center;width:auto;min-width:62%;max-width:100%;min-height:42px;padding:8px 14px;background:rgba(53,184,103,.88);color:#fff;font-size:.96rem;font-weight:500;line-height:1.35;text-align:center;white-space:normal;word-break:keep-all;overflow-wrap:anywhere}
.TopPageChoiceSection__action{display:flex;justify-content:flex-end;max-width:1040px;margin:16px auto 0}
.TopPageChoiceSection__button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 18px;border:1px solid #7bcf97;background:transparent;color:#35b867;font-size:1.25rem;font-weight:500;text-decoration:none;transition:background .25s ease,border-color .25s ease,color .25s ease}
.TopPageChoiceSection__button:hover{background:#35b867;border-color:#35b867;color:#fff}
@media (max-width: 1024px){
.TopPageChoiceSection{padding:58px 0 74px}
.TopPageChoiceSection__head{grid-template-columns:1fr;row-gap:16px}
.TopPageChoiceSection__cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.TopPageChoiceSection__action{justify-content:center}
}
@media (max-width: 767px){
.TopPageChoiceSection{padding:52px 0 64px}
.TopPageChoiceSection__eyebrow{margin:0 0 20px;font-size:.92rem}
.TopPageChoiceSection__eyebrowIcon{width:24px;height:24px}
.TopPageChoiceSection__eyebrowIcon svg{width:24px;height:24px}
.TopPageChoiceSection__head{margin:0 auto 26px}
.TopPageChoiceSection__titleWrap{justify-content:center;align-items: center;}
.TopPageChoiceSection__title{font-size:clamp(2.4rem,11vw,3.4rem);line-height:1.12}
.TopPageChoiceSection__lead{font-size:.96rem;line-height:1.85}
.TopPageChoiceSection__cards{grid-template-columns:1fr 1fr;gap:12px}
.TopPageChoiceCard__label{min-width:64%;min-height:40px;padding:7px 10px;font-size:.86rem}
.TopPageChoiceSection__button{width:100%;min-height:48px}
}
@media (max-width: 479px){
.TopPageChoiceSection__cards{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/*Trouble*/

.TopPageTroubleSection{padding:76px 0 82px;background:#f5f6f3}
.TopPageTroubleSection .ContentBlock{max-width:1120px}
.TopPageTroubleSection__header{text-align:center;margin-bottom:60px;}
.TopPageTroubleSection__eyebrow{display:inline-flex;align-items:center;justify-content:center;gap:10px;margin:0;color:#39b46a;font-size:clamp(1.1rem, 5vw, 2.5rem);font-weight:500;letter-spacing:.04em;text-align:center}
.TopPageTroubleSection__eyebrowIcon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;line-height:1}
.TopPageTroubleSection__eyebrowIcon svg{display:block;width:28px;height:28px}
.TopPageTroubleSection__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:920px;margin:34px auto 58px}
.TopPageTroubleCard{display:flex;align-items:center;gap:12px;min-height:48px;padding:24px 20px;background:#21b24e}
.TopPageTroubleCard__icon{flex:0 0 20px;width:20px;height:20px;border-radius:50%;background:#fff;position:relative}
.TopPageTroubleCard__icon::after{content:"";position:absolute;right:-2px;bottom:-3px;width:8px;height:8px;border-radius:50%;background:#fff}
.TopPageTroubleCard__text{margin:0;color:#fff;font-size:1.15rem;font-weight:normal;line-height:1.5;letter-spacing:.02em}
.TopPageTroubleSection__body{max-width:920px;margin:0 auto;text-align:center}
.TopPageTroubleSection__title{margin:0 0 24px;color:#24b251;font-size:2.1rem;font-weight:500;line-height:1.45;letter-spacing:.03em}
.TopPageTroubleSection__lead{margin:0;color:#333;font-size:1.12rem;line-height:2.05;text-align:left}
@media (max-width: 1024px){
.TopPageTroubleSection{padding:64px 0 72px}
.TopPageTroubleSection__grid{margin:28px auto 48px}
.TopPageTroubleSection__title{font-size:1.9rem}
.TopPageTroubleSection__lead{font-size:1.02rem}
}
@media (max-width: 767px){
.TopPageTroubleSection{padding:54px 0 62px}
.TopPageTroubleSection__eyebrow{font-size:30px;gap:8px}
.TopPageTroubleSection__eyebrowIcon{width:24px;height:24px}
.TopPageTroubleSection__eyebrowIcon svg{width:24px;height:24px}
.TopPageTroubleSection__grid{grid-template-columns:1fr;gap:12px;max-width:100%;margin:24px auto 40px}
.TopPageTroubleCard{min-height:46px;padding:0 14px}
.TopPageTroubleCard__text{font-size:.92rem}
.TopPageTroubleSection__title{margin:0 0 18px;font-size:1.55rem;line-height:1.55}
.TopPageTroubleSection__lead{font-size:.96rem;line-height:1.9}
}

/* reason */

.TopPageYieldPointSection{padding:88px 0 94px;background:linear-gradient(180deg,rgba(242,246,241,.96) 0%,rgba(235,240,235,.96) 100%)}
.TopPageYieldPointSection .ContentBlock{max-width:1120px}
.TopPageYieldPointSection__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,460px);grid-template-areas:"head bubbles" "body bubbles" "action action";column-gap:44px;row-gap:20px;align-items:start}
.TopPageYieldPointSection__head{grid-area:head}
.TopPageYieldPointSection__body{grid-area:body}
.TopPageYieldPointSection__bubbles{grid-area:bubbles;position:relative;min-height:300px}
.TopPageYieldPointSection__action{grid-area:action;display:flex;justify-content:center;margin-top:16px}
.TopPageYieldPointSection__title{display:flex;align-items:flex-end;gap:14px;margin:0;color:#24b251;line-height:1}
.TopPageYieldPointSection__titleMain{font-size:clamp(3rem,5vw,4.5rem);font-weight:500;letter-spacing:.02em;white-space:nowrap}
.TopPageYieldPointSection__titleSub{display:inline-block;padding-bottom:10px;font-size:1.7rem;font-weight:500;line-height:1.35;letter-spacing:.03em}
.TopPageYieldPointSection__line{width:100%;max-width:340px;height:5px;margin-top:18px;background:#24b251}
.TopPageYieldPointSection__lead{margin:0;color:#333;font-size:1.2rem;font-weight:500;line-height:2.1}
.TopPageYieldPointBubble{position:absolute;display:flex;align-items:center;justify-content:center;background-position:center;background-repeat:no-repeat;background-size:contain}
.TopPageYieldPointBubble__text{display:block;color:#fff;font-size:1.2rem;font-weight:500;line-height:1.55;text-align:center;letter-spacing:.02em}
.TopPageYieldPointBubble--one{top:-10px;left:10px;width:201px;height:174px;padding-bottom:25px}
.TopPageYieldPointBubble--two{top:25px;right:-20px;width:230px;height:200px;padding-bottom:30px;}
.TopPageYieldPointBubble--three{left:100px;bottom:0;width:195px;height:170px}
.TopPageYieldPointSection__button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 24px;border:1px solid #6fcb8f;background:transparent;color:#22af4d;font-size:1.25rem;font-weight:500;text-decoration:none;transition:background .25s ease,border-color .25s ease,color .25s ease}
.TopPageYieldPointSection__button:hover{background:#22af4d;border-color:#22af4d;color:#fff}
@media (max-width: 1024px){
.TopPageYieldPointSection{padding:72px 0 78px}
.TopPageYieldPointSection__inner{grid-template-columns:1fr;grid-template-areas:"head" "bubbles" "body" "action";row-gap:24px}
.TopPageYieldPointSection__bubbles{min-height:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.TopPageYieldPointBubble{position:relative;top:auto;right:auto;bottom:auto;left:auto;width:100%;height:175px}
}
@media (max-width: 767px){
.TopPageYieldPointSection{padding:58px 0 64px}
.TopPageYieldPointSection__inner{row-gap:22px}
.TopPageYieldPointSection__head{text-align:center}
.TopPageYieldPointSection__title{justify-content:center;align-items:flex-end;gap:8px;flex-wrap:wrap}
.TopPageYieldPointSection__titleMain{font-size:clamp(2.4rem,12vw,3.4rem)}
.TopPageYieldPointSection__titleSub{padding-bottom:0;font-size:1.2rem;line-height:1.45;text-align:left}
.TopPageYieldPointSection__line{max-width:240px;height:4px;margin:14px auto 0}
.TopPageYieldPointSection__bubbles{position:relative;min-height:320px}
.TopPageYieldPointBubble{position:absolute}
.TopPageYieldPointBubble--one{top:0;left:25%;width:185px;height:160px;transform:translateX(-50%)}
.TopPageYieldPointBubble--two{top:70px;left:75%;width:180px;height:150px;transform:translateX(-50%)}
.TopPageYieldPointBubble--three{top:170px;left:33%;width:182px;height:150px;transform:translateX(-50%)}
.TopPageYieldPointBubble__text{font-size:.96rem}
.TopPageYieldPointSection__lead{font-size:1rem;line-height:1.95}
.TopPageYieldPointSection__button{width:100%;min-height:50px;padding:0 14px;font-size:.92rem;text-align:center}
}

/* FrontPagePhilosophySection */

.FrontPagePhilosophySection{position:relative;padding:32px 0 96px;background-position:top center;background-repeat:no-repeat;background-size:contain;overflow:visible}
.FrontPagePhilosophySection::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,.08) 100%)}
.FrontPagePhilosophySection>.ContentBlock{position:relative;z-index:1}
.FrontPagePhilosophySection__hero{position:relative;min-height:600px;padding:24px 0 0}
.FrontPagePhilosophySection__titleFrame{display:block;background:rgba(255,255,255,.72);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding-top:20px;padding-bottom:20px;}
.FrontPagePhilosophySection__title{margin:0;color:#1fb655;font-size:clamp(30px,4vw,36px);font-weight:500;line-height:1.4;letter-spacing:.08em;text-align:center;border-left:#1fb655 22px solid;border-right:#1fb655 22px solid;}
.FrontPagePhilosophySection__messageBox{width:min(100%,560px);margin:92px 0 0;padding:32px 36px;background:rgba(255,255,255,.68);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);box-shadow:0 16px 40px rgba(0,0,0,.08)}
.FrontPagePhilosophySection__messageBox p{margin:0;color:#333;font-size:20px;line-height:2;font-weight:500}
.FrontPagePhilosophyGrid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:-30px auto 0;width:min(100%,1120px)}
.FrontPagePhilosophyCard{background:rgba(255,255,255,.94);border:1px solid #35c06b;box-shadow:0 16px 40px rgba(0,0,0,.08);padding:5px;}
.FrontPagePhilosophyCard__head{padding:0;background:#1fb655}
.FrontPagePhilosophyCard__title{margin:0;padding:12px;color:#fff;font-size:24px;line-height:1.45;font-weight:500;text-align:center}
.FrontPagePhilosophyCard__body{padding:26px 26px 30px}
.FrontPagePhilosophyCard__image{margin:0 auto 14px;}
.FrontPagePhilosophyCard__image figure {margin:0;}
.FrontPagePhilosophyCard__text{margin:0;color:#333;font-size:18px;line-height:1.7;text-align:left}
@media (max-width: 1199px){
.FrontPagePhilosophySection{padding:24px 0 88px}
.FrontPagePhilosophySection__hero{min-height:inherit;}
.FrontPagePhilosophySection__titleFrame{padding:12px 32px}
.FrontPagePhilosophySection__title{line-height:1;}
.FrontPagePhilosophySection__messageBox{width:min(100%,520px);margin:72px 0 0;padding:28px 28px}
.FrontPagePhilosophySection__messageBox p{font-size:18px}
.FrontPagePhilosophyGrid{gap:22px;margin:30px auto 0}
.FrontPagePhilosophyCard__title{font-size:16px}
.FrontPagePhilosophyCard__text{font-size:14px}
}
@media (max-width: 767px){
.FrontPagePhilosophySection{padding-top:10px;background-position:top center}
.FrontPagePhilosophySection__hero{min-height:auto;padding:0}
.FrontPagePhilosophySection__titleFrame{padding:6px 0;}
.FrontPagePhilosophySection__titleFrame .ContentBlock{padding:0px;}
.FrontPagePhilosophySection__title{font-size:clamp(16px,7vw,24px);line-height:1;letter-spacing:.06em;border-left:#1fb655 5px solid;border-right:#1fb655 5px solid;}
.FrontPagePhilosophySection__messageBox{width:100%;margin:28px 0 0;padding:22px 18px}
.FrontPagePhilosophySection__messageBox p{font-size:16px;line-height:1.95}
.FrontPagePhilosophyGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px auto 0}
.FrontPagePhilosophyCard__title{padding:6px;font-size:20px}
.FrontPagePhilosophyCard__body{padding:10px 5px}
.FrontPagePhilosophyCard__image{width:108px;height:100px;margin:0 auto 18px;overflow: hidden;}
.FrontPagePhilosophyCard__image figure {margin:0;}
.FrontPagePhilosophyCard__text{font-size:16px;line-height:1.85}
}

/* top cta */

.FrontPageConsultSection{padding:96px 0;background:repeating-linear-gradient(45deg,#f4f1ec 0 10px,#f7f4ef 10px 20px)}
.FrontPageConsultSection__title{text-align:center;color:#1fb655;font-size:clamp(1.2rem,7vw,2.5rem);font-weight:500;margin-bottom:48px}
.FrontPageConsultSection__row{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.FrontPageConsultSection__text p{margin:0;font-size:24px;line-height:2;color:#333}
.FrontPageConsultSection__first{display:inline-flex;align-items:center;justify-content:center;width:60px;height:60px;background:#1fb655;color:#fff;font-weight:500;margin-right:8px;font-size:52px}
.FrontPageConsultSection__image img{width:100%;height:auto;display:block}
.FrontPageConsultSection__ctaText{text-align:center;margin:60px auto 30px;color:#1fb655;font-weight:500}
.FrontPageConsultSection__ctaText p{text-align:center;margin:.5rem auto;font-size:clamp(1.15rem,7vw,1.9rem)}
.FrontPageConsultSection__cta{display:flex;gap:24px;justify-content:center;flex-wrap:wrap}
.FrontPageConsultSection__btn{display:flex;align-items:center;justify-content:center;gap:18px;width:min(100%,540px);min-width:540px;padding:18px 38px;background:linear-gradient(135deg,#17ac4e 0%,#27c15a 35%,#049ea4 100%);background-size:200% 200%;background-position:0% 50%;color:#fff;text-align:center;font-size:20px;line-height:1.5;box-shadow:0 14px 32px rgba(23,172,78,.18);transition:background-position .45s ease,transform .25s ease,box-shadow .25s ease}
.FrontPageConsultSection__btn:hover{background-position:100% 50%;transform:translateY(-2px);box-shadow:0 18px 38px rgba(23,172,78,.24)}
.FrontPageConsultSection__btnIcon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;flex-shrink:0;transition:transform .28s ease}
.FrontPageConsultSection__btn:hover .FrontPageConsultSection__btnIcon{transform:translateX(4px) translateY(-2px) scale(1.04)}
.FrontPageConsultSection__btnIcon img{width:100%;height:100%;object-fit:contain}
.FrontPageConsultSection__btnText{display:block;text-align:center}
.FrontPageConsultSection__btn strong{display:block;font-size:clamp(1rem,7vw,2rem);margin-top:2px}
@media (max-width: 767px){
.FrontPageConsultSection{padding:72px 0}
.FrontPageConsultSection__row{grid-template-columns:1fr;gap:24px}
.FrontPageConsultSection__title{font-size:24px;margin-bottom:32px}
.FrontPageConsultSection__text p{font-size:16px}
.FrontPageConsultSection__first{width:34px;height:34px;font-size:18px}
.FrontPageConsultSection__cta{flex-direction:column;gap:16px}
.FrontPageConsultSection__btn{width:100%;min-width:0;padding:16px 20px;gap:14px}
.FrontPageConsultSection__btnIcon{width:40px;height:40px}
}
@media (prefers-reduced-motion: reduce){
.FrontPageConsultSection__btn{transition:none}
.FrontPageConsultSection__btnIcon{transition:none}
}