@charset "utf-8";
/* -------------------------------------------------- */
/* PC*/
/* -------------------------------------------------- */
.managementTtl {
    background: url(../../img/management/management_mv_bg.jpg) no-repeat center center / cover;
}
.intro {
    margin: 0 auto 56px;
    padding: 65px 0 90px;
    position: relative;
    background: url(../../img/management/intro_ill.jpg) no-repeat right 44px bottom;
}
.intro * {
    font-weight: 700;
}
.introConsul {
    margin: 0 0 11px;
    padding: 6px 24px;
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 2.0rem;
    color: #ab0106;
    border: 4px solid #ab0106;
    border-radius: 25px;
}
.introHead {
    margin: 0 0 4px;
    font-size: 3.2rem;
    color: #1a1a1a;
}
.introCatch {
    margin: 0 0 38px;
    font-size: 5.0rem;
    line-height: 1.4;
    color: #1a1a1a;
}
.especially {
    color: #ab0106;
}
.introTxt {
    width: 59.333%;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.06em;
}
/* reason */
#reason {
    margin: 0 0 60px;
    padding: 80px 0;
    background: #f9f9f9;
}
.reasonTtl {
    margin: 0 0 84px;
    position: relative;
    text-align: center;
}
.reasonTtl:before, .reasonTtl:after {
    width: 16px;
    height: 120px;
    margin: -60px 0 0;
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    border: 1px solid #b6b6b6;
    vertical-align: middle;
}
.reasonTtl:before {
    left: 0;
    border-right: none;
}
.reasonTtl:after {
    right: 0;
    border-left: none;
}
.reasonTtlJp, .reasonTtlEn {
    display: block;
    font-weight: 700;
    line-height: 1.0;
}
.reasonTtlJp {
    margin: 0 0 25px;
    font-size: 3.5rem;
}
.reasonTtlEn {
    font-size: 2.0rem;
    color: #8a8a8a;
}
.reasonConts {
    margin: 0 0 80px;
}
.reasonConts.schedule {
    margin: 0;
}
.contsTtl {
    margin: 0 0 24px;
    padding: 0 0 20px;
    font-size: 3.5rem;
    font-weight: 700;
    color: #ab0106;
    border-bottom: 1px solid #ccc;
}
.reasonNum {
    display: inline-block;
    font-size: 7.5rem;
    font-weight: 700;
    color: #ab0106;
    vertical-align: -10px;
}
.reasonTxt {
    font-size: 1.6rem;
    line-height: 1.4;
}
.reasonTxt .br_:before {
    content: "\A";
    white-space: pre;
}
.reasonBoxWrap {
    margin: 40px 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.reasonBox {
    width: 31.83%;
    padding: 30px 20px;
    background: #fff;
}
.profit .reasonBox {
    width: 23.33%;
    padding: 24px 20px;
}
.reasonFigure {
    margin: 0 0 30px;
}
.profit .reasonFigure {
    margin: 0 0 24px;
}
.reasonBox09 .reasonFigure {
    border: 1px solid #e4e4e4;
}
.reasonImg {
    width: 100%;
}
.reasonHead {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
}
.cooper .reasonHead {
    margin: 0 0 20px;
}
.reasonBox02 .reasonHead {
    letter-spacing: 0.05em;
}
.reasonHead .brPc:after {
    content: "\A";
    white-space: pre;
}
.reasonBox06 .reasonTxt, .reasonBox07 .reasonTxt {
    letter-spacing: 0.07em;
}
.exampleHead {
    margin: 35px 0 20px;
    padding: 3px 20px;
    display: inline-block;
    background: #000;
    font-size: 1.6rem;
    color: #fff;
    border-radius: 50px;
}
.exampleArea {
    padding: 30px 20px;
    background: #fff;
    text-align: center;
}
/* consultation */
#consultation {
    margin: 0 0 50px;
}
.caseList {
    margin: 0 0 72px;
    padding: 0 28px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.caseBox {
    width: 48.3%;
    margin: 0 0 60px;
}
.caseBoxHead {
    margin: 0 0 32px;
    position: relative;
    z-index: 0;
    border-bottom: 1px solid #b6b6b6;
}
.caseBoxHead:after {
    width: 20px;
    height: 20px;
    content: "";
    position: absolute;
    bottom: -11px;
    left: 50%;
    z-index: -1;
    background: #fff;
    border-right: 1px solid #b6b6b6;
    border-bottom: 1px solid #b6b6b6;
    transform: translateX(-50%) rotate(45deg);
}
.caseTxt, .caseNum {
    display: inline-block;
    font-weight: 700;
    line-height: 0.7;
    color: #ab0106;
    font-feature-settings: "palt";
}
.caseTxt {
    margin: 0 0 11px;
    font-size: 2.8rem;
}
.caseNum {
    font-size: 5.0rem;
}
.caseBoxTtl {
    padding: 0 0 14px;
    display: block;
    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1.4;
    color: #1a1a1a;
}
.caseBoxTtl .brPc:after {
    content: "\A";
    white-space: pre;
}
.caseBox01 .caseBoxTtl {
    padding: 0 0 51px;
}
.caseSupport {
    margin: 0 0 14px;
    padding: 7px 20px;
    display: inline-block;
    background: #ffd600;
    border-radius: 50px;
    font-weight: 700;
    color: #000;
}
.caseSupport:before {
    width: 25px;
    height: 23px;
    margin: 0 10px 0 0;
    display: inline-block;
    content: "";
    background: url(../../img/common/icon_solution.png) no-repeat 0 0 / 100%;
    vertical-align: -6px;
}
.caseBoxTxt {
    font-size: 1.6rem;
    line-height: 1.4;
    letter-spacing: 0.02em;
}
/* business */
.bizConts {
    padding: 50px;
    background: #f9f9f9;
}
.bizContsHead {
    margin: 0 0 28px;
    font-size: 2.4rem;
    font-weight: 700;
    color: #1a1a1a;
}
.bizContsInner {
    padding: 30px;
    background: #fff;
}
.bizItem {
    margin: 0 0 20px;
}
.bizItem:nth-last-of-type(1) {
    margin: 0;
}
.bizList {
    margin: 0 0 9px;
    font-size: 2.0rem;
    font-weight: 700;
    color: #1a1a1a;
}
.bizList:before {
    width: 8px;
    height: 8px;
    margin: 0 8px 0 0;
    content: "";
    display: inline-block;
    background: #ab0106;
    border-radius: 50%;
    vertical-align: 3px;
}
.bizTxt {
    padding: 0 0 0 16px;
    font-size: 1.6rem;
    line-height: 1.4;
}
@media screen and (min-width: 1025px) and (max-width: 1200px) {
    .reasonTtlJp {
        line-height: 1.3;
    }
    .reasonTtlJp .br_:after {
        content: "\A";
        white-space: pre;
    }
    .reasonTxt .br_:before {
        content: "";
    }
    .intro {
        padding: 65px 0 40px;
    }
    .introCatch {
        font-size: 4.7rem;
    }
    .introTxt {
        padding: 0 30px 0 0;
    }
    .scheduleImg {
        width: 100%;
    }
    .caseBoxTtl {
        letter-spacing: 0.06em;
    }
}
/* -------------------------------------------------- */
/* TAB */
/* -------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .intro {
        width: 100%;
        margin: 0 0 50px;
        padding: 60px 4% 320px;
        background: url(../../img/management/intro_ill.jpg) no-repeat center bottom / 348px;
    }
    .introHead {
        font-size: 2.5rem;
    }
    .introConsul {
        left: 4%;
    }
    .introCatch {
        margin: 0 0 20px;
        font-size: 4.0rem;
        font-feature-settings: "palt";
        letter-spacing: 0.07em;
    }
    .introTxt {
        width: 100%;
        font-size: 1.6rem;
    }
    #reason {
        margin: 0 0 50px;
        padding: 50px 0;
    }
    .reasonTtl {
        margin: 0 0 60px;
    }
    .reasonTtlJp {
        margin: 0 0 15px;
        font-size: 2.8rem;
        line-height: 1.4;
    }
    .reasonTtlJp .br_:after {
        content: "\A";
        white-space: pre;
    }
    .reasonTtlEn {
        font-size: 1.5rem;
    }
    .reasonConts {
        margin: 0 0 50px;
    }
    .reasonConts.cooper {
        margin: 0 0 62px;
    }
    .reasonNum {
        font-size: 6.5rem;
    }
    .cooper .reasonNum, .schedule .reasonNum {
        bottom: 20px;
    }
    .contsTtl {
        font-size: 2.8rem;
    }
    .reasonTxt .br_:before {
        content: "";
    }
    .reasonBoxWrap {
        margin: 30px 0 0;
    }
    .reasonBox {
        width: 48.3% !important;
        padding: 20px 2.5% 30px !important;
        margin: 0 0 30px !important;
    }
    .reasonFigure {
        margin: 0 0 20px;
    }
    .reasonHead {
        font-size: 1.6rem;
    }
    .cooper .reasonHead {
        margin: 0 0 15px;
    }
    .reasonHead .br_:after {
        content: "\A";
        white-space: pre;
    }
    .reasonHead .brPc:after {
        content: "";
    }
    .scheduleImg {
        width: 100%;
    }
    .exampleFigure {
        max-width: 614px;
        margin: 0 auto;
    }
    .caseList {
        margin: 0;
        padding: 0;
    }
    .caseBox {
        width: 48.3%;
        margin: 0 0 40px;
    }
    .caseTxt {
        font-size: 2.4rem;
    }
    .caseNum {
        font-size: 4.4rem;
    }
    .caseSupport:before {
        width: 25px;
        height: 23px;
        background: url(../../img/common/sp_icon_solution.png) no-repeat 0 0 / 100%;
        vertical-align: -6px;
    }
    .caseBoxHead {
        margin: 0 0 32px;
    }
    .caseBoxTtl {
        padding: 0 0 14px !important;
        display: block;
        font-size: 2.2rem;
    }
    .caseBoxTtl .brPc:after {
        content: "";
    }
    .bizConts {
        padding: 20px 4%;
    }
    .bizContsInner {
        padding: 20px 4%;
        background: #fff;
    }
    #consultation {
        margin: 0 0 10px;
    }
}
/* -------------------------------------------------- */
/* SP */
/* -------------------------------------------------- */
@media screen and (max-width: 767px) {
    .managementTtl {
        background: url(../../img/management/sp_management_mv_bg.jpg) no-repeat center center / cover;
    }
    .intro {
        margin: 0 auto 60px;
        padding: 70px 0 82.5vw;
        background: url(../../img/management/intro_ill.svg) no-repeat center bottom / 100%;
    }
    .introConsul {
        font-size: 1.6rem;
        line-height: 1.3;
        border: 2px solid #ab0106;
        border-radius: 50px;
    }
    .introConsul .br_:after {
        content: "\A";
        white-space: pre;
    }
    .introHead {
        margin: 0 0 8px;
        font-size: 2.5rem;
        line-height: 1.3;
    }
    .introCatch {
        margin: 0 0 20px;
        font-size: 3.0rem;
    }
    .introTxt {
        width: 100%;
        font-size: 1.6rem;
    }
    #reason {
        margin: 0 0 50px;
        padding: 50px 0;
    }
    .reasonTtl {
        margin: 0 0 60px;
    }
    .reasonTtlJp {
        margin: 0 0 15px;
        font-size: 2.0rem;
        line-height: 1.4;
    }
    .reasonTtlJp .br_:after {
        content: "\A";
        white-space: pre;
    }
    .reasonTtlEn {
        font-size: 1.5rem;
    }
    .reasonConts {
        margin: 0 0 50px;
    }
    .reasonConts.cooper {
        margin: 0 0 62px;
    }
    .reasonNum {
        position: absolute;
        bottom: 12px;
        left: 0;
        font-size: 5.5rem;
    }
    .cooper .reasonNum, .schedule .reasonNum {
        bottom: 20px;
    }
    .contsTtl {
        position: relative;
        margin: 0 0 24px;
        padding: 0 0 12px 45px;
        font-size: 2.0rem;
    }
    .contsTtl .br_:after {
        content: "\A";
        white-space: pre;
    }
    .reasonTxt .br_:before {
        content: "";
    }
    .reasonBoxWrap {
        margin: 30px 0 0;
    }
    .reasonBox {
        width: 100% !important;
        padding: 20px 4% !important;
        margin: 0 0 25px !important;
    }
    .reasonBox:nth-last-of-type(1) {
        margin: 0 !important;
    }
    .reasonFigure {
        margin: 0 0 20px;
    }
    .reasonHead {
        font-size: 1.6rem;
    }
    .cooper .reasonHead {
        margin: 0 0 15px;
    }
    .reasonHead .br_:after {
        content: "\A";
        white-space: pre;
    }
    .reasonHead .brPc:after {
        content: "";
    }
    .scheduleImg {
        width: 100%;
    }
    .caseList {
        margin: 0 0 35px;
        padding: 0;
    }
    .caseBox {
        width: 100%;
        margin: 0 0 40px;
    }
    .caseBox:nth-last-of-type(1) {
        margin: 0;
    }
    .caseTxt {
        font-size: 2.0rem;
    }
    .caseNum {
        font-size: 3.8rem;
    }
    .caseSupport:before {
        width: 25px;
        height: 23px;
        background: url(../../img/common/sp_icon_solution.png) no-repeat 0 0 / 100%;
        vertical-align: -6px;
    }
    .caseBoxTtl {
        padding: 0 0 14px !important;
        display: block;
        font-size: 2.0rem;
        letter-spacing: 0.06em;
    }
    .caseBoxTtl .brPc:after {
        content: "\A";
        white-space: pre;
    }
    .bizConts {
        padding: 20px 4%;
    }
    .bizContsHead {
        margin: 0 0 20px;
        font-size: 2.0rem;
    }
    .bizContsInner {
        padding: 20px 4%;
        background: #fff;
    }
}