@charset "utf-8";

/***************************************************************************
*
* INDEX STYLE
*
***************************************************************************/
.main {
    overflow: hidden;
}

.main .inner {
    max-width: 1262px;
}
.main .contentMain {
    background: #d1ebebFF;
    position: relative;
}
.main .contentMain .wrapMain {
    display: flex;
    padding: 57px 0 56px;
}
.main .contentMain .wrapMain .mainLeftPhoto {
    position: absolute;
    left: calc((100% - 1202px)/2);
    bottom: 26px;
    width: clamp(170px, 22.9vw, 312.5px);
}
.main .contentMain .wrapMain .mainLeftPhoto img {
    width: 100%;
}
.main .contentMain .wrapMain .boxMain {
    margin: 0 auto;
    padding: 0 1.2% 0 3.2%;
    width: 577px;
}
.main .contentMain .wrapMain .boxMain .txtEndow {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1.2px;
    color: #ffffff;
    display: inline-block;
    background: #249ea6FF;
    border-radius: 8px;
    padding: 4px 11px 4px 9px;
    margin-bottom: 11px;
}
.main .contentMain .wrapMain .boxMain .titleMain {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.52;
    letter-spacing: 1.2px;
    margin-bottom: 9px;
}
.main .contentMain .wrapMain .boxMain .titleMain .titleMainColBlue {
    color: #249ea6;
    letter-spacing: 3.2px;
    font-size: 48px;
    display: block;
}
.main .contentMain .wrapMain .boxMain .txtMain {
    font-size: 18px;
    font-weight: normal;
    line-height: 1.8;
    margin-bottom: 27px;
}
.buttonLink {
    max-width: 520px;
    margin: 0 auto;
}
.main .buttonLink {
    max-width: 400px;
}

.main .buttonLink {
    margin: 0;
}
.buttonLink a {
    display: block;
    background: #ff4500FF;
    border-radius: 70px;
    padding: 24px 10px 23px;
    font-size: 24px;
    font-weight: 500;
    color: #ffffff;
    text-align: center;
    border: 1px solid transparent;
}
.main .buttonLink a {
    padding: 17px 10px 16px;
    font-size: 20px;
}
.buttonLink a .txtButtonLink {
    position: relative;
    padding-left: 41px;
}

.main .buttonLink a .txtButtonLink {
    padding-left: 36px;
}
.buttonLink a .txtButtonLink:before {
    content: "";
    position: absolute;
    background: url('../images/common/icon-mail-header.svg') no-repeat;
    background-size: 100%;
    width: 31px;
    height: 23px;
    top: 55%;
    transform: translateY(-50%);
    left: -1px;
}

.main .buttonLink a .txtButtonLink:before {
    width: 31px;
    height: 23px;
    left: -5px;
}

.main .contentMain .wrapMain .mainRightPhoto {
    position: absolute;
    right: calc((100% - 1202px)/2);
    bottom: 0px;
    width: clamp(180px, 22.8vw, 311px);
}
.main .contentMain .wrapMain .mainRightPhoto img {
    width: 100%;
}

.main .subMain {
    background: #88ccccFF;
}
.main .subMain .wrapSubMain {
    font-size: 28px;
    font-weight: 600;
    color: #ffffff;
    text-align: center;
    padding: 17px 0;
    letter-spacing: 3px;
}

/* areaStrategy */
.areaStrategy {
    padding: 75px 0 68px;
}
.areaStrategy .wrapStrategy {}
.areaStrategy .wrapStrategy .boxStrategy {
    margin-top: 52px;
}
.areaStrategy .wrapStrategy .boxStrategy .titleStrategy {
    font-size: 24px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 13px;
}
.areaStrategy .wrapStrategy .boxStrategy .subStraregy {
    font-size: 16px;
    font-weight: normal;
    text-align: center;
    margin-bottom: 49px;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 852px;
    margin: 0 auto;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li {
    width: 48.1%;
    background: #ebd1d0FF;
    border-radius: 15px;
    padding: 14px 20px 13px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 34px;
    position: relative;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li.strategyBgGreen {
    background: #dfebd1FF;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li.strategyBgGrey {
    background: #e0e0e0FF;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li.strategyBgBlue {
    background: #d1ebebFF;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li .txtStrategyItem {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.61;
}

.areaStrategy .wrapStrategy .boxStrategy .listStrategy li.strategyBgBlue .txtStrategyItem {
    letter-spacing: -0.4px;
}

.areaStrategy .wrapStrategy .boxStrategy .listStrategy li .txtStrategyItem .strategyFsz32 {
    display: block;
    font-size: 32px;
    line-height: 1.6;
    margin: 1px 0 -1px;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li .txtStrategyItem .strategyColRed {
    color: #d00004;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li .txtStrategyItem .strategyColGreen {
    color: #49a624;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li .txtStrategyItem .strategyColGrey {
    color: #000000;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li .txtStrategyItem .strategyColBlue {
    color: #244aa6;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li .strategyphoto {
    position: absolute;
    right: 20px;
    /* top: 50%; */
    /* transform: translateY(-50%); */
    bottom: 19px;
}

.areaStrategy .wrapStrategy .boxStrategy .listStrategy li.strategyBgGrey .strategyphoto {
    bottom: 22px;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li.strategyBgBlue .strategyphoto {
    bottom: 13px;
}
.areaStrategy .wrapStrategy .boxStrategy .listStrategy li .strategyphoto img {}

/* areaIssue */
.areaIssue {}

.areaIssue .iframeIssue {
    background: #f5f5f5FF;
    padding: 66px 0 72px;
}
.areaIssue .iframeIssue .inner {}
.areaIssue .iframeIssue .wrapIssue {}
.areaIssue .iframeIssue .wrapIssue .boxIssue {
    position: relative;
    margin-top: 43px;
}
.areaIssue .iframeIssue .wrapIssue .boxIssue .txtIssue {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.8;
    background: #ffffffFF;
    border: 1px solid #249ea6FF;
    border-radius: 10px;
    padding: 24px 14px 25px 14px;
    position: absolute;
    width: 300px;
}
.areaIssue .iframeIssue .wrapIssue .boxIssue .txtIssue .issueColRed {
    color: #f20004;
}
.areaIssue .iframeIssue .wrapIssue .boxIssue .itemIssueTopLeft {
    top: 0;
    left: 40px;
}
.areaIssue .iframeIssue .wrapIssue .boxIssue .itemIssueBotLeft {
    bottom: -1px;
    left: 0;
}
.areaIssue .iframeIssue .wrapIssue .boxIssue .itemIssueTopRight {
    top: 0;
    right: 40px;
}
.areaIssue .iframeIssue .wrapIssue .boxIssue .itemIssueBotRight {
    bottom: -1px;
    right: 0;
}
.areaIssue .iframeIssue .wrapIssue .boxIssue .issuePhoto {
    width: 333px;
    margin: 0 auto;
}
.areaIssue .iframeIssue .wrapIssue .boxIssue .issuePhoto img {
    width: 100%;
}
.areaIssue .wrapTypeIssue {
    padding: 77px 0 78px;
}
.areaIssue .wrapTypeIssue .inner {
    max-width: 912px;
}
.areaIssue .wrapTypeIssue .listTypeIssue {}
.areaIssue .wrapTypeIssue .listTypeIssue li {
    display: flex;
    align-items: center;
    padding: 30px 19px;
    border-radius: 15px;
    background: #ffffff;
    border: 1px solid #249ea6FF;
    margin-bottom: 35px;
}
.areaIssue .wrapTypeIssue .listTypeIssue li:last-child {
    margin-bottom: 0;
}
.areaIssue .wrapTypeIssue .listTypeIssue li .typeIssuePhoto {
    width: 80px;
    margin-right: 20px;
}
.areaIssue .wrapTypeIssue .listTypeIssue li .typeIssuePhoto img {
    aspect-ratio: 1/1;
    width: 100%;
}
.areaIssue .wrapTypeIssue .listTypeIssue li .boxTypeIssue {
    width: 38.3%;
    margin-right: 2.7%;
    margin-top: -2px;
}
.areaIssue .wrapTypeIssue .listTypeIssue li .boxTypeIssue .titleTypeIssue {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 6px;
}
.areaIssue .wrapTypeIssue .listTypeIssue li .boxTypeIssue .txtTypeIssue {
    font-size: 16px;
    font-weight: normal;
    line-height: 1.61;
    text-align: justify;
}
.areaIssue .wrapTypeIssue .listTypeIssue li .boxTypeIssue .txtTypeIssue .typeIssueColRed {
    color: #ff4500;
    font-weight: 700;
}
.areaIssue .wrapTypeIssue .listTypeIssue li .boxFocusIssue {
    background: #d1ebebFF;
    border-radius: 15px;
    padding: 14px 16px 16px;
    width: 47%;
    height: 190px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.areaIssue .wrapTypeIssue .listTypeIssue li .boxFocusIssue .focusIssue {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 5px;
}
.areaIssue .wrapTypeIssue .listTypeIssue li .boxFocusIssue .txtFocusIssue {
    font-size: 16px;
    font-weight: normal;
    line-height: 1.6;
    text-align: justify;
}
.areaIssue .wrapTypeIssue .listTypeIssue li .boxFocusIssue .txtFocusIssue .focusIssueColBlue {
    color: #249ea6;
    font-weight: 700;
}

/* areaIdentifi */
.areaIdentifi {
    background: #f4ffffFF;
    padding: 82px 0 79px;
}
.areaIdentifi .inner {}
.areaIdentifi .wrapIdentifi {
    text-align: center;
}
.areaIdentifi .wrapIdentifi .titleIdentifi {
    font-size: 46px;
    font-weight: 600;
    background: #249ea6FF;
    border-radius: 10px;
    padding: 9px 20px 14px;
    position: relative;
    color: #ffffff;
    text-align: center;
    max-width: 730px;
    margin: 0 auto 67px;
}
.areaIdentifi .wrapIdentifi .titleIdentifi:after {
    content: "";
    position: absolute;
    bottom: -37px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 40px solid transparent;
    border-right: 40px solid transparent;
    border-top: 40px solid #249ea6FF;
}
.areaIdentifi .wrapIdentifi .titleIdentifi .titleIdenColYellow {
    color: #ffff44;
}
.subIdentifi {
    font-size: 20px;
    font-weight: 500;
    line-height: 2;
    margin-bottom: 60px;
    color: #000000;
    text-align: center;
}
.subIdentifi .underIdentifi {
    text-decoration: underline;
    text-underline-offset: 5px;
    text-decoration-thickness: 2px;
    text-decoration-color: #d00004FF;
}
.areaIdentifi .wrapIdentifi .listIdentifi {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 40px;
}
.areaIdentifi .wrapIdentifi .listIdentifi li {
    width: 49%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    background: #249ea6FF;
    border-radius: 15px;
    padding: 19px 13px 20px 20px;
}
.areaIdentifi .wrapIdentifi .listIdentifi li .identifiPhoto {}
.areaIdentifi .wrapIdentifi .listIdentifi li .identifiPhoto img {}
.areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem {
    color: #ffffff;
    width: 64%;
    margin-top: -2px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
.areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .subIdentifiItem {
    font-size: 26px;
    font-weight: 500;
    letter-spacing: 1.8px;
    margin-bottom: -4px;
}
.areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}
.areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .numIdentifiItem {
    font-size: 86px;
    font-weight: 600;
    color: #ffff44;
    line-height: 1;
    margin-right: 7px;
    transform: translateY(9px);
}
.areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .wrapArticle {
    font-size: 45px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 10px;
    text-align: center;
}
.areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .wrapArticle .txtMoreArticle {
    font-size: 20px;
    font-weight: 500;
    display: block;
    letter-spacing: 0;
    text-indent: -10px;
}
.areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .txtIdenfitiItem {
    font-size: 40px;
    font-weight: 500;
    color: #ffff44;
    line-height: 1.2;
    margin-top: 8px;
}
.areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem.boxIdentifiItemSmall .boxIdentifiItem {
    margin-top: 11px;
}
.areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem.boxIdentifiItemSmall .boxIdentifiItem .numIdentifiItem {
    font-size: 76px;
    letter-spacing: -5.3px;
    margin-right: 12px;
}
.areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem.boxIdentifiItemSmall .boxIdentifiItem .wrapArticle {
    font-size: 35px;
    letter-spacing: 0.5px;
}

/* areaExperience */
.areaExperience {
    padding: 95px 0 0;
}
.areaExperience .inner {}
.areaExperience .wrapExperience {}
.areaExperience .wrapExperience .experience {
    font-size: 22px;
    font-weight: normal;
    margin-bottom: 24px;
    text-align: center;
}
.areaExperience .wrapExperience .subExperience {
    font-size: 22px;
    font-weight: 500;
    line-height: 2;
    text-align: center;
    margin: 29px 0 50px;
}
.areaExperience .wrapExperience .experiencePhoto {
    max-width: 852px;
    margin: 0 auto;
    width: 100%;
}
.areaExperience .wrapExperience .experiencePhoto img {
    width: 100%;
}

/* areaTesti */
.areaTesti {
    background: #f2f2f2FF;
    padding: 75px 0 80px;
}
.areaTesti .inner {}
.areaTesti .wrapTesti {}
.areaTesti .wrapTesti .subIdentifi {
    margin-top: 29px;
    margin-bottom: 49px;
}
.areaTesti .wrapTesti .listTesti {}
.areaTesti .wrapTesti .listTesti li {
    display: flex;
    margin-bottom: 20px;
}
.areaTesti .wrapTesti .listTesti li:nth-child(2n) {
    justify-content: flex-end;
}
.areaTesti .wrapTesti .listTesti li:last-child {
    margin-bottom: 0;
}
.areaTesti .wrapTesti .listTesti li .wrapAvatarTesti {
    width: 110px;
    margin-right: 20px;
    margin-top: 3px;
}
.areaTesti .wrapTesti .listTesti li:nth-child(2n) .wrapAvatarTesti {
    margin-right: 0;
    margin-left: 20px;
}
.areaTesti .wrapTesti .listTesti li .wrapAvatarTesti .tesTiAvatarPhoto {
    width: 100%;
    margin-bottom: 4px;
}
.areaTesti .wrapTesti .listTesti li .wrapAvatarTesti .tesTiAvatarPhoto img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    object-position: center;
}
.areaTesti .wrapTesti .listTesti li .wrapAvatarTesti .nameTesti {
    font-size: 16px;
    font-weight: 500;
    color: #6e6e6e;
    text-align: center;
}
.areaTesti .wrapTesti .listTesti li .boxTesti {
    width: calc(100% - 340px);
    background: #ffffff;
    border: 1px solid #249ea6FF;
    padding: 19px 19px;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.areaTesti .wrapTesti .listTesti li .boxTesti .txtTesti {
    font-size: 18px;
    font-weight: 500;
    line-height: 2;
    text-align: justify;
}

/* areaFlow */
.areaFlow {
    padding: 84px 0 80px;
}
.areaFlow .inner {}
.areaFlow .listFlow {
    display: flex;
    margin-top: 55px;
}
.areaFlow .listFlow li {
    width: calc((100%/5) - 42px);
    margin-right: 52px;
    background: #ffffff;
    border: 1px solid #249ea6FF;
    border-radius: 10px;
    padding: 57px 10px 26px;
    position: relative;
}
.areaFlow .listFlow li:last-child {
    margin-right: 0;
}
.areaFlow .listFlow li:before {
    content: "";
    position: absolute;
    background: url('../images/index/icon-arrow-flow.svg') no-repeat;
    background-size: 100%;
    width: 39px;
    height: 39px;
    top: 50%;
    transform: translateY(-50%);
    right: -47px;
}
.areaFlow .listFlow li:last-child:before {
    display: none;
}
.areaFlow .listFlow li .numberFlow {
    font-size: 30px;
    font-weight: 700;
    color: #ffffff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #249ea6FF;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    position: absolute;
    top: -31px;
    left: 50%;
    transform: translateX(-50%);
    padding-bottom: 1px;
}
.areaFlow .listFlow li .flowPhoto {
    text-align: center;
    margin-bottom: 26px;
}
.areaFlow .listFlow li .flowPhoto img {}
.areaFlow .listFlow li .txtFlow {
    font-size: 18px;
    font-weight: 600;
    color: #000000;
    text-align: center;
}
/* areaPrice */
.areaPrice {
    background: #dcf1efFF;
    padding: 75px 0 77px;
}
.areaPrice .inner {
    max-width: 1086px;
}
.areaPrice .subIdentifi {
    margin-top: 29px;
    margin-bottom: 49px;
}
.areaPrice .boxPrice {}
.areaPrice .boxPrice .wrapTablePrice {}
.areaPrice .boxPrice .wrapTablePrice table {
    width: 100%;
    position: relative;
}
.areaPrice .boxPrice .wrapTablePrice table:before {
    content: "";
    position: absolute;
    border: 3px solid #ffda2aFF;
    width: calc(26.7% - 8px);
    height: 98.6%;
    left: 19.8%;
    top: 0;
    z-index: 1;
}
.areaPrice .boxPrice .wrapTablePrice table tr {}
.areaPrice .boxPrice .wrapTablePrice table tr th {
    border: solid #dcf1efFF;
    background: #b0aeaeFF;
    color: #ffffff;
    text-align: center;
    height: 75px;
    font-size: 22px;
    font-weight: 600;
    width: 26.7%;
    border-width: 0 3px 3px 0;
    letter-spacing: 5px;
    padding: 10px 10px;
    user-select: none;
}
.areaPrice .boxPrice .wrapTablePrice table tr th:first-child  {
    background: #dcf1efFF;
    width: 19.6%;
}
.areaPrice .boxPrice .wrapTablePrice table tr th:nth-child(2) {
    background: #fefaf3FF;
    color: #333333;
    width: 26.7%;
}

.areaPrice .boxPrice .wrapTablePrice table tr td {
    font-size: 18px;
    font-weight: 600;
    background: #ffffff;
    border: 3px solid #dcf1efFF;
    text-align: center;
    height: 76px;
    padding: 10px 11px;
    user-select: none;
}

.areaPrice .boxPrice .wrapTablePrice table tr td .borderYellow {
    
}
.areaPrice .boxPrice .wrapTablePrice table tr td:first-child {
    color: #ffffff;
    background: #249ea6FF;
}
.areaPrice .boxPrice .wrapTablePrice table tr td:nth-child(2) {
    background: #fefaf3FF;
}

/* areaFaq */
.areaFaq {
    padding: 84px 0 80px;
}
.areaFaq .listFaq {
    max-width: 853px;
    margin: 63px auto 0;
}
.areaFaq .listFaq li {
    margin-bottom: 33px;
}
.areaFaq .listFaq li:last-child {
    margin-bottom: 0;
}
.areaFaq .listFaq li:has(.question.open) {
    background: #f5f5f5FF;
}
.areaFaq .listFaq li .question {
    position: relative;
    display: flex;
    align-items: flex-start;
    cursor: pointer;
    padding: 13px 85px 15px 30px;
    background: #d1ebebFF;
    color: #249ea6;
    border-radius: 10px;
}
.areaFaq .listFaq li .question:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 31px;
    transform: translateY(-50%) rotate(180deg);
    width: 32px;
    height: 20px;
    background: url(../images/index/icon-arrow-up.svg) no-repeat;
    background-size: 100%;
    transition: all .3s;
}
.areaFaq .listFaq li .question.open:after {
    transform: translateY(-50%);
}
.areaFaq .listFaq li .alphabet {
    font-size: 38px;
    font-weight: 600;
    margin-right: 20px;
    color: #249ea6;
}
.areaFaq .listFaq li .question .alphabet {}
.areaFaq .listFaq li .question .questionTitle {
    font-size: 20px;
    font-weight: 600;
    margin-top: 15px;
    width: calc(100% - 48px);
}
.areaFaq .listFaq li .wrapAnswer {
    display: none;
}
.areaFaq .listFaq li .wrapAnswer .answer {
    padding: 26px 30px 26px 31px;
    line-height: 1.8;
    display: flex;
    align-items: center;
    background: #f5f5f5FF;
}
.areaFaq .listFaq li .wrapAnswer .answer .alphabet {
    margin-right: 23px;
}
.areaFaq .listFaq li .wrapAnswer .answer .txtAnswer {
    font-size: 18px;
    font-weight: normal;
    line-height: 1.8;
    width: calc(100% - 48px);
    text-align: justify;
}

/* areaContact */
.areaContact {
    background: #249ea6FF;
    padding: 84px 0 90px;
}
.areaContact .wrapContact {}
.areaContact .wrapContact .wrapTitle .titleEn {
    color: #ffffff;
}
.areaContact .wrapContact .wrapTitle .titleItem {
    color: #ffffff;
}
.areaContact .wrapContact .boxContact {
    max-width: 852px;
    margin: 45px auto 0;
    background: #ffffff;
    border-radius: 20px;
}
.areaContact .wrapContact .boxContact .contactForm {
    max-width: 690px;
    padding: 53px 20px 50px;
    width: 100%;
    margin: 0 auto;
}

.areaContact .boxContact .contactForm .formItem .formName {
    font-size: 18px;
    font-weight: 700;
    padding: 0 5px;
    margin-bottom: 8px;
}

.areaContact .boxContact .contactForm .formItem+.formItem {
    margin-top: 33px;
}

.areaContact .boxContact .contactForm .formItem .formName .required {
    color: #ff4500;
    margin-left: 10px;
    font-weight: normal;
}

.areaContact .boxContact .contactForm .formItem .formInput .inputDetail,
.areaContact .boxContact .contactForm .formItem .formInput .styleInput {
    border: none;
    width: 100%;
    padding: 10px 19px 10px;
    font-size: 18px;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif;
    border-radius: 10px;
    background: #eeeeee;
    height: 60px;
    color: #333333;
}

.areaContact .boxContact .contactForm .formItem .formInput .styleInput::placeholder {
    color: #d5d5d5;
    font-weight: normal;
}

.areaContact .boxContact .contactForm .formItem .formInput .wpcf7-not-valid-tip {
    font-size: 16px;
    font-weight: 500;
    margin-top: 5px;
    padding-left: 10px;
}

.areaContact .boxContact .contactForm .formItem .formInput .inputDetail {
    pointer-events: none;
}


.areaContact .boxContact .contactForm .formItem.formPrivacy {
    margin-top: 29px;
}

.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox input {
    display: none;
}

.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-list-item {
    margin: 0;
}

.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-list-item-label,
.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .checkbox {
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
}

.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-not-valid-tip {
    padding-left: 75px;
    font-size: 16px;
    font-weight: 500;
    margin-top: 5px;
}

.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-list-item-label.confirm {
    pointer-events: none;
}

.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-list-item-label:before,
.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .checkbox:before {
    content: "";
    position: absolute;
    top: 1px;
    left: 0px;
    width: 25px;
    height: 25px;
    border: none;
    background-color: #eeeeee;
    border-radius: 3px;
}

.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-list-item-label:after,
.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .checkbox:after {
    content: "";
    position: absolute;
    top: 1px;
    left: 8px;
    width: 7px;
    height: 15px;
    border: solid #ffffff;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    opacity: 0;
}

.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox input:checked~.wpcf7-list-item-label::before,
.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox input:checked~.checkbox::before {
    background: #249EA6;
}

.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox input:checked~.wpcf7-list-item-label:after, 
.areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox input:checked~.checkbox:after {
    opacity: 1;
}

.areaContact .boxContact .contactForm .btnSubmit {
    width: 100%;
    margin: 53px auto 0;
    max-width: 519px;
}

.areaContact .boxContact .contactForm .btnSubmit button:disabled {
    pointer-events: none;
    background: #cccccc;
}
.areaContact .boxContact .contactForm .btnSubmit button {
    background: #ff4500;
    border: 1px solid transparent;
    width: 100%;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.8;
    color: #fff;
    padding: 20px 40px 20px;
    border-radius: 60px;
    font-family: "Noto Sans JP", sans-serif;
}

.formLoading {
    display: none;
    width: 50px;
    padding: 8px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #249EA6;
    --_m: 
      conic-gradient(#0000 10%,#000),
      linear-gradient(#000 0 0) content-box;
    -webkit-mask: var(--_m);
            mask: var(--_m);
    -webkit-mask-composite: source-out;
            mask-composite: subtract;
    animation: l3 1s infinite linear;
    margin: 50px auto 0;
}
@keyframes l3 {
    to
    {
        transform: rotate(1turn)
    }
}

/* areaCompany */
.areaCompany {
    padding: 84px 0 80px;
}
.areaCompany .wrapCompany {}
.areaCompany .wrapCompany .boxCompany {
    padding: 56px 45px 45px;
    background: #D1EBEB;
    border-radius: 15px;
    max-width: 852px;
    width: 100%;
    margin: 45px auto 0;
}
.areaCompany .wrapCompany .boxCompany .listCompany {
    max-width: 633px;
    margin: 0 auto 52px;
}
.areaCompany .wrapCompany .boxCompany .listCompany li {
    display: flex;
    margin-bottom: 23px;
}
.areaCompany .wrapCompany .boxCompany .listCompany li:last-child {
    margin-bottom: 0;
}
.areaCompany .wrapCompany .boxCompany .listCompany li .nameInfo {
    font-size: 20px;
    font-weight: 500;
    color: #249EA6;
    width: 144px;
    margin-right: 30px;
}
.areaCompany .wrapCompany .boxCompany .listCompany li .txtInfo {
    width: calc(100% - 174px);
    font-size: 20px;
    font-weight: 500;
}
.areaCompany .wrapCompany .boxCompany .listCompany li .txtInfo a {
    color: #333333;
}
.areaCompany .wrapCompany .boxCompany .map {}
.areaCompany .wrapCompany .boxCompany .map iframe {
    height: 368px;
    border-radius: 30px;
    border: 2px solid #249EA6 !important;
}
@media (max-width: 1202px) and (min-width: 769px) {
    .main .contentMain .wrapMain .mainLeftPhoto {
        left: 0;
    }

    .main .contentMain .wrapMain .mainRightPhoto {
        right: 0;
    }
}

@media (max-width: 1200px) and (min-width: 769px) {
    .areaIssue .iframeIssue .wrapIssue .boxIssue .txtIssue {
        width: clamp(190px, 25vw, 300px);
        font-size: clamp(14px, 1.5vw, 18px);
        padding: 1.5vw 1.1vw 1.5vw 1.1vw;
    }
    .areaIssue .iframeIssue .wrapIssue .boxIssue .itemIssueTopLeft {
        left: 3.3vw;
    }

    .areaIssue .iframeIssue .wrapIssue .boxIssue .itemIssueTopRight {
        right: 3.3vw;
    }

    .areaIssue .iframeIssue .wrapIssue .boxIssue .issuePhoto {
        width: clamp(250px, 27.7vw, 333px);
    }
}

@media (max-width: 1070px) and (min-width: 769px) {
    .areaIdentifi .wrapIdentifi .titleIdentifi {
        font-size: 44px;
    }
    .subIdentifi {
        font-size: clamp(16px, 1.8vw, 20px);
    }
    .areaIdentifi .wrapIdentifi .listIdentifi li {
        padding: 19px 10px 20px 10px;
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .subIdentifiItem {
        font-size: clamp(20px, 2.4vw, 25px);
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .txtIdenfitiItem {
        font-size: clamp(30px, 3.7vw, 40px);
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .numIdentifiItem {
        font-size: clamp(74px, 8vw, 85px);
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .wrapArticle {
        font-size: clamp(38px, 4.2vw, 44px);
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .wrapArticle .txtMoreArticle {
        font-size: clamp(16px, 1.8vw, 20px);
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem.boxIdentifiItemSmall .boxIdentifiItem .numIdentifiItem {
        font-size: clamp(58px, 6.9vw, 74px);
        letter-spacing: -4px;
        margin-right: 5px;  
    }
    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem.boxIdentifiItemSmall .boxIdentifiItem .wrapArticle {
        font-size: clamp(26px, 3.1vw, 32px);
        letter-spacing: 0;
    }
    .areaExperience .wrapExperience .experience {
        font-size: clamp(18px, 2vw, 22px);
    }

    .areaExperience .wrapExperience .subExperience {
        font-size: clamp(18px, 2vw, 22px);
    }

    .areaTesti .wrapTesti .listTesti li .wrapAvatarTesti .nameTesti {
        font-size: 14px;
    }

    .areaTesti .wrapTesti .listTesti li .boxTesti .txtTesti {
        font-size: 16px;
    }

    .areaFlow .listFlow li {
        width: calc((100% / 5) - 2.8vw);
        margin-right: 3.6vw;
        padding: 5.2vw 0.9vw 2.3vw;
    }

    .areaFlow .listFlow li:before {
        right: -3.5vw;
        width: 3vw;
        height: 3vw;
    }

    .areaFlow .listFlow li .numberFlow {
        width: clamp(30px, 5.6vw, 60px);
        height: clamp(30px, 5.6vw, 60px);
        font-size: clamp(22px, 2.7vw, 28px);
        top: -2.9vw;
    }

    .areaFlow .listFlow li .flowPhoto {
        width: 63%;
        margin: 0 auto 2.4vw;
    }

    .areaFlow .listFlow li .txtFlow {
        font-size: clamp(14px, 1.6vw, 18px);
    }

    .areaPrice .boxPrice .wrapTablePrice table tr td {
        font-size: clamp(14px, 1.6vw, 18px);
        height: clamp(66px, 7.2vw, 76px);
    }

    .areaPrice .boxPrice .wrapTablePrice table tr th {
        font-size: clamP(18px, 2vw, 22px);
        height: clamp(65px, 7.1vw, 75px);
    }
}

@media (max-width: 1050px) and (min-width: 769px) {
    .main .contentMain .wrapMain .boxMain {
        padding-left: 4.2%;
    }
}

@media (max-width: 1000px) and (min-width: 769px) {
    .main .contentMain .wrapMain {
        padding: clamp(30px, 5.6vw, 56px) 0;
    }
    .main .contentMain .wrapMain .boxMain {
        width: clamp(400px, 58vw, 577px);
    }
    .main .contentMain .wrapMain .boxMain .txtEndow {
        font-size: clamp(14px, 1.8vw, 18px);
    }
    .main .contentMain .wrapMain .boxMain .titleMain {
        font-size: clamp(34px, 4.2vw, 42px);
    }

    .main .contentMain .wrapMain .boxMain .titleMain .titleMainColBlue {
        font-size: clamp(40px, 4.8vw, 48px);
    }

    .main .contentMain .wrapMain .boxMain .txtMain {
        font-size: clamp(14px, 1.8vw, 18px);
    }

    .main .buttonLink {
        max-width: clamp(300px, 40vw, 400px);
    }

    .main .buttonLink a {
        font-size: clamp(16px, 2vw, 20px);
    }

    .main .buttonLink a .txtButtonLink:before {
        width: clamp(28px, 3.1vw, 31px);
        height: clamp(20px, 2.3vw, 23px);
    }
    .main .contentMain .wrapMain .mainRightPhoto {
        width: clamp(190px, 22.8vw, 228px);
    }

    .main .subMain .wrapSubMain {
        font-size: clamp(24px, 2.8vw, 28px);
    }

    .buttonLink {
        max-width: clamp(400px, 52vw, 520px);
    }

    .areaFaq .listFaq li .question .alphabet {
        font-size: clamp(30px, 3.8vw, 38px);
    }

    .areaFaq .listFaq li .question .questionTitle {
        font-size: clamp(18px, 2vw, 20px);
        margin-top: clamp(12px, 1.5vw, 15px);
    }

    .areaFaq .listFaq li .question:after {
        width: clamp(28px, 3.2vw, 32px);
        height: clamp(19px, 2vw, 20px);
    }

    .areaFaq .listFaq li .wrapAnswer .answer .txtAnswer {
        font-size: clamp(16px, 1.8vw, 18px);
    }

    .areaContact .boxContact .contactForm .formItem .formName {
        font-size: clamp(16px, 1.8vw, 18px);
    }

    .areaContact .boxContact .contactForm .formItem .formInput .inputDetail, 
    .areaContact .boxContact .contactForm .formItem .formInput .styleInput {
        font-size: clamp(16px, 1.8vw, 18px);
    }

    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-list-item-label, 
    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .checkbox {
        font-size: clamp(14px, 1.6vw, 16px);
    }

    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-list-item-label:before, 
    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .checkbox:before {
        width: clamp(22px, 2.5vw, 25px);
        height: clamp(22px, 2.5vw, 25px);
        top: 0;
    }

    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-list-item-label:after, 
    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .checkbox:after {
        left: clamp(7px, 0.8vw, 8px);
        width: clamp(5px, 0.7vw, 7px);
        height: clamp(13px, 1.5vw, 15px);
    }

    .areaContact .boxContact .contactForm .btnSubmit button {
        font-size: clamp(22px, 2.4vw, 24px);
    }

    .areaCompany .wrapCompany .boxCompany .listCompany li .nameInfo {
        font-size: clamp(16px, 2vw, 20px);
    }

    .areaCompany .wrapCompany .boxCompany .listCompany li .txtInfo {
        font-size: clamp(16px, 2vw, 20px);
    }

}

@media (max-width: 970px) and (min-width: 769px){
    .areaIdentifi .wrapIdentifi .listIdentifi li .identifiPhoto {
        width: 28%;
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem {
        width: 68%;
    }

    .areaCompany .wrapCompany .boxCompany .map iframe {
        height: 37.9vw;
    }
}
@media (max-width: 900px) and (min-width: 769px){
    .main .contentMain .wrapMain .mainLeftPhoto {
        width: clamp(150px, 21.8vw, 205px);
    } 

    .areaTesti .wrapTesti .listTesti li .boxTesti {
        width: calc(100% - 280px);
    }
}
@media (max-width: 870px) and (min-width: 769px){
    .areaIssue .iframeIssue .wrapIssue .boxIssue .txtIssue br {
        display: none;
    }
}
@media (max-width: 850px) and (min-width: 769px){
    .areaIssue .wrapTypeIssue .listTypeIssue li .boxFocusIssue {
        height: initial;
    }
}
@media (max-width: 800px) and (min-width: 769px){
    .main .contentMain .wrapMain .boxMain {
        width: 470px;
        padding: 0 10px 0 30px;
    }

    .areaCompany .wrapCompany .boxCompany .listCompany li .nameInfo {
        width: 124px;
        margin-right: 20px;
    }

    .areaCompany .wrapCompany .boxCompany .listCompany li .txtInfo {
        width: calc(100% - 144px);
    }
}

@media (min-width: 769px) {
    .buttonLink a:hover {
        background: #ffffff;
        color: #ff4500;
        border-color: #ff4500;
    }
    .buttonLink a:hover .txtButtonLink:before {
        background-image: url('../images/common/icon-mail-hover.svg');
    }
    .areaPrice .boxPrice {
        cursor: unset !important;
    }

    .areaContact .boxContact .contactForm .btnSubmit button:hover {
        background: #ffffff;
        color: #ff4500;
        border-color: #ff4500;
    }

    .areaCompany .wrapCompany .boxCompany .listCompany li .txtInfo a:hover {
        color: #249EA6;
    }
}

@media (max-width: 768px) {
    .main {
        overflow: hidden;
    }
    .main .contentMain {
        position: relative;
        padding-bottom: 5.4vw;
    }
    .main .contentMain .wrapMain {
        display: flex;
        padding: 30px 0 0px;
    }
    .main .contentMain .wrapMain .mainLeftPhoto {
        width: clamp(141px, 37.6vw, 190px);
        position: absolute;
        bottom: 20.7vw;
        bottom: 78px;
        bottom: clamp(78px, 20.7vw, 110px);
        bottom: 78px;
        left: 15px;
    }
    .main .contentMain .wrapMain .mainLeftPhoto img {
        width: 100%;
    }
    .main .contentMain .wrapMain .boxMain {
        width: 100%;
        padding: 0;
    }
    .main .contentMain .wrapMain .boxMain .txtEndow {
        font-size: clamp(14px, 3.7vw, 18px);
        border-radius: 5px;
        padding: 5px 10px 4px 9px;
        margin-bottom: 1.6vw;
    }
    .main .contentMain .wrapMain .boxMain .titleMain {
        font-size: clamp(52px, 13.8vw, 56px);
        font-weight: 800;
        letter-spacing: 2px;
        line-height: 1.4;
        margin-bottom: 1.5vw;
    }
    .main .contentMain .wrapMain .boxMain .titleMain .titleMainColBlue {
        letter-spacing: 2px;
        font-size: clamp(52px, 13.8vw, 56px);
    }
    .main .contentMain .wrapMain .boxMain .txtMain {
        width: 74%;
        padding-bottom: 44.4vw;
        padding-bottom: clamp(166.5px, 44.4vw, 170px);
        padding-bottom: 166.5px;
        font-size: clamp(14px, 3.7vw, 18px);
        text-align: justify;
        line-height: 1.6;
        margin-bottom: 0;
    }
    .main .buttonLink {
        max-width: 345px;
        margin: 0 auto;
    }
    .buttonLink {
        position: relative;
        z-index: 1;
        max-width: clamp(250px, 67vw, 330px);
    }
    .main .buttonLink a,
    .buttonLink a {
        padding: 14px 10px 15px;
        font-size: clamp(16px, 4.2vw, 20px);
    }
    .main .buttonLink a .txtButtonLink,
    .buttonLink a .txtButtonLink {
        padding-left: clamp(32px, 8.6vw, 40px);
    }
    .main .buttonLink a .txtButtonLink:before,
    .buttonLink a .txtButtonLink:before {
        width: clamp(22px, 5.8vw, 26px);
        height: clamp(16px, 4.2vw, 22px);
        top: 54%;
        left: 0;
    }
    
    .main .contentMain .wrapMain .mainRightPhoto {
        width: clamp(263px, 70.1vw, 290px);
        position: absolute;
        bottom: 0;
        right: -73px;
    }
    .main .contentMain .wrapMain .mainRightPhoto img {
        width: 100%;
    }
    
    .main .subMain {
        background: #88ccccFF;
    }
    .main .subMain .wrapSubMain {
        padding: 12px 0;
        font-size: clamp(20px, 5.3vw, 24px);
        line-height: 1.6;
        letter-spacing: 0;
    }

    /* areaStrategy */
    .areaStrategy {
        padding: 50px 0 60px;
    }
    .areaStrategy .wrapStrategy {}
    .areaStrategy .wrapStrategy .boxStrategy {
        margin-top: 30px;
    }
    .areaStrategy .wrapStrategy .boxStrategy .titleStrategy {
        font-size: clamp(18px, 4.8vw, 22px);
        margin-bottom: 13px;
    }
    .areaStrategy .wrapStrategy .boxStrategy .subStraregy {
        font-size: clamp(14px, 3.7vw, 18px);
        margin-bottom: 40px;
    }
    .areaStrategy .wrapStrategy .boxStrategy .listStrategy {
        max-width: 852px;
        margin: 0 auto;
    }
    .areaStrategy .wrapStrategy .boxStrategy .listStrategy li {
        border-radius: 15px;
        padding: 14px 15px 13px;
        margin-bottom: 25px;
        flex-direction: column-reverse;
        justify-content: flex-end;
    }
    .areaStrategy .wrapStrategy .boxStrategy .listStrategy li .txtStrategyItem {
        font-size: clamp(16px, 4.2vw, 20px);
        width: 100%;
        text-align: center;
    }

    .areaStrategy .wrapStrategy .boxStrategy .listStrategy li.strategyBgBlue .txtStrategyItem {
        letter-spacing: -0.4px;
    }

    .areaStrategy .wrapStrategy .boxStrategy .listStrategy li .txtStrategyItem .strategyFsz32 {
        font-size: clamp(24px, 6.4vw, 28px);
        text-align: center;
        margin: 0;
    }
    .areaStrategy .wrapStrategy .boxStrategy .listStrategy li .strategyphoto {
        position: initial;
        margin-bottom: 20px;
    }

    .areaStrategy .wrapStrategy .boxStrategy .listStrategy li.strategyBgGrey .strategyphoto {
        bottom: 22px;
    }
    .areaStrategy .wrapStrategy .boxStrategy .listStrategy li.strategyBgBlue .strategyphoto {
        bottom: 13px;
    }

    /* areaIssue */
    .areaIssue .iframeIssue {
        padding: 40px 0 60px;
    }
    .areaIssue .iframeIssue .wrapIssue .boxIssue {
        max-width: 460px;
        margin: 30px auto 0;
    }
    .areaIssue .iframeIssue .wrapIssue .boxIssue .txtIssue {
        font-size: clamp(14px, 3.7vw, 18px);
        line-height: 1.8;
        border-radius: 10px;
        padding: 15px 15px 15px 15px;
        position: initial;
        width: clamp(275px, 73.3vw, 380px);
        margin: 0 auto;
        letter-spacing: 0.2px;
    }
    .areaIssue .iframeIssue .wrapIssue .boxIssue .itemIssueTopLeft {
        margin: 0 auto 20px 0;
    }
    .areaIssue .iframeIssue .wrapIssue .boxIssue .itemIssueBotLeft {
        margin: 0 0 20px auto;
    }
    .areaIssue .iframeIssue .wrapIssue .boxIssue .itemIssueTopRight {
        margin: 0 auto 20px 0;
    }
    .areaIssue .iframeIssue .wrapIssue .boxIssue .itemIssueBotRight {
        margin: 0 0 20px auto;
    }
    .areaIssue .iframeIssue .wrapIssue .boxIssue .issuePhoto {
        width: clamp(250px, 66.6vw, 360px);
    }
    .areaIssue .iframeIssue .wrapIssue .boxIssue .issuePhoto img {
        width: 100%;
    }

    .areaIssue .wrapTypeIssue {
        padding: 50px 0 50px;
    }
    .areaIssue .wrapTypeIssue .listTypeIssue {}
    .areaIssue .wrapTypeIssue .listTypeIssue li {
        padding: 20px 19px;
        margin-bottom: 25px;
        flex-direction: column;
    }
    .areaIssue .wrapTypeIssue .listTypeIssue li:last-child {
        margin-bottom: 0;
    }
    .areaIssue .wrapTypeIssue .listTypeIssue li .typeIssuePhoto {
        width: 70px;
        margin: 0 auto 10px;
    }
    .areaIssue .wrapTypeIssue .listTypeIssue li .boxTypeIssue {
        width: 100%;
        margin: 0 0 20px;
    }
    .areaIssue .wrapTypeIssue .listTypeIssue li .boxTypeIssue .titleTypeIssue {
        font-size: clamp(16px, 4.2vw, 20px);
        margin-bottom: 16px;
        text-align: center;
    }
    .areaIssue .wrapTypeIssue .listTypeIssue li .boxTypeIssue .txtTypeIssue {
        font-size: clamp(14px, 3.7vw, 18px);
        line-height: 1.61;
        text-align: center;
    }
    .areaIssue .wrapTypeIssue .listTypeIssue li .boxFocusIssue {
        border-radius: 15px;
        padding: 14px 16px 16px;
        width: 100%;
        height: initial;
    }
    .areaIssue .wrapTypeIssue .listTypeIssue li .boxFocusIssue .focusIssue {
        font-size: clamp(16px, 4.2vw, 20px);
        margin-bottom: 5px;
    }
    .areaIssue .wrapTypeIssue .listTypeIssue li .boxFocusIssue .txtFocusIssue {
        font-size: clamp(14px, 3.7vw, 18px);
        line-height: 1.6;
        text-align: justify;
    }

    /* areaIdentifi */
    .areaIdentifi {
        padding: 60px 0 60px;
    }

    .areaIdentifi .wrapIdentifi .titleIdentifi {
        font-size: clamp(26px, 6.9vw, 34px);
        margin-bottom: 47px;
    }

    .areaIdentifi .wrapIdentifi .titleIdentifi br {
        display: none;
    }

    .areaIdentifi .wrapIdentifi .titleIdentifi:after {
        border-left-width: 30px;
        border-right-width: 30px;
        border-top-width: 30px;
        bottom: -27px;
    }

    .subIdentifi {
        font-size: clamp(14px, 3.7vw, 18px);
        margin-bottom: 30px;
    }

    /* .areaIdentifi .wrapIdentifi .listIdentifi {
        flex-direction: column;
    } */

    .areaIdentifi .wrapIdentifi .listIdentifi li {
        /* width: 100%; */
        flex-direction: column;
        padding: 19px 15px 20px 15px;
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .identifiPhoto {
        margin-bottom: 30px;
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem {
        width: 100%;
        margin-top: 0;
        display: block;
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .subIdentifiItem {
        font-size: clamp(24px, 6.4vw, 28px);
        margin-bottom: 0;
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .numIdentifiItem {
        font-size: clamp(82px, 21.8vw, 86px);
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .wrapArticle {
        font-size: clamp(40px, 10.6vw, 44px);
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .wrapArticle .txtMoreArticle {
        font-size: clamP(16px, 4.2vw, 20px);
        letter-spacing: 0;
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem .boxIdentifiItem .txtIdenfitiItem {
        font-size: clamp(34px, 9vw, 38px);
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem.boxIdentifiItemSmall .boxIdentifiItem {
        margin-top: 0;
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem.boxIdentifiItemSmall .boxIdentifiItem .numIdentifiItem {
        letter-spacing: -2px;
        margin-right: 5px;
        font-size: clamp(70px, 18.6vw, 76px);
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li .wrapIdentifiItem.boxIdentifiItemSmall .boxIdentifiItem .wrapArticle {
        letter-spacing: 0.5px;
        font-size: clamp(30px, 8vw, 34px);
    }

    /* areaExperience */
    .areaExperience {
        padding: 60px 0 0;
    }

    .areaExperience .wrapExperience .experience {
        font-size: clamp(14px, 3.7vw, 18px);
        margin-bottom: 7px;
    }

    .areaExperience .wrapExperience .subExperience {
        font-size: clamp(14px, 3.7vw, 18px);
        margin: 20px 0 30px;
    }

    /* areaTesti */
    .areaTesti {
        padding: 60px 0;
    }

    .areaTesti .wrapTesti .listTesti li {
        margin-bottom: clamp(30px, 8vw, 45px);
    }

    .areaTesti .wrapTesti .listTesti li .wrapAvatarTesti {
        width: clamp(90px, 21.3vw, 110px);
        margin-right: 10px;
    }

    .areaTesti .wrapTesti .listTesti li:nth-child(2n) .wrapAvatarTesti {
        margin-left: 10px;
    }

    .areaTesti .wrapTesti .listTesti li .wrapAvatarTesti .tesTiAvatarPhoto {
        margin: 0 auto 4px;
        width: clamp(70px, 18.6vw, 90px);
    }

    .areaTesti .wrapTesti .listTesti li .wrapAvatarTesti .nameTesti {
        font-size: clamp(14px, 3.7vw, 18px);
    }

    .areaTesti .wrapTesti .listTesti li .boxTesti {
        width: calc(100% - clamp(90px, 21.3vw, 110px) - 10px);
        padding: 15px 15px;
    }

    .areaTesti .wrapTesti .listTesti li .boxTesti .txtTesti {
        font-size: clamp(14px, 3.7vw, 18px);
    }

     /* areaFlow */
     .areaFlow {
        padding: 60px 0;
    }
    .areaFlow .listFlow {
        flex-direction: column;
        max-width: clamp(273px, 73vw, 375px);
        margin: 55px auto 0;
    }
    .areaFlow .listFlow li {
        width: 100%;
        margin-right: 0;
        margin-bottom: clamp(110px, 28vw, 120px);
        padding: clamp(37px, 9.8vw, 60px) clamp(10px, 4vw, 20px) clamp(26px, 6.9vw, 35px);
    }
    .areaFlow .listFlow li:last-child {
        margin-right: 0;
        margin-bottom: 0;
    }
    .areaFlow .listFlow li:before {
        height: clamp(39px, 10.4vw, 50px);
        width: clamp(39px, 10.4vw, 50px);
        top: initial;
        bottom: clamp(-96px, -12vw, -100px);
        transform: rotate(90deg) translate(-50%, 0);
        left: 43%;
        right: auto;
    }
    .areaFlow .listFlow li:last-child:before {
        display: none;
    }
    .areaFlow .listFlow li .numberFlow {
        font-size: clamp(22px, 5.8vw, 28px);
        width: clamp(50px, 13.3vw, 60px);
        height: clamp(50px, 13.3vw, 60px);
    }
    .areaFlow .listFlow li .flowPhoto {
        text-align: center;
        width: clamp(100px, 26.6vw, 120px);
        margin: 0 auto 20px;
    }

    .areaFlow .listFlow li .flowPhoto img {
        width: 100%;
    }
    .areaFlow .listFlow li .txtFlow {
        font-size: clamp(16px, 4.2vw, 20px)
    }

    /* areaPrice */
    .areaPrice {
        padding: 60px 0;
    }
    .areaPrice .subIdentifi {
        margin-top: 23px;
        margin-bottom: 39px;
    }
    .areaPrice .iframePrice {
        position: relative;
    }
    .areaPrice .iframePrice .iconScroll {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: clamp(100px, 26.7vw, 140px);
        z-index: 1;
    }
    .areaPrice .iframePrice.dragged .iconScroll {
        display: none;
    }
    .areaPrice .boxPrice {
        width: 100%;
        overflow-x: scroll;
        position: relative;
        user-select: none;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x; 
    }
    .areaPrice .boxPrice::-webkit-scrollbar {
        display: none;
    }
    .areaPrice .boxPrice .wrapTablePrice {
        width: clamp(760px, 202.6vw, 900px);
        user-select: none;
    }
    .areaPrice .boxPrice .wrapTablePrice table:before {
        content: "";
        position: absolute;
        border: 3px solid #ffda2aFF;
        width: calc(28.2% - 9px);
        height: 98.6%;
        left: 15.6%;
        top: 0;
        z-index: 1;
    }
    .areaPrice .boxPrice .wrapTablePrice table tr th {
        height: clamp(68px, 18.1vw, 80px);
        font-size: clamp(16px, 4.2vw, 20px);
        width: 28.2%;
        border-width: 0 3px 3px 0;
        letter-spacing: 5px;
        padding: 10px 10px;
    }
    .areaPrice .boxPrice .wrapTablePrice table tr th:first-child  {
        width: 15.4%;
    }
    .areaPrice .boxPrice .wrapTablePrice table tr th:nth-child(2) {
        width: 28.2%;
    }
    .areaPrice .boxPrice .wrapTablePrice table tr th:nth-child(2) img {
        user-select: none;
    -webkit-user-drag: none;
    touch-action: pan-y;
    }

    .areaPrice .boxPrice .wrapTablePrice table tr td {
        font-size: clamp(14px, 3.7vw, 18px);
        border: 3px solid #dcf1efFF;
        text-align: center;
        height: clamp(68px, 18.1vw, 80px);
        padding: 10px 15px;
    }


    /* areaFaq */
    .areaFaq {
        padding: 60px 0;
    }
    .areaFaq .listFaq {
        max-width: 853px;
        margin: 30px auto 0;
    }
    .areaFaq .listFaq li {
        margin-bottom: 20px;
    }
    .areaFaq .listFaq li .question {
        padding: 13px 50px 22px 15px;
        border-radius: 10px;
    }
    .areaFaq .listFaq li .question:after {
        top: 50%;
        right: 12px;
        width: 32px;
        height: 20px;
        width: clamp(22px, 6vw, 26px);
        height: clamp(14px, 3.8vw, 18px);
    }
    .areaFaq .listFaq li .alphabet {
        font-size: 38px;
        margin-right: 12px;
        font-size: clamp(30px, 9.1vw, 34px);
        width: clamp(30px, 8vw, 32px);
    }
    .areaFaq .listFaq li .question .alphabet {}
    .areaFaq .listFaq li .question .questionTitle {
        font-size: 20px;
        margin-top: clamp(12px, 3.4vw, 15px);
        width: calc(100% - clamp(30px, 8vw, 32px) - 12px);
        font-size: clamp(16px, 4.2vw, 20px);
    }
    .areaFaq .listFaq li .wrapAnswer .answer {
        padding: 13px 15px 22px 15px;
        line-height: 1.8;
    }
    .areaFaq .listFaq li .wrapAnswer .answer .alphabet {
        margin-right: 12px;
    }
    .areaFaq .listFaq li .wrapAnswer .answer .txtAnswer {
        font-size: clamp(14px, 3.7vw, 18px);
        line-height: 1.8;
        width: calc(100% - clamp(30px, 8vw, 32px) - 12px);
    }

    /* areaContact */
    .areaContact {
        padding: 60px 0;
    }
    .areaContact .wrapContact .boxContact {
        max-width: 852px;
        margin: 30px auto 0;
        border-radius: 20px;
    }
    .areaContact .wrapContact .boxContact .contactForm {
        max-width: 690px;
        padding: 53px 20px 50px;
        width: 100%;
        margin: 0 auto;
    }

    .areaContact .boxContact .contactForm .formItem .formName {
        font-size:clamp(16px, 4.2vw, 20px);
        padding: 0 5px;
        margin-bottom: 8px;
    }

    .areaContact .boxContact .contactForm .formItem+.formItem {
        margin-top: 26px;
    }

    .areaContact .boxContact .contactForm .formItem .formName .required {
        margin-left: 5px;
    }

    .areaContact .boxContact .contactForm .formItem .formInput .inputDetail,
    .areaContact .boxContact .contactForm .formItem .formInput .styleInput {
        padding: 10px 15px 10px;
        font-size: clamp(16px, 4.2vw, 20px);
        border-radius: 10px;
        height: 50px;
    }

    .areaContact .boxContact .contactForm .formItem .formInput .wpcf7-not-valid-tip {
        font-size: 16px;
        margin-top: 5px;
        padding-left: 10px;
    }

    .areaContact .boxContact .contactForm .formItem.formPrivacy {
        margin-top: 29px;
    }
    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-list-item-label,
    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .checkbox {
        padding-left: clamp(35px, 9.3vw, 40px);
        font-size: clamp(16px, 4.2vw, 20px);
    }

    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-not-valid-tip {
        padding-left: 75px;
        font-size: 16px;
        margin-top: 5px;
    }

    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-list-item-label:before,
    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .checkbox:before {
        top: 1px;
        left: 0px;
        height: clamp(25px, 6.6vw, 30px);
        width: clamp(25px, 6.6vw, 30px);
    }

    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .wpcf7-list-item-label:after,
    .areaContact .boxContact .contactForm .formItem.formPrivacy .formCheckbox .checkbox:after {
        top: clamp(1px, 0.2vw, 3px);
        left: clamp(7px, 1vw, 10px);
        width: clamp(8px, 1.5vw, 11px);
        height: clamp(14px, 2.6vw, 18px);
        border-width: 0 3px 3px 0;
    }

    .areaContact .boxContact .contactForm .btnSubmit {
        margin: 53px auto 0;
        max-width: 390px;
    }

    .areaContact .boxContact .contactForm .btnSubmit button {
        font-size: clamp(18px, 4.8vw, 22px);
        line-height: 1.8;
        padding: 15px 10px;
        border-radius: 60px;
    }

    /* areaCompany */
    .areaCompany {
        padding: 60px 0;
    }
    .areaCompany .wrapCompany .boxCompany {
        padding: clamp(25px, 6.6vw, 35px);
        border-radius: 15px;
        max-width: 852px;
        margin: 30px auto 0;
    }
    .areaCompany .wrapCompany .boxCompany .listCompany {
        max-width: 633px;
        margin: 0 auto 30px;
    }
    .areaCompany .wrapCompany .boxCompany .listCompany li {
        display: flex;
        margin-bottom: 17px;
    }
    .areaCompany .wrapCompany .boxCompany .listCompany li:last-child {
        margin-bottom: 0;
    }
    .areaCompany .wrapCompany .boxCompany .listCompany li .nameInfo {
        font-size: clamp(14px, 3.7vw, 18px);
        width: clamp(75px, 20vw, 100px);
        margin-right: 30px;
    }
    .areaCompany .wrapCompany .boxCompany .listCompany li .txtInfo {
        width: calc(100% - clamp(75px, 20vw, 100px) - 30px);
        font-size: clamp(14px, 3.7vw, 18px);
        line-height: 1.8;
    }
    .areaCompany .wrapCompany .boxCompany .map iframe {
        height: clamp(195px, 52vw, 310px);
        border-radius: 20px;
        border: 2px solid #249EA6 !important;
    }
}

@media (max-width: 750px) {
    .areaStrategy .wrapStrategy .boxStrategy .listStrategy {
        flex-direction: column;
    }

    .areaStrategy .wrapStrategy .boxStrategy .listStrategy li {
        width: 100%;
    }

    .areaStrategy .wrapStrategy .boxStrategy .listStrategy li:last-child {
        margin-bottom: 0;
    }

    .areaIdentifi .wrapIdentifi .listIdentifi {
        flex-direction: column;
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li {
        width: 100%;
    }

    .areaIdentifi .wrapIdentifi .listIdentifi li:last-child {
        margin-bottom: 0;
    }
}

@media (max-width: 360px) {
    .main .contentMain .wrapMain .boxMain .titleMain .titleMainColBlue {
        letter-spacing: 1px;
    }
}

@media (max-width: 500px) {
    .areaIdentifi .wrapIdentifi .titleIdentifi br {
        display: block;
    }

    .areaFlow .listFlow li:before {
        bottom: clamp(-80px, -21vw, 0px);
    }
    
}