@charset "utf-8";

/* hero */
.fj-hero .main-txt > *,
.fj-hero .sub-txt > * {
    color: #1c246d;
}
@media only screen and (min-width:1281px) {
    .fj-hero .content {
        height: 400px;
    }
}
@media only screen and (min-width:768px) and (max-width:1280px) {
    .fj-hero .content {
        height: calc(400vw*100/1280);
    }
}
@media only screen and (min-width:768px) {
    .fj-hero .content {
        padding-top: 0;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
    }
}
@media only screen and (max-width:767px) {
    .fj-hero .content-inner {
        background: inherit;
    }
}

/* nav */
.fj-nav .b-nav-menu-link {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.fj-nav .b-nav-menu-link::before {
    content: "";
    width: 12px;
    height: 12px;
    margin: 5px 5px 0 0;
    background: url(//www.fujitsu.com/imgv5/common/icon/sprite2.png) -106px -21px no-repeat;
}
@media only screen and (max-width:1000px) {
    .fj-nav .b-nav-menu-link {
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
    .fj-nav .b-nav-menu-link::before {
        border: none;
        transform: none;
        position: static;
    }
}

/* lead */
.fj-lead-txt-a {
    margin-bottom: 15px;
    font-size: 3rem;
    line-height: 1.4;
}
@media only screen and (max-width:480px) {
    .fj-lead-txt-a {
        font-size: 2.4rem;
    }
}

/* box */
.fj-box-a {
    background: #fff;
    border: none;
}
.fj-box-a .fj-box-hdg,
.fj-box-c .fj-box-hdg{
    margin-bottom: 10px;
    font-size: 2.4rem;
    line-height: 1.4;
    font-weight: bold;
}
.fj-box-c {
    border-color: #a30b1a;
}

/* layout */
.fj-hex-list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 980px;
    margin: 0 auto;
    padding-bottom: 100px;
    background: url(/jp/imagesgig5/line_01_tcm102-5858456_tcm102-2750236-32.png) center bottom/contain no-repeat;
}
.fj-hex-item {
    width: 33.333%;
    position: relative;
}
.fj-hex-item::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    bottom: -40px;
    left: 50%;
    transform: translateX(-50%);
    border-style: solid;
    border-width: 26px 22px 0 22px;
    border-color: #87867e transparent transparent transparent;
}
.fj-hex-icon {
    margin: 0 auto;
    width: 140px;
    height: 240px;
    display: block;
    position: relative;
    background: #87867e;
    text-decoration: none;
    border-radius: 4px;
    transition: all .2s;
}
.fj-hex-icon > div {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    width: 100%;
    height: 100%;
    padding: 15px 0;
    position: relative;
    z-index: 1;
    line-height: 1.4;
    text-align: center;
    color: #fff;
}
.fj-hex-icon::before,
.fj-hex-icon::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #87867e;
    z-index: 0;
    border-radius: 4px;
    transition: all .2s;
}
.fj-hex-icon:before {
    transform: rotate(60deg);
}
.fj-hex-icon:after {
    transform: rotate(-60deg);
}
.fj-hex-icon:hover,
.fj-hex-icon:hover::before,
.fj-hex-icon:hover::after {
    background: #6f6e69;
}
.fj-hex-img {
    margin-bottom: 10px;
    -webkit-flex: none;
    -ms-flex: none;
    flex: none;
}
.fj-hex-img img {
    max-height: 100%;
}
.fj-hex-txt {
    margin: 0 -5vw 25px;
    font-size: 1.8rem;
}
.fj-hex-subtxt {
    margin: 0 -5vw;
}
@media only screen and (max-width:1000px) {
    .fj-hex-icon {
        width: 100px;
        height: 174px;
        border-radius: 2px;
    }
    .fj-hex-icon::before,
    .fj-hex-icon::after {
        border-radius: 2px;
    }
    .fj-hex-img {
        max-height: 30px;
        margin: 0 auto 5px;
    }
    .fj-hex-txt {
        margin-bottom: 15px;
    }
}
@media only screen and (min-width:481px) and (max-width:767px) {
    .fj-hex-icon {
        width: 14vw;
        height: 24vw;
        border-radius: 2px;
    }
    .fj-hex-icon::before,
    .fj-hex-icon::after {
        border-radius: 2px;
    }
    .fj-hex-item::after {
        bottom: -32px;
        border-width: 18px 14px 0 14px;
    }
    .fj-hex-img {
        max-height: 26px;
    }
    .fj-hex-txt {
        font-size: calc(18vw*100/767);
    }
    .fj-hex-subtxt {
        font-size: calc(16vw*100/767);
    }
}
@media only screen and (max-width:480px) {
    .fj-hex-list {
        padding-bottom: 40px;
        background: none;
    }
    .fj-hex-item {
        width: 100%;
    }
    .fj-hex-item + .fj-hex-item {
        margin-top: 20px;
    }
    .fj-hex-list > .fj-hex-item:not(:last-child)::after {
        content: none;
    }
    .fj-hex-txt {
        margin-bottom: 20px;
        font-size: 1.6rem;
    }
    .fj-hex-subtxt {
        font-size: 1.4rem;
    }
}

.fj-list-panel-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 980px;
    margin: 70px auto;
    padding: 20px;
    background: #e2e2e0;
    border-radius: 10px;
    font-weight: bold;
}
.fj-list-panel-a .b-list-icon-a-text {
    font-size: 2rem;
}
@media only screen and (max-width:767px) {
    .fj-list-panel-a {
        display: block;
        margin: 30px auto;
    }
}

.fj-marker {
    width: 2em;
    height: 2em;
    padding: .2em 0;
    margin-right: 10px;
    border-radius: 50%;
    background: #87867e;
    color: #fff;
    text-align: center;
}

.fj-hdg-marker {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 15px;
    font-size: 2.4rem;
}
.fj-hdg-marker .fj-marker {
    width: 1.6em;
    height: 1.6em;
    padding: 0;
    font-size: 2.2rem;
    -webkit-flex: none;
    -ms-flex: none;
    flex: none;
}
@media only screen and (max-width:480px) {
    .fj-hdg-marker {
        font-size: 2rem;
    }
    .fj-hdg-marker .fj-marker {
        font-size: 1.8rem;
    }
}

.fj-panel-a + .fj-panel-a {
    margin-top: 30px;
}
.fj-panel-a .panel-visual {
    width: 39%;
    overflow: hidden;
    position: relative;
}
.fj-panel-a .panel-visual::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.fj-panel-a .panel-visual img {
    width: auto;
    min-height: 100%;
    max-width: none;
    max-width: initial;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
.fj-panel-a .panel-content {
    width: 61%;
    padding: 60px 40px;
    color: #fff;
}
.fj-panel-a.diff-color-a .panel-visual::after,
.fj-panel-a.diff-color-a .panel-content {
    background: rgba(0,26,60,0.6);
}
.fj-panel-a.diff-color-b .panel-visual::after,
.fj-panel-a.diff-color-b .panel-content {
    background: rgba(29,25,59,0.6);
}
.fj-panel-a.diff-color-c .panel-visual::after,
.fj-panel-a.diff-color-c .panel-content {
    background: rgba(9,38,49,0.6);
}
.fj-panel-a .fj-panel-hdg-a {
    font-size: 3.2rem;
    line-height: 1.4;
}
@media only screen and (max-width:768px) {
    .fj-panel-a .panel-visual {
        width: 100%;
    }
    .fj-panel-a .panel-visual img {
        width: 100%;
        height: auto;
        min-height: none;
        min-height: initial;
        position: static;
        transform: none;
    }
    .fj-panel-a .panel-content {
        width: 100%;
        padding: 24px;
    }
    .fj-panel-a .fj-panel-hdg-a {
        font-size: 2.4rem;
    }
}

.fj-box-b {
    margin: 70px 0;
    padding: 70px 40px;
    background: #f1f1f1;
}
.fj-box-b .fj-box-inner {
    max-width: 980px;
    margin: 0 auto;
}
.fj-box-b .fj-box-inner > *:first-child {
    margin-top: 0 !important;
}
.fj-box-b .hdg-b {
    padding-bottom: 0;
    font-size: 3.2rem;
}
.fj-box-b .hdg-b::before {
    content: none;
}
@media only screen and (max-width:767px) {
    .fj-box-b {
        margin-top: 40px;
        padding: 30px 20px;
    }
}
@media only screen and (max-width:480px) {
    .fj-box-b .hdg-b {
        font-size: 2.4rem;
    }
}

.diff-bg-fj-banner {
    background: url(/jp/imagesgig5/bg_01_tcm102-5858428_tcm102-2750236-32.jpg) left top/cover no-repeat;
}

@media only screen and (max-width:767px) {
    .fj-sp-full {
        width: 100% !important;
    }
}

@media only screen and (min-width:768px) {
    .fj-center-pc {
        text-align: center;
    }
}