@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap");

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote::before, blockquote::after,
q::before, q::after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

input, select, button, textarea {
    margin: 0;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

select::-ms-expand {
    display: none;
}

*,
*::before,
*::after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html,
body {
    width: 100%;
    height: 100%;
    color: #172b41;
    background: transparent;
}

html {
    font-size: 62.5%;
}

body {
    font-size: 1.6rem;
    font-family: "HiraKakuPro-W3", "游ゴシック体", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1.8;
}

@media screen and (max-width: 960px) {
    body {
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 400px) {
    body {
        font-size: 1.2rem;
    }
}

a {
    color: #172b41;
    text-decoration: none;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

a:visited {
    color: #172b41;
}

a:hover {
    color: #172b41;
}

a:active {
    color: #172b41;
}

img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

@media screen and (min-width: 769px) {
    .pc-view {
        display: block !important;
    }

    .sp-view {
        display: none !important;
    }
}

@media screen and (max-width: 768px) {
    .pc-view {
        display: none !important;
    }

    .sp-view {
        display: block !important;
    }
}

.lower-page {
    padding: 80px 0 0;
}

@media screen and (max-width: 960px) {
    .lower-page {
        padding: 64px 0 0;
    }
}

.wrap {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
}

@media screen and (max-width: 960px) {
    .wrap {
        padding: 0 32px;
    }
}

@media screen and (max-width: 400px) {
    .wrap {
        padding: 0 16px;
    }
}

.container {
    min-width: 1160px;
}

@media screen and (max-width: 768px) {
    .container {
        min-width: 100%;
    }
}

.l-unit2 {
    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;
    width: 100%;
}

.l-unit2.left {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.l-unit2.mdl {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.l-unit3 {
    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;
    width: 100%;
}

.l-unit3.left {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.l-unit3.mdl {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.l-unit4 {
    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;
    width: 100%;
}

.l-unit4.left {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.l-unit4.mdl {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.l-unit2 .l-col {
    width: calc(100% / 2 - (80px * (2 - 1) / 2));
}

/*2020年3月　追加 start*/
.l-col__left {
    font-weight: bold;
    font-size: 25px;
}

/*2020年3月　追加　end*/


@media screen and (max-width: 960px) {
    .l-tb-unit2 .l-col {
        width: calc(100% / 2 - (60px * (2 - 1) / 2));
    }
}

@media screen and (max-width: 640px) {
    .l-sp-unit2 .l-col {
        width: calc(100% / 2 - (40px * (2 - 1) / 2));
    }
}

.l-unit3 .l-col {
    width: calc(100% / 3 - (80px * (3 - 1) / 3));
}

@media screen and (max-width: 960px) {
    .l-tb-unit3 .l-col {
        width: calc(100% / 3 - (60px * (3 - 1) / 3));
    }
}

@media screen and (max-width: 640px) {
    .l-sp-unit3 .l-col {
        width: calc(100% / 3 - (40px * (3 - 1) / 3));
    }
}

.l-unit4 .l-col {
    width: calc(100% / 4 - (80px * (4 - 1) / 4));
}

@media screen and (max-width: 960px) {
    .l-tb-unit4 .l-col {
        width: calc(100% / 4 - (60px * (4 - 1) / 4));
    }
}

@media screen and (max-width: 640px) {
    .l-sp-unit4 .l-col {
        width: calc(100% / 4 - (40px * (4 - 1) / 4));
    }
}

@media screen and (max-width: 960px) {
    .l-tb-unit1 .l-col {
        width: 100%;
    }
}

@media screen and (max-width: 960px) {
    .l-tb-unit1 .l-col:not(:last-child) {
        margin: 0 0 30px;
    }
}

@media screen and (max-width: 640px) {
    .l-tb-unit1 .l-col:not(:last-child) {
        margin: 0 0 20px;
    }
}

@media screen and (max-width: 768px) {
    .l-tb2-unit1 .l-col {
        width: 100%;
    }
}

@media screen and (max-width: 768px) {
    .l-tb2-unit1 .l-col:not(:last-child) {
        margin: 0 0 30px;
    }
}

@media screen and (max-width: 640px) {
    .l-sp-unit1 .l-col {
        width: 100%;
    }
}

@media screen and (max-width: 640px) {
    .l-sp-unit1 .l-col:not(:last-child) {
        margin: 0 0 20px;
    }
}

.cf::after {
    content: "";
    display: block;
    clear: both;
}

.pagetitle {
    position: absolute;
    top: 280px;
    z-index: 2;
}

@media screen and (max-width: 960px) {
    .pagetitle {
        top: auto;
        bottom: 50px;
    }
}

.pagetitle__main, .aiboxpagemaintitle {
    font-size: 2.4rem;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    .pagetitle__main, .aiboxpagemaintitle {
        font-size: 1.6rem;
    }
}

.pagetitle__sub, .aiboxpagetitle {
    margin: 0 0 16px;
    font-size: 8.0rem;
    line-height: 1;
    font-weight: bold;
    font-family: Roboto;
}

@media screen and (max-width: 960px) {
    .pagetitle__sub, .aiboxpagetitle {
        margin: 0 0 10px;
        font-size: 4.8rem;
    }
}

.front-page .headline {
    margin: 0 0 40px;
    text-align: center;
}

@media screen and (max-width: 960px) {
    .front-page .headline {
        margin: 0 0 32px;
    }
}

.front-page .headline__main {
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 1;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    .front-page .headline__main {
        font-size: 1.6rem;
    }
}

.front-page .headline__sub {
    margin: 0 0 30px;
    font-size: 4.8rem;
    font-weight: bold;
    line-height: 0.8;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 960px) {
    .front-page .headline__sub {
        margin: 0 0 10px;
        font-size: 3.6rem;
    }
}

.lower-page .headline {
    margin: 0 0 56px;
    text-align: center;
}

@media screen and (max-width: 960px) {
    .lower-page .headline {
        margin: 0 0 28px;
    }
}

.lower-page .headline.wht {
    color: #fff;
}

.lower-page .headline__main {
    font-size: 2.4rem;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    .lower-page .headline__main {
        font-size: 1.6rem;
    }
}

.lower-page .headline__sub {
    margin: 0 0 10px;
    line-height: 1.4;
    font-family: Roboto;
}

@media screen and (max-width: 960px) {
    .lower-page .headline__sub {
        margin: 0 0 5px;
        font-size: 1.2rem;
    }
}

.ttl2 {
    margin: 0 0 25px;
    padding: 20px;
    background: #ded9db;
    font-size: 2rem;
    line-height: 1;
    font-family: 'HiraKakuPro-W6';
}

.ttl3 {
    margin: 0 0 20px;
    padding: 4px 0 4px 16px;
    border-left: solid 4px #ded9db;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    .ttl3 {
        margin: 0 0 16px;
        padding: 4px 0 2px 14px;
    }
}

.ttl4 {
    margin: 0 0 10px;
    line-height: 1;
    font-family: 'HiraKakuPro-W6';
}

.lead {
    text-align: justify;
    line-height: 2;
}

.lead.center {
    text-align: center;
}

.lead.right {
    text-align: right;
}

.text {
    text-align: justify;
}

@media screen and (max-width: 960px) {
    .text {
        line-height: 2;
    }
}

.text.center {
    text-align: center;
}

.text.right {
    text-align: right;
}

.text.bold {
    font-weight: bold;
}

.fc-tra {
    color: transparent;
}

.fc-red {
    color: #da2442;
}

.fc-blu {
    color: #597098;
}

.fc-blk {
    color: #333;
}

.fc-wht {
    color: #fff;
}

.fc-l-gry {
    color: #cfd9e9;
}

.fc-gry {
    color: #ded9db;
}

.fc-d-gry {
    color: #8b8486;
}

.note {
    margin: 0 0 0 1em;
    font-size: 1.2rem;
    text-indent: -1em;
}

.note:before {
    content: "※";
}

br.pc {
    display: block;
}

@media screen and (max-width: 960px) {
    br.pc {
        display: none;
    }
}

br.laptop {
    display: none;
}

@media screen and (max-width: 1280px) {
    br.laptop {
        display: block;
    }
}

br.tb {
    display: none;
}

@media screen and (max-width: 960px) {
    br.tb {
        display: block;
    }
}

br.tb2 {
    display: none;
}

@media screen and (max-width: 768px) {
    br.tb2 {
        display: block;
    }
}

br.sp {
    display: none;
}

@media screen and (max-width: 640px) {
    br.sp {
        display: block;
    }
}

.indent {
    margin-left: 1em;
}

.mark-list__item {
    position: relative;
    padding: 0 0 0 25px;
}

.mark-list__item:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 16px;
    height: 16px;
    background: url("../img/icon/mark.svg.html") left/cover no-repeat;
}

.mark-list__item.check:before {
    background-image: url("../img/icon/check.svg.html");
}

.mark-list__item.arrow:before {
    background-image: url("../img/icon/arrow.svg");
}

.num-list {
    counter-reset: list-num;
    text-align: justify;
}

.num-list__item:before {
    counter-increment: list-num;
    content: "(" counter(list-num) ")";
}

.note-list__item {
    margin: 0 0 0 1em;
    font-size: 1.2rem;
    text-indent: -1em;
}

.note-list__item:before {
    content: "※";
}

.desc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    padding: 34px 44px;
    background: #fff;
    border: solid 2px #cfd9e9;
}

@media screen and (max-width: 1280px) {
    .desc {
        padding: 34px 24px;
    }
}

@media screen and (max-width: 960px) {
    .desc {
        display: block;
        padding: 50px 24px;
    }
}

.desc .desc-ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 210px;
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 1.2;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    .desc .desc-ttl {
        width: 180px;
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 960px) {
    .desc .desc-ttl {
        width: 100%;
        margin: 0 0 20px;
        text-align: center;
    }
}

.desc .desc-ttl span {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 120px;
    height: 32px;
    background: #cfd9e9;
    color: #fff;
    font-size: 1.2rem;
    text-align: center;
    line-height: 32px;
}

.desc .desc-dtl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: calc(100% - 240px);
}

@media screen and (max-width: 1280px) {
    .desc .desc-dtl {
        width: calc(100% - 200px);
    }
}

@media screen and (max-width: 960px) {
    .desc .desc-dtl {
        display: block;
        width: 100%;
    }
}

.desc .desc-dtl__text {
    width: calc(100% - 120px);
    letter-spacing: .05em;
}

@media screen and (max-width: 1280px) {
    .desc .desc-dtl__text {
        letter-spacing: 0;
    }
}

@media screen and (max-width: 960px) {
    .desc .desc-dtl__text {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 100%;
        margin: 0 0 30px;
    }
}

.desc .desc-dtl__more {
    position: absolute;
    bottom: 24px;
    right: 32px;
}

.desc .desc-dtl__more a {
    display: block;
    position: relative;
    padding: 0 0 0 32px;
    font-size: 1.2rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

.desc .desc-dtl__more a .external {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background: #172b41;
    border: solid 1px #172b41;
    border-radius: 12px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: background .3s ease-out;
    transition: background .3s ease-out;
}

.desc .desc-dtl__more a .external .ico-external {
    width: 8px;
    height: 7px;
    fill: #fff;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

.desc .desc-dtl__more a:hover {
    text-decoration: underline;
}

.desc .desc-dtl__more a:hover .external {
    background: none;
}

.desc .desc-dtl__more a:hover .external .ico-external {
    fill: #172b41;
}

/*2020年3月追加 start */

.full-content__inner {
    flex-wrap: wrap;
    text-align: center;
    width: 90%;
    height: auto;
}


/*2020年3月追加 end*/

.btn a {
    display: block;
    width: 100%;
    max-width: 340px;
    height: 64px;
    margin: 0 auto;
    background-color: #172b41;
    border-radius: 32px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    line-height: 64px;
    font-family: "Roboto", sans-serif;
}


/*2020年3月追加 start */
.full-content__inner--top {
    margin: 60px auto;
}


.full-content__inner__btn {
    margin: 10px 10px;
    width: 30%;
    display: inline-block;
}

.full-content__inner__btn a {
    display: block;
    width: 100%;
    max-width: 340px;
    height: 64px;
    margin: 0 auto;
    background-color: #172b41;
    border-radius: 32px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    line-height: 64px;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 610px) {
    .full-content__inner__btn {
        width: 100%;
    }
}

/*2020年3月追加 end*/

@media screen and (max-width: 960px) {
    .btn a {
        max-width: 240px;
    }
}

@media screen and (max-width: 400px) {
    .btn a {
        height: 54px;
        line-height: 54px;
    }
}

.btn a:hover {
    opacity: 1;
    background-color: #ded9db;
    color: #172b41;
}

.btn.eng a {
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

.btn.left a {
    margin: 0;
}

.btn.two {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.btn.two a {
    margin: 0 16px;
}

.btn.tra a {
    background-color: transparent;
}

.btn.red a {
    background-color: #da2442;
}

.btn.blu a {
    background-color: #597098;
}

.btn.blk a {
    background-color: #333;
}

.btn.wht a {
    background-color: #fff;
}

.btn.l-gry a {
    background-color: #cfd9e9;
}

.btn.gry a {
    background-color: #ded9db;
}

.btn.d-gry a {
    background-color: #8b8486;
}

.more a {
    position: relative;
    padding: 0 0 0 34px;
    font-size: 1.2rem;
    font-family: "Roboto", sans-serif;
}

.more a .arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background: #131f2d;
    border: solid 1px #131f2d;
    border-radius: 12px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: background .3s ease-out;
    transition: background .3s ease-out;
}

.more a .arrow .ico-arrow {
    width: 5px;
    height: 8px;
    fill: #fff;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

.more a:hover {
    text-decoration: underline;
}

.more a:hover .arrow {
    background: #fff;
}

.more a:hover .arrow .ico-arrow {
    fill: #131f2d;
}

.more--wht a {
    color: #fff;
}

.more--wht a .arrow {
    background: #ded9db;
    border: solid 1px #ded9db;
}

.more--wht a .arrow .ico-arrow {
    fill: #131f2d;
}

.more--wht a:hover .arrow {
    background: #131f2d;
}

.more--wht a:hover .arrow .ico-arrow {
    fill: #fff;
}

.pagetop {
    position: fixed;
    bottom: 40px;
    right: 24px;
    z-index: 10;
    width: 64px;
    height: 64px;
    background: #1c3959;
    border-radius: 32px;
    -webkit-filter: drop-shadow(0px 8px 4px rgba(0, 0, 0, 0.2));
    filter: drop-shadow(0px 8px 4px rgba(0, 0, 0, 0.2));
    text-align: center;
    -webkit-transition: background .3s ease-out;
    transition: background .3s ease-out;
    cursor: pointer;
}

@media screen and (max-width: 960px) {
    .pagetop {
        bottom: 24px;
    }
}

@media screen and (max-width: 400px) {
    .pagetop {
        bottom: 16px;
        right: 16px;
        width: 48px;
        height: 48px;
    }
}

.pagetop:hover {
    background: #ded9db;
}

.pagetop .ico-pagetop {
    width: 16px;
    height: 10px;
    margin: 27px auto;
    fill: #ded9db;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

@media screen and (max-width: 400px) {
    .pagetop .ico-pagetop {
        margin: 19px auto;
    }
}

.pagetop:hover .ico-pagetop {
    fill: #1c3959;
}

@media screen and (max-width: 960px) {
    .tab-inner {
        overflow-x: scroll;
        -ms-overflow-style: none;
        -webkit-overflow-scrolling: touch;
        padding: 0;
    }
}

.tab-inner::-webkit-scrollbar {
    display: none;
}

.lower-page .tab-inner {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
}

@media screen and (max-width: 960px) {
    .lower-page .tab-inner {
        padding: 0;
    }
}

.tab-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 960px) {
    .tab-list {
        min-width: 580px;
    }
}

.tab-list__item {
    position: relative;
    width: 25%;
    border-bottom: solid 1px #cfd9e9;
    color: #597098;
    text-align: center;
    cursor: pointer;
}

.tab-list__item:not(:last-child)::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: -1px;
    height: 16px;
    border-right: solid 1px #cfd9e9;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.tab-list__item.current {
    border: solid 1px #cfd9e9;
    border-bottom: none;
    color: #172b41;
}

@media screen and (max-width: 960px) {
    .tab-list__item.current:first-child {
        border-left: none;
    }
}

@media screen and (max-width: 960px) {
    .tab-list__item.current:last-child {
        border-right: none;
    }
}

.tab-list__item.current::after {
    display: none;
}

.tab-list__item.no-tab {
    cursor: auto;
    pointer-events: none;
}

.tab-list__item span,
.tab-list__item a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 20px 0;
}

@media screen and (max-width: 960px) {
    .tab-list__item span,
    .tab-list__item a {
        padding: 14px 0;
    }
}

.tab-content__item {
    display: none;
}

.tab-content__item.show {
    display: block;
}

.notice {
    width: 100%;
    max-width: 300px;
    height: 48px;
    border: solid 1px #cfd9e9;
    border-radius: 25px;
    color: #597098;
    font-size: 1.4rem;
    text-align: center;
    line-height: 48px;
    font-family: 'HiraKakuPro-W6';
}

.notice.center {
    margin: 0 auto;
}

svg[class^="ico-"] {
    display: inline-block;
    fill: #333;
    vertical-align: middle;
}

svg[class^="ico-"].tiny {
    width: 15px;
    height: 15px;
}

svg[class^="ico-"].small {
    width: 20px;
    height: 20px;
}

svg[class^="ico-"].medium {
    width: 25px;
    height: 25px;
}

svg[class^="ico-"].large {
    width: 30px;
    height: 30px;
}

svg[class^="ico-"].huge {
    width: 35px;
    height: 35px;
}

.fill-tra {
    fill: transparent;
}

.fill-red {
    fill: #da2442;
}

.fill-blu {
    fill: #597098;
}

.fill-blk {
    fill: #333;
}

.fill-wht {
    fill: #fff;
}

.fill-l-gry {
    fill: #cfd9e9;
}

.fill-gry {
    fill: #ded9db;
}

.fill-d-gry {
    fill: #8b8486;
}

.ico-arrow {
    width: 5px;
    height: 8px;
}

.ico-arrow.reverse {
    -webkit-transform: rotateZ(180deg);
    transform: rotateZ(180deg);
}

.mb-xs {
    margin-bottom: 10px;
}

@media screen and (max-width: 960px) {
    .mb-xs {
        margin-bottom: 7.5px;
    }
}

.mb-s {
    margin-bottom: 20px;
}

@media screen and (max-width: 960px) {
    .mb-s {
        margin-bottom: 15px;
    }
}

.mb-m {
    margin-bottom: 40px;
}

@media screen and (max-width: 960px) {
    .mb-m {
        margin-bottom: 30px;
    }
}

.mb-l {
    margin-bottom: 60px;
}

@media screen and (max-width: 960px) {
    .mb-l {
        margin-bottom: 45px;
    }
}

.mb-xl {
    margin-bottom: 80px;
}

@media screen and (max-width: 960px) {
    .mb-xl {
        margin-bottom: 60px;
    }
}

/*2020年3月　追加 start*/
/*
.mb-xxl {
  margin-bottom: 120px;
}

@media screen and (max-width: 960px) {
  .mb-xxl {
    margin-bottom: 90px;
  }
}

*/
/*2020年3月　追加　end*/

.line-btm {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-width: 0 0 1px 0;
    border-color: #ded9db;
    border-style: solid;
}

.line-dot {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-width: 0 0 1px 0;
    border-color: #ded9db;
    border-style: dotted;
}

.line-mark {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(0%, #ded9db));
    background: linear-gradient(transparent 60%, #ded9db 0%);
}


/*2020年3月　削除 start*/

.lower-page .hero {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 480px;
    margin: 0 0 80px;
}

@media screen and (max-width: 960px) {
    .lower-page .hero {
        margin: 0 0 40px;
        height: auto;
    }
}


.lower-page .hero::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: calc(50% - 600px);
    width: calc(50% + 600px);
    height: 100%;
    background: url("../img/common/hero-bg.jpg") top left/cover no-repeat;
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    .lower-page .hero::before {
        background-image: url("../img/common/hero-bg@2x.jpg");
    }
}

@media screen and (max-width: 1280px) {
    .lower-page .hero::before {
        left: 40px;
    }
}

@media screen and (max-width: 960px) {
    .lower-page .hero::before {
        left: 0;
        width: 100%;
        background-image: url("../img/common/sp-hero-bg.jpg");
    }
}

@media screen and (max-width: 960px) and (-webkit-min-device-pixel-ratio: 2), screen and (max-width: 960px) and (min-resolution: 2dppx) {
    .lower-page .hero::before {
        background-image: url("../img/common/sp-hero-bg@2x.jpg");
    }
}

/*2020年3月　削除　end*/

/*2020年3月　修正　start*/
#about .hero-inner,
#about-english .hero-inner {
    margin-top: 50px;
}

/*2020年3月　修正　end*/
.lower-page .hero .hero-inner {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
}


@media screen and (max-width: 960px) {
    .lower-page .hero .hero-inner {
        padding: 0 32px 80%;
    }
}

@media screen and (max-width: 400px) {
    .lower-page .hero .hero-inner {
        padding: 0 16px 100%;
    }
}

.lower-page #concept .hero::before {
    background-image: url("../img/concept/hero-bg.jpg");
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    .lower-page #concept .hero::before {
        background-image: url("../img/concept/hero-bg@2x.jpg");
    }
}

@media screen and (max-width: 960px) {
    .lower-page #concept .hero::before {
        background-image: url("../img/concept/sp-hero-bg.jpg");
    }
}

@media screen and (max-width: 960px) and (-webkit-min-device-pixel-ratio: 2), screen and (max-width: 960px) and (min-resolution: 2dppx) {
    .lower-page #concept .hero::before {
        background-image: url("../img/concept/sp-hero-bg@2x.jpg");
    }
}

.lower-page #evidence .hero::before {
    background-image: url("../img/evidence/hero-bg.jpg");
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    .lower-page #evidence .hero::before {
        background-image: url("../img/evidence/hero-bg@2x.jpg");
    }
}

@media screen and (max-width: 960px) {
    .lower-page #evidence .hero::before {
        background-image: url("../img/evidence/sp-hero-bg.jpg");
    }
}

@media screen and (max-width: 960px) and (-webkit-min-device-pixel-ratio: 2), screen and (max-width: 960px) and (min-resolution: 2dppx) {
    .lower-page #evidence .hero::before {
        background-image: url("../img/evidence/sp-hero-bg@2x.jpg");
    }
}

.lower-page #career .hero::before,
.lower-page #career-english .hero::before,
.lower-page #ai-deploy-engineer .hero::before,
.lower-page #product-engineer .hero::before,
.lower-page #sales .hero::before {
    background-image: url("../img/career/hero-bg.jpg");
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    .lower-page #career .hero::before,
    .lower-page #career-english .hero::before,
    .lower-page #ai-deploy-engineer .hero::before,
    .lower-page #product-engineer .hero::before,
    .lower-page #sales .hero::before {
        background-image: url("../img/career/hero-bg@2x.jpg");
    }
}

@media screen and (max-width: 960px) {
    .lower-page #career .hero::before,
    .lower-page #career-english .hero::before,
    .lower-page #ai-deploy-engineer .hero::before,
    .lower-page #product-engineer .hero::before,
    .lower-page #sales .hero::before {
        background-image: url("../img/career/sp-hero-bg.jpg");
    }
}

@media screen and (max-width: 960px) and (-webkit-min-device-pixel-ratio: 2), screen and (max-width: 960px) and (min-resolution: 2dppx) {
    .lower-page #career .hero::before,
    .lower-page #career-english .hero::before,
    .lower-page #ai-deploy-engineer .hero::before,
    .lower-page #product-engineer .hero::before,
    .lower-page #sales .hero::before {
        background-image: url("../img/career/sp-hero-bg@2x.jpg");
    }
}

.lower-page #archive .hero::before,
.lower-page #single .hero::before {
    background-image: url("../img/news/hero-bg.jpg");
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    .lower-page #archive .hero::before,
    .lower-page #single .hero::before {
        background-image: url("../img/news/hero-bg@2x.jpg");
    }
}

@media screen and (max-width: 960px) {
    .lower-page #archive .hero::before,
    .lower-page #single .hero::before {
        background-image: url("../img/news/sp-hero-bg.jpg");
    }
}

@media screen and (max-width: 960px) and (-webkit-min-device-pixel-ratio: 2), screen and (max-width: 960px) and (min-resolution: 2dppx) {
    .lower-page #archive .hero::before,
    .lower-page #single .hero::before {
        background-image: url("../img/news/sp-hero-bg@2x.jpg");
    }
}

.lower-page #contact .hero::before {
    background-image: url("../img/contact/hero-bg.jpg");
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    .lower-page #contact .hero::before {
        background-image: url("../img/contact/hero-bg@2x.jpg");
    }
}

@media screen and (max-width: 960px) {
    .lower-page #contact .hero::before {
        background-image: url("../img/contact/sp-hero-bg.jpg");
    }
}

@media screen and (max-width: 960px) and (-webkit-min-device-pixel-ratio: 2), screen and (max-width: 960px) and (min-resolution: 2dppx) {
    .lower-page #contact .hero::before {
        background-image: url("../img/contact/sp-hero-bg@2x.jpg");
    }
}

.pan {
    position: absolute;
    top: 30px;
    z-index: 9;
    padding: 0 32px 0 0;
    font-size: 1.0rem;
}

@media screen and (max-width: 960px) {
    .pan {
        top: 16px;
    }
}

@media screen and (max-width: 400px) {
    .pan {
        padding: 0 16px 0 0;
    }
}

.pan__item {
    display: inline;
}

.pan__item:not(:last-child)::after {
    content: " / ";
}

.pan__item a {
    text-decoration: underline;
    font-family: 'HiraKakuPro-W6';
}

.pan__item a:hover {
    text-decoration: none;
}

/* Slider */
.slick-slider {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:before, .slick-track:after {
    content: "";
    display: table;
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none;
}

[dir="rtl"] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

.slick-dots {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 16px;
}

.slick-dots li {
    width: 16px;
    margin: 0 4px;
}

.slick-dots li button {
    display: block;
    width: 8px;
    height: 8px;
    margin: 0;
    border: solid 1px #cfd9e9;
    border-radius: 50%;
    font-size: 0;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
    cursor: pointer;
}

.slick-dots li.slick-active button {
    width: 16px;
    height: 16px;
    background: #172b41;
    border: solid 1px #172b41;
}

/*
* iziModal | v1.6.0
* http://izimodal.marcelodolce.com
* by Marcelo Dolce.
*/
.iziModal {
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
    -webkit-transition: margin-top 0.3s ease, height 0.3s ease;
    transition: margin-top 0.3s ease, height 0.3s ease;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

@media screen and (max-width: 640px) {
    .iziModal {
        z-index: 9999 !important;
        margin: 60px 0 auto;
    }
}

.iziModal * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}

.iziModal::after {
    content: '';
    width: 100%;
    height: 0px;
    opacity: 0;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 1;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.35)));
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.35) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#59000000', GradientType=0);
    -webkit-transition: height 0.3s ease-in-out, opacity 0.3s ease-in-out;
    transition: height 0.3s ease-in-out, opacity 0.3s ease-in-out;
    pointer-events: none;
}

.iziModal.hasShadow::after {
    height: 30px;
    opacity: 1;
}

.iziModal .iziModal-progressbar {
    position: absolute;
    left: 0;
    top: 0px;
    width: 100%;
    z-index: 1;
}

.iziModal .iziModal-progressbar > div {
    height: 2px;
    width: 100%;
}

.iziModal .iziModal-header {
    background: #88A0B9;
    padding: 14px 18px 15px 18px;
    -webkit-box-shadow: inset 0 -10px 15px -12px rgba(0, 0, 0, 0.3), 0 0 0px #555;
    box-shadow: inset 0 -10px 15px -12px rgba(0, 0, 0, 0.3), 0 0 0px #555;
    overflow: hidden;
    position: relative;
    z-index: 10;
}

.iziModal .iziModal-header-icon {
    font-size: 40px;
    color: rgba(255, 255, 255, 0.5);
    padding: 0 15px 0 0;
    margin: 0;
    float: left;
}

.iziModal .iziModal-header-title {
    color: #FFF;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.3;
}

.iziModal .iziModal-header-subtitle {
    color: rgba(255, 255, 255, 0.6);
    font-size: 12px;
    line-height: 1.45;
}

.iziModal .iziModal-header-title, .iziModal .iziModal-header-subtitle {
    display: block;
    margin: 0;
    padding: 0;
    font-family: 'Lato', Arial;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: left;
}

.iziModal .iziModal-header-buttons {
    position: absolute;
    top: 50%;
    right: 10px;
    margin: -17px 0 0 0;
}

.iziModal .iziModal-button {
    display: block;
    float: right;
    z-index: 2;
    outline: none;
    height: 34px;
    width: 34px;
    border: 0;
    padding: 0;
    margin: 0;
    opacity: 0.3;
    border-radius: 50%;
    -webkit-transition: opacity 0.5s ease, -webkit-transform 0.5s cubic-bezier(0.16, 0.81, 0.32, 1);
    transition: opacity 0.5s ease, -webkit-transform 0.5s cubic-bezier(0.16, 0.81, 0.32, 1);
    transition: transform 0.5s cubic-bezier(0.16, 0.81, 0.32, 1), opacity 0.5s ease;
    transition: transform 0.5s cubic-bezier(0.16, 0.81, 0.32, 1), opacity 0.5s ease, -webkit-transform 0.5s cubic-bezier(0.16, 0.81, 0.32, 1);
    background-size: 67% !important;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-tap-highlight-color: transparent;
    /* For some Androids */
}

.iziModal .iziModal-button-close {
    background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTMyIDc5LjE1OTI4NCwgMjAxNi8wNC8xOS0xMzoxMzo0MCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUuNSAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODZCQkIzQ0I0RTg0MTFFNjlBODI4QTFBRTRBMkFCMDQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODZCQkIzQ0M0RTg0MTFFNjlBODI4QTFBRTRBMkFCMDQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4NkJCQjNDOTRFODQxMUU2OUE4MjhBMUFFNEEyQUIwNCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4NkJCQjNDQTRFODQxMUU2OUE4MjhBMUFFNEEyQUIwNCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PsgTJLcAAALJSURBVHja3JnLS1VBHMfvQ7g9dBXRRrwEFRciAhMi1JRW1aIHVEIYEkW0iVpUhOD/ICK6cFMgSbUpC6VFkQa9NtpjkauriRY9Noa3pHT8/mIODMM5Or85o87pC5/NPf5mvmc8M7+Z36SFEKkY2gj2gUawF2wHW8A6+fwv+A6KYAQMg+dg2rbDtKXhGnAaHJIms4zYz9J4HxgAf1g9k2EGteAhWBBuNApaQNrUg6nRTaAbzIuV0RCocWW4DoyJlVcJXI5ruFk2tJqi/2TWxvA5sXbqA2Ucw01i7dVjargazAo/dE33p6/DlAheg50pP0SJpwG8CH7IaH/Q5pFZUhnoArkwwwVwJeWfdoMLYYZvqG+yTGo9CerAoIWBT+A4qAdPDWOugwo1NVcxJtpFZRLkwH3GJCqCghJfxVjnz1JMMMKnwAbGRAg0B5rAA4O4CblZ+qj8tkBjZthvSzDCtFIMM0ZpQhslk5Eej4jpZ/T7G+ygwG1ghrk+jjNMFy1eMPJzpOAzlou6iWmXZkm91EBHjEwUZXoQTDk2SxqhRh7HTJ9hpstB3rFZ0ldq6J2DnB9m2rXZfxOPlrX1DrJRXiaBXSHPaMHvB0cd9JPLpBImMvzLQTuUFA6A9yHPfoIjhsllOc1l5N4grtmDWgYrl5+JTUZcSjNkeMyxWdpA3ZN72IJj01OJTByJS82J2/wQVxmB5y1HK8x0JWMf/kzdD98FJcY5S51gdwyTQl6eUAraspo27PeWXgy8afim0+CELAwOWHyH9EkdkyWwJ4Yxk6BCP+bTm48anutWW5dAp34IpbW03UOzb0FPVEHbx0LKfvAyqpAyKw97JU8Mt6pml6rAJ6oY6Eu5NfvfF7QTeWWQyEsZr6694lwsNoPD8mKRo29gCNwGj7gXi7aGA1EBcY+8vq0GW8FmJb3Pgx9gEnwAr8Ab8MW2w0UBBgAVyyyaohV7ewAAAABJRU5ErkJggg==") no-repeat 50% 50%;
}

.iziModal .iziModal-button-fullscreen {
    background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTMyIDc5LjE1OTI4NCwgMjAxNi8wNC8xOS0xMzoxMzo0MCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUuNSAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RTBBOUI4RUM0RTg0MTFFNjk0NTY4NUNFRkZFNEFEQzIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RTBBOUI4RUQ0RTg0MTFFNjk0NTY4NUNFRkZFNEFEQzIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpFMEE5QjhFQTRFODQxMUU2OTQ1Njg1Q0VGRkU0QURDMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpFMEE5QjhFQjRFODQxMUU2OTQ1Njg1Q0VGRkU0QURDMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PrQO6gAAAANmSURBVHjazJlbSBRRGMd3x92i0ForRRMiKiUoX4ouiFlJkRVBDxW9GJERwUasvdRT9FD00osRQtAFqegGBUHRBY0uaCVKEkSRpVR0tSwrQtp1+p/4Bk7D7M45M/Ot/uGHu+Psmf+c+eY753wnbJpmyIfGgvmgiv6WgkKQBwzwE3wBr0AnuAta6ZgnhT0aFuY2ghoyGdH4bS+4Dc6CZjCkdWVhWIPF4JoZnB6CDToeVE8sBidNPt0E5UEZrgG9Jr8GwHa/huMgaWZXDSDsxfBuc/jUBAwdw3Fz+NWoang5SJkjQwm7P3seLqQEX2LLfgfBdZcMORMcBqNDwekPqASP0uXhpjR3Ok0x/fUw9HIHGGVdw5DuRtzJpgxDsJui2qOWmuaAOuuLbHivz4YLwLgQj/aAXNmwuItlHhtbA7pAG5jEZHgKWCcbrhUTIY+NPQVjqFFObbYMi/hc6aOhl2AJ9TKnFoIyYXgemKEzJQXVVkyR3oFVzKZFuqw2qHdyFPKhrHPgMoWC3fRjRtNVVg+7SR5IiqmXxUt60cG0CK/vTIZniZVCmcKJF0C3ZNjKBqvJ9Hrwm46tsN1EkCoRQ/M3fBjvs6GrYAvdwHEfGcd1qBaGkwoxrKI+xjz83yJ0iLFHApd46X4xX+M+WECh4lepCNUIcpnMijrEWtAvTRHrbOd8FZNG8uA2Nf0hpmwtjBPwpQ5T0GPS/+tBAZhIq+b3Lu09EyHRwRgO+0C+7dhWcII+PwCf6Sk/Aa9d2vtn+A7nyASugJiD6YSDQcOlvVbxiCaAN8xrs3sgprBiac/QhlhnzjUo6JuZM0UlDS5FPtoQIdNlPYJTWUihFaDex+9Pg6T1KHJAJ2NI7ASllA28hEQ/KJIXoSlwgKlnh+jFe+GjLtwIPtjfyktUt+UaUZWqvw7H3oJD1peI7eQdoF1xWa+zQikHH13OmwqmOxxP0EiZtgK/DRwNuIcHwSeXc2K01WAPhbhKBb5hBNTVbskVH7fqpZGhbJUNtYF83fqwQSXPbOsGjb6etwx2gcEsmT3iFAZeNmUqaMeHSz2qu0k6W15Rqsx3B2i0D+xXGAHTFrRVlEeFuVoqH+ku6VNUbDkPzlAtg30nVK66i8rRIjAbTKaSQVQyN0DD6nOqcLZQld9TLfmvAAMAeMcvp3eCFqQAAAAASUVORK5CYII=") no-repeat 50% 50%;
}

.iziModal.isFullscreen .iziModal-button-fullscreen {
    background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTMyIDc5LjE1OTI4NCwgMjAxNi8wNC8xOS0xMzoxMzo0MCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUuNSAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkFFRTU5NDA0RTg1MTFFNjk0NEZFQzBGMkVBMDYyRDkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkFFRTU5NDE0RTg1MTFFNjk0NEZFQzBGMkVBMDYyRDkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoyQUVFNTkzRTRFODUxMUU2OTQ0RkVDMEYyRUEwNjJEOSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoyQUVFNTkzRjRFODUxMUU2OTQ0RkVDMEYyRUEwNjJEOSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PuDFfX8AAANASURBVHjazJlZSBVRGMfHcWlB0xZM68GKukQLYaGkmEUR2EsvRfQS+BSJPUQE+lTR8hqIZY8hFS0ERVCRoW3gpUApghYpszLTVnCB3O70/+K7MAwzc78Z58z4hx8XzpzvzJ+Zc+d85ztphmFoU9BsUAoq+XcFyAc5QAfD4BfoBp3gCWjnNl9K82mYzO0FVWwyw0NsD3gIroBWkPB0ZzLsgc3grhGcnoE9XjxIOxaCC4Y6tYC1QRmuAj2Geg2CA1M1XAsmjHDVANL8GK4zolMz0L0YrjWiV5PU8HYw6TBIf8imD6UynA96HYKPg3mgMUTDY6DUzXCzQ+AxSz+r6QEQZz4HbLoDZNkZrnAIoOlRZjN1Gk3XS0zty/gTFaRq7Ay3uAR8BcU2ps/z9QJTWw74HrDhTyDbbHg9SKQI+sb9rKa3mV8ZmAt+KJjP1TS+zinFPkqEUqQdBeAOKLa0UwIzpqlXtcYpIKWIO4RBZPoRKNfC10YQI8MlYLkwaAB8ABsiMDwDbKU8dgtIFwRMgJ3guRadKpNPWBMa7tOi1WoyHJPuTsC4oN+IQsOLM3gPJlEWqOE/neMGBqwDeYoMz6G8c0I4h6eFyHBC8A2eVoaH8JutaPwuUA/+uvSht1sHKgTjTWZwjUCVYdrK3xT0iwkND+lc5FClUQ9fINHCRYY7FBrWPSz5Er2lAR9H9P+hpfYGl64OCmPadQ7ojcDwOJetysBMQX/6mrWS4d+cIoYtMnAEnBT2fwVeJufYxZBMFoKFlrajQtOX/uczvEtIB50Kdgn1lt3JGdANltjsXE64jPMnuQ1LPuFJcFrBE11gzQXAUnAPFNk86esO4zSBfmu5lVa9toCf8DC4Ba6C22DEdO01KDLdP5fLr1Z94X2ibV1ilWVQ1XrDpvPAU4c+u1KVqvaHXI7q43ltp3PSYmDDNCgGPrCUD1wN6y5lqzAUN89baX1Y55Jn2LrPRUffRwaHwWhIZs/aTQM/hzLlDp+coPRReprk5cgrkyvz7wM0+hOcAvOlPvwcLNIp526ux1H5aJbHeFpVX4Br4LLXWoffk9CkVnLlaBNYAxaBXJBpMjfIy+o7EAdtfIyb8HPDfwIMAM1WPs8F9tcxAAAAAElFTkSuQmCC") no-repeat 50% 50%;
}

.iziModal .iziModal-button-close:hover {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.iziModal .iziModal-button:hover {
    opacity: 0.8;
}

.iziModal .iziModal-header.iziModal-noSubtitle {
    height: auto;
    padding: 10px 15px 12px 15px;
}

.iziModal .iziModal-header.iziModal-noSubtitle .iziModal-header-icon {
    font-size: 23px;
    padding-right: 13px;
}

.iziModal .iziModal-header.iziModal-noSubtitle .iziModal-header-title {
    font-size: 15px;
    margin: 3px 0 0 0;
    font-weight: 400;
}

.iziModal .iziModal-header.iziModal-noSubtitle .iziModal-header-buttons {
    right: 6px;
    margin: -16px 0 0 0;
}

.iziModal .iziModal-header.iziModal-noSubtitle .iziModal-button {
    height: 30px;
    width: 30px;
}

/* RTL */
.iziModal-rtl {
    direction: rtl;
}

.iziModal-rtl .iziModal-header {
    padding: 14px 18px 15px 40px;
}

.iziModal-rtl .iziModal-header-icon {
    float: right;
    padding: 0 0 0 15px;
}

.iziModal-rtl .iziModal-header-buttons {
    right: initial;
    left: 10px;
}

.iziModal-rtl .iziModal-button {
    float: left;
}

.iziModal-rtl .iziModal-header-title, .iziModal-rtl .iziModal-header-subtitle {
    text-align: right;
    font-family: Tahoma, 'Lato', Arial;
    font-weight: 500;
}

.iziModal-rtl .iziModal-header.iziModal-noSubtitle {
    padding: 10px 15px 12px 40px;
}

.iziModal-rtl .iziModal-header.iziModal-noSubtitle .iziModal-header-icon {
    padding: 0 0 0 13px;
}

/* LIGHT THEME */
.iziModal.iziModal-light .iziModal-header-icon {
    color: rgba(0, 0, 0, 0.5);
}

.iziModal.iziModal-light .iziModal-header-title {
    color: #000;
}

.iziModal.iziModal-light .iziModal-header-subtitle {
    color: rgba(0, 0, 0, 0.6);
}

.iziModal.iziModal-light .iziModal-button-close {
    background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA4JpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoyQTU1RUZDNzRFODQxMUU2ODAxOEUwQzg0QjBDQjI3OSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo1NEM4MTU1MEI4QUExMUU2QjNGOEVBMjg4OTRBRTg2NyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0RTNFNENDMkI4QUExMUU2QjNGOEVBMjg4OTRBRTg2NyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjZjYzMwMmE1LWFlMjEtNDI3ZS1hMmE4LTJlYjhlMmZlY2E3NSIgc3RSZWY6ZG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjdmYmU3NGE3LTAxMDUtMTE3YS1hYmM3LWEzNWNkOWU1Yzc4NyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Po24QssAAANtSURBVHja3JlJaBRBFIa7ZxyTSXADHUkikuAawZNLEOOGGrwJQYko8R4RBQ+OICoqghJQUVwPYjzFY0QUBQU1kogoKO6CG0pcIwbiNibj/8JraNvu6Xo9NTOtP3xzSKe6/65+Ve9VlWlkp2IwGUwFE0E5GA4G8/U+0APegWfgHrgPuq0bpNNp0QPNgEYngHlgGpuMCNp2s+kr4BYM/8ql4WqwHEzP4mXteg7awOW0YlerPnQIaARLNBl1ikLlBDw/1WF4ClgHKozc6idogekz2RheANbaBlE+dB4chfF+qeHF3LOF0FWwF6b7nBe8RvecApolzQVr3C64GR4H1huFV51pmvV+hikRbABFRji0GqarMxluAGON8CgKmmA65mZ4DFhqhE9VPP//ZXgZiCmm1t1gI6XWAAY+gF0gCe4qtqlHL8fthkeBWsXGreA6eMgPviEw+x5sBZ3gAdjPCcNPI8Fsu+FawUCzz40psEfRNJndBl7b/pZmVLTQMkzJo0bQSys43iWm3cxS+DUJOmoSwqKCRmEZWKkYv6RSMBPc5lqXRGm0A1Q6XiaT2aSwo8jrK/qZwZlFIlXTusxa6iXDddTdARpnMj2ek9AWjWYH7h/lubcs4A28THdyAdOl0ezAmKNBNyLLiT0Btjti9zuHg06zpJKIprohwXNypcu1OIdGjYbnxCLGPyYy/EPDfejzbwYvXK59AzuFGdFLKTL8WYNZ59RVzGESJCNm0teI40E6zNIA2wSaA2REP32iaW0omKXRbJKTUVyYEVV0J8oxvEiQmiUZrFSz6XNkuJe3nBKCelaSbjOZrhLsd1BInYxweSeJq9YA6dYtuZCBI4JZ6jGW/W+sebhd0DAaMIO5mTYFW1+X6GeQ7TO3W0WyQj3cw0ulBg4nSUbcAY7zPVYp7ip95FXOH29Hb35AOPjypWMIh7PORSjFZVsIzdKW7AWvfYnTVNWHyCytHw+jd1Nehqks3KepvtChUzD7yGvE2/cduqxldQF1EWZb/PbWLF3jAVgo0WrlkN+c6hSd+rzlaSuaR7O0oX0wyIa2pVAdGaj0HCUVOqIq4dVwrg5lmmG2w+8f/9tjL6foYHE+Gy8Xtv3CPUpf7WauDxadKuIwoeNbOmoYDYbZ0ns/1wxUC7ykigs8sS/LpEe3vwUYALiKDDDSgEiSAAAAAElFTkSuQmCC") no-repeat 50% 50%;
}

.iziModal.iziModal-light .iziModal-button-fullscreen {
    background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA4JpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpEQTg1NTA2NTRFODQxMUU2OTQ0N0VERjY2Q0M5ODYwRCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo0RTNFNENCQkI4QUExMUU2QjNGOEVBMjg4OTRBRTg2NyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0RTNFNENCQUI4QUExMUU2QjNGOEVBMjg4OTRBRTg2NyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjFlNTQwYzczLTVhZmEtNDJlYi04YzJlLWMwMzFlYmFiYmIyNiIgc3RSZWY6ZG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmVkYmRiMzM1LTAxMDUtMTE3YS1hYmM3LWEzNWNkOWU1Yzc4NyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvIicdUAAAOvSURBVHjaxJlZbA1hFMe/qaItUUsspakg1laJ7UUisQuRvvTFA15sQSRCLBFrQryhHqxNHxEPtaQ8CCUkIrVVRbVBJdZYSrXVonr9/3pGxnTunZk78/X+k1+aO+1899/vnnvO+c4YKpi6ghEgW34OBD1BKjBAM6gH78Fz8BhUyrW/ikQivt7QiNMozU0DE8RkJx/3fgCPwA1QHvHp2K/hHJAPJqpwVA2K4flW2IZ7gyVgptKjh6AQxl+GYZi7uRr0U3rVBIpg+nIQwwvACpCkOk4XwYlosR3LMGN1qUqMroGDTqaNGDu7SiVWl+D3iP2i00c9HqxUidd8wzDy3HY4HRwCfWzXz4L7Lm+QKfHeOUTTLWAzdro6muH1YIbDjculWrmpUEM2YYXcCNMt9pAYE8WsWYLdlAxaNYTGMDDHKYYXBVy4B0jTFM/5iOcUc1fM/2JcnItNAYtBNzGtQ33BVHDV3OHpARqhV6CLLKpTs8yQYHxOCrDQO7AV1Gg2PBJhMYiGh4MMnx1eLkixXKsFuzSbZrrMpeGxHnqFFtvrTWCbhILd9AuNpnPMHXaTtZD0kl1mRdwSxXSjJsNZfONjcmqIJR5p3lp6Y+sXrAzsBz/lNXvmtZYMFKbqafi0pKQgKpOSPhmsC5BxXEs1Fz4fUr/7TWMe/q9bC2s3tJs1Df/Q/B5PwAZwJYS1WpPlo0zRZJZziL2gQU7I1GyHL7QSD26taVOytI26DpinxKypApvpk+C6dHlMnXskbUbT1yTpN3WJHWB327UCS3hUoc+tA/VyxP/ost5rGq7QWZnAdoe0eZgnYweDbgmgkoafgk8aTfNgsMNmmqfhC+Czj3V4T3mSBH255kxB0ztd4tNNDJkas2CUdkAKHQ3yAtxfijj/bdb7Cumyhmoyexzcs6Qwv2qUbPKvJDOtnNFklrF3R5qneA2XYHe/2A+ht1Xb3FZXRY1XTAjFTgtxJ45qKtWDpZK1g6dhIQuvBzjcy8FgQ6y8Nw+sCdnwL1Dn8jdMe6m2a+3ma9ESNUdOC1VixSH3bnPiYyraswnO0fqDIQkyW8WmCWab7b+I9TCF3+x0j2e+MPUA7LPGrVfD1F3VNsrPVR0zhS8BB5x21muzYa1Sy1Tb4y4d4qOwIi9Pk/wcj1gV50p5zQjJKAsJH8KcY4vpdYrjV0w9HMxxHjfKNpfwdMyRNuAmyy2M1vq5OegBNFMmR9lSHDizSLPMJGjuO2BZfSOtLKvpMylUvh/d/hFgAOH4+ibxGTZuAAAAAElFTkSuQmCC") no-repeat 50% 50%;
}

.iziModal.iziModal-light.isFullscreen .iziModal-button-fullscreen {
    background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoyRUUxMkYxODRFODUxMUU2Qjc3RDk0MUUzMzJDRjBEOCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo0RTNFNENCRkI4QUExMUU2QjNGOEVBMjg4OTRBRTg2NyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0RTNFNENCRUI4QUExMUU2QjNGOEVBMjg4OTRBRTg2NyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoTWFjaW50b3NoKSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjgzM2MwOWZiLWJjOTEtNGVlZS05MDM1LTRkMmU2ZmE1ZjBmMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoyRUUxMkYxODRFODUxMUU2Qjc3RDk0MUUzMzJDRjBEOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pv1Q9Z8AAAOXSURBVHjaxJlLbA1RGMfPjIs+EvoIRYt4FVUl2EkkRTxKUqQbG0SEho2FjUQ8YtEICbEgTdFYeK1KaGvVeoUltyStt0UlNE17aWhV2+v/9X5XJpMzc8/0zpn5kl+aO3Nm7r/fnPu9xhDp2URQDJbw3xkgB2QCAwyAPvANfARvQDsfG7V4PO7pC40xCiVxa8AKFjnOw7VdoA08BtG4R8VeBZeCKrBS+GPvQAM0P/NbcB7YBdYJPfYKXIXwL34IJm8eBFOFXusH9RDdnI7gLWA/MEVwdh/UOe1tN8G0V3eLcKwFXJCJNl08G5ZYsrWgWnZCJng5OOBwo1iAoisMw6hMJXgyOOywVW7xj+9BgKL3QHSxm+C9IF9y4U2GMlStRPQP8Jbp9lFwhJwE0RHrgaSV8N6xG238l7Zjtfx3K58/Bd7zsWngIqdnP2we2ACa7B7e6RL6joK5EtHNfL7b5u1Bn7dGFbycYRVM/8WyFJnuJK+z2iVwzFrMcF1h+Cx4ClhtFVyu8CW54ITE01EwFMAPcH1SMJWIqxQvItE1YHEIsXkhtkUhCV4ApiteFOPadn4IgseDMooSSxVrhWFwmkvCsKw06WGhKLhHhGuzSHChh9pZ5cc1oFFwfoTTsWrWqQCvXdZQEpkDsjUJziSv3Qu43k3LTA1BXqvRY/4DMjTd/yu4niJVm9wslCjcb4QE/9Qo+Al44baAmgpKCIqC+01OBLrsr8/de8zkiYwuUxWSq7iuM8JhantIqfYItkOepKBysnbycIfPXYKqURL6DhaBCQrrKcZHTa5loyEIJgHXwG3F9TQV+pxMGK0BiaTHn2OLEjcURbdi7XBSMO3jTxoEjtg+7wDnhG3spSD6F3hk7Tjoxnc0CJ5k+5wFCrhplYl2mmI24nyvvWumAE9z2zIfBW8WifnxIHc2yb6xiHtEoms0/hlGtpAPHCkgNDjFyZngPN88COvkPpEe+XGHbFcD7z53C+ybwKEAo0UPZ8QCybkmiL3sNvkheygSI08RYOSQiaUhd52sUpIZLWwJsYqkkdcZeHfIS66nc9XcZQRpNBY7C7F9Yy1OtonErDgSgNhGcEXmWa/VFA1O9onE6y4dRqGtXuVtkpf2iDy8EVR6GLykMnrsNFC867QF0hH8v3MVicFcuYdKy56uqQx4SukWQj3NOtJtQIt4ckSvbmdziMqy7HcS9xv0cn/Xwdn0A1drnl/d/hNgAGQa6Lgarp6BAAAAAElFTkSuQmCC") no-repeat 50% 50%;
}

.iziModal .iziModal-loader {
    background: #FFF url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDQiIGhlaWdodD0iNDQiIHZpZXdCb3g9IjAgMCA0NCA0NCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBzdHJva2U9IiM5OTkiPiAgICA8ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS13aWR0aD0iMiI+ICAgICAgICA8Y2lyY2xlIGN4PSIyMiIgY3k9IjIyIiByPSIxIj4gICAgICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJyIiAgICAgICAgICAgICAgICBiZWdpbj0iMHMiIGR1cj0iMS40cyIgICAgICAgICAgICAgICAgdmFsdWVzPSIxOyAyMCIgICAgICAgICAgICAgICAgY2FsY01vZGU9InNwbGluZSIgICAgICAgICAgICAgICAga2V5VGltZXM9IjA7IDEiICAgICAgICAgICAgICAgIGtleVNwbGluZXM9IjAuMTY1LCAwLjg0LCAwLjQ0LCAxIiAgICAgICAgICAgICAgICByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgLz4gICAgICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJzdHJva2Utb3BhY2l0eSIgICAgICAgICAgICAgICAgYmVnaW49IjBzIiBkdXI9IjEuNHMiICAgICAgICAgICAgICAgIHZhbHVlcz0iMTsgMCIgICAgICAgICAgICAgICAgY2FsY01vZGU9InNwbGluZSIgICAgICAgICAgICAgICAga2V5VGltZXM9IjA7IDEiICAgICAgICAgICAgICAgIGtleVNwbGluZXM9IjAuMywgMC42MSwgMC4zNTUsIDEiICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPiAgICAgICAgPC9jaXJjbGU+ICAgICAgICA8Y2lyY2xlIGN4PSIyMiIgY3k9IjIyIiByPSIxIj4gICAgICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJyIiAgICAgICAgICAgICAgICBiZWdpbj0iLTAuOXMiIGR1cj0iMS40cyIgICAgICAgICAgICAgICAgdmFsdWVzPSIxOyAyMCIgICAgICAgICAgICAgICAgY2FsY01vZGU9InNwbGluZSIgICAgICAgICAgICAgICAga2V5VGltZXM9IjA7IDEiICAgICAgICAgICAgICAgIGtleVNwbGluZXM9IjAuMTY1LCAwLjg0LCAwLjQ0LCAxIiAgICAgICAgICAgICAgICByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgLz4gICAgICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJzdHJva2Utb3BhY2l0eSIgICAgICAgICAgICAgICAgYmVnaW49Ii0wLjlzIiBkdXI9IjEuNHMiICAgICAgICAgICAgICAgIHZhbHVlcz0iMTsgMCIgICAgICAgICAgICAgICAgY2FsY01vZGU9InNwbGluZSIgICAgICAgICAgICAgICAga2V5VGltZXM9IjA7IDEiICAgICAgICAgICAgICAgIGtleVNwbGluZXM9IjAuMywgMC42MSwgMC4zNTUsIDEiICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPiAgICAgICAgPC9jaXJjbGU+ICAgIDwvZz48L3N2Zz4=) no-repeat 50% 50%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 9;
}

.iziModal .iziModal-content-loader {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDQiIGhlaWdodD0iNDQiIHZpZXdCb3g9IjAgMCA0NCA0NCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBzdHJva2U9IiM5OTkiPiAgICA8ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS13aWR0aD0iMiI+ICAgICAgICA8Y2lyY2xlIGN4PSIyMiIgY3k9IjIyIiByPSIxIj4gICAgICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJyIiAgICAgICAgICAgICAgICBiZWdpbj0iMHMiIGR1cj0iMS40cyIgICAgICAgICAgICAgICAgdmFsdWVzPSIxOyAyMCIgICAgICAgICAgICAgICAgY2FsY01vZGU9InNwbGluZSIgICAgICAgICAgICAgICAga2V5VGltZXM9IjA7IDEiICAgICAgICAgICAgICAgIGtleVNwbGluZXM9IjAuMTY1LCAwLjg0LCAwLjQ0LCAxIiAgICAgICAgICAgICAgICByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgLz4gICAgICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJzdHJva2Utb3BhY2l0eSIgICAgICAgICAgICAgICAgYmVnaW49IjBzIiBkdXI9IjEuNHMiICAgICAgICAgICAgICAgIHZhbHVlcz0iMTsgMCIgICAgICAgICAgICAgICAgY2FsY01vZGU9InNwbGluZSIgICAgICAgICAgICAgICAga2V5VGltZXM9IjA7IDEiICAgICAgICAgICAgICAgIGtleVNwbGluZXM9IjAuMywgMC42MSwgMC4zNTUsIDEiICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPiAgICAgICAgPC9jaXJjbGU+ICAgICAgICA8Y2lyY2xlIGN4PSIyMiIgY3k9IjIyIiByPSIxIj4gICAgICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJyIiAgICAgICAgICAgICAgICBiZWdpbj0iLTAuOXMiIGR1cj0iMS40cyIgICAgICAgICAgICAgICAgdmFsdWVzPSIxOyAyMCIgICAgICAgICAgICAgICAgY2FsY01vZGU9InNwbGluZSIgICAgICAgICAgICAgICAga2V5VGltZXM9IjA7IDEiICAgICAgICAgICAgICAgIGtleVNwbGluZXM9IjAuMTY1LCAwLjg0LCAwLjQ0LCAxIiAgICAgICAgICAgICAgICByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgLz4gICAgICAgICAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJzdHJva2Utb3BhY2l0eSIgICAgICAgICAgICAgICAgYmVnaW49Ii0wLjlzIiBkdXI9IjEuNHMiICAgICAgICAgICAgICAgIHZhbHVlcz0iMTsgMCIgICAgICAgICAgICAgICAgY2FsY01vZGU9InNwbGluZSIgICAgICAgICAgICAgICAga2V5VGltZXM9IjA7IDEiICAgICAgICAgICAgICAgIGtleVNwbGluZXM9IjAuMywgMC42MSwgMC4zNTUsIDEiICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPiAgICAgICAgPC9jaXJjbGU+ICAgIDwvZz48L3N2Zz4=) no-repeat 50% 50%;
}

.iziModal .iziModal-content:before,
.iziModal .iziModal-content:after {
    content: '';
    display: table;
}

.iziModal .iziModal-content:after {
    clear: both;
}

.iziModal .iziModal-content {
    zoom: 1;
    width: 100%;
    -webkit-overflow-scrolling: touch;
    /*overflow-y: scroll;*/
}

.iziModal .iziModal-wrap {
    width: 100%;
    position: relative;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
}

.iziModal .iziModal-iframe {
    border: 0;
    margin: 0 0 -6px 0;
    width: 100%;
    -webkit-transition: height 0.3s ease;
    transition: height 0.3s ease;
}

.iziModal-overlay {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(6, 18, 56, 0.5) !important;
}

@media screen and (max-width: 640px) {
    .iziModal-overlay {
        background-color: rgba(6, 18, 56, 0.9) !important;
    }
}

.iziModal-navigate {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 9999 !important;
    pointer-events: none;
}

@media screen and (max-width: 640px) {
    .iziModal-navigate {
        height: 73vw;
        top: 60px;
    }
}

.iziModal-navigate-caption {
    display: none !important;
}

.iziModal-navigate > button {
    display: inline-block;
    top: 50%;
    z-index: 1;
    width: 64px;
    height: 64px;
    background: rgba(6, 18, 56, 0.4);
    border-radius: 32px;
    position: fixed;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
    pointer-events: all;
    margin: 0 !important;
    -webkit-transform: translateY(-32px);
    transform: translateY(-32px);
    cursor: pointer;
}

@media screen and (max-width: 640px) {
    .iziModal-navigate > button {
        position: absolute;
        top: calc(50% - 30px);
        -webkit-transform: translateY(0px);
        transform: translateY(0px);
        width: 48px;
        height: 48px;
    }
}

.iziModal-navigate > button::after {
    content: "";
    position: absolute;
    top: 25px;
    width: 16px;
    height: 16px;
    border-style: solid;
    border-width: 2px 0 0 2px;
    border-color: #fff;
}

@media screen and (max-width: 640px) {
    .iziModal-navigate > button::after {
        top: 19px;
        width: 13px;
        height: 13px;
    }
}

.iziModal-navigate > button:hover {
    opacity: 1;
}

.iziModal-navigate-prev {
    left: calc(50% - 524px);
}

@media screen and (max-width: 640px) {
    .iziModal-navigate-prev {
        left: 16px;
    }
}

.iziModal-navigate-prev::after {
    left: 28px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

@media screen and (max-width: 640px) {
    .iziModal-navigate-prev::after {
        left: 20px;
    }
}

.iziModal-navigate-next {
    right: calc(50% - 180px);
}

@media screen and (max-width: 640px) {
    .iziModal-navigate-next {
        right: 16px;
    }
}

.iziModal-navigate-next::after {
    right: 28px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

@media screen and (max-width: 640px) {
    .iziModal-navigate-next::after {
        right: 20px;
    }
}

.iziModal.isAttachedTop .iziModal-header {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.iziModal.isAttachedTop {
    margin-top: 0 !important;
    margin-bottom: auto !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

.iziModal.isAttachedBottom {
    margin-top: auto !important;
    margin-bottom: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.iziModal.isFullscreen {
    max-width: 100% !important;
    margin: 0 !important;
    height: 100% !important;
    border-radius: 0 !important;
}

.iziModal.isAttached {
    border-radius: 0 !important;
}

.iziModal.hasScroll .iziModal-wrap {
    overflow-y: auto;
    overflow-x: hidden;
}

html.iziModal-isOverflow {
    overflow: hidden;
}

html.iziModal-isOverflow body, html.iziModal-isAttached body {
    overflow-y: scroll;
    position: relative;
}

html.iziModal-isAttached {
    overflow: hidden;
}

/* SCROLL */
.iziModal ::-webkit-scrollbar {
    overflow: visible;
    height: 7px;
    width: 7px;
}

.iziModal ::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.2);
    background-clip: padding-box;
    border: solid transparent;
    border-width: 0px;
    min-height: 28px;
    padding: 100px 0 0;
    -webkit-box-shadow: inset 1px 1px 0 rgba(0, 0, 0, 0.1), inset 0 -1px 0 rgba(0, 0, 0, 0.07);
    box-shadow: inset 1px 1px 0 rgba(0, 0, 0, 0.1), inset 0 -1px 0 rgba(0, 0, 0, 0.07);
}

.iziModal ::-webkit-scrollbar-thumb:active {
    background-color: rgba(0, 0, 0, 0.4);
}

.iziModal ::-webkit-scrollbar-button {
    height: 0;
    width: 0;
}

.iziModal ::-webkit-scrollbar-track {
    background-clip: padding-box;
    border: solid transparent;
    border-width: 0 0 0 2px;
}

/* MODAL ANIMATIONS */
.iziModal.transitionIn .iziModal-header {
    -webkit-animation: iziM-slideDown 0.7s cubic-bezier(0.7, 0, 0.3, 1);
    animation: iziM-slideDown 0.7s cubic-bezier(0.7, 0, 0.3, 1);
}

.iziModal.transitionIn .iziModal-header .iziModal-header-icon {
    -webkit-animation: iziM-revealIn 1s cubic-bezier(0.16, 0.81, 0.32, 1) both;
    animation: iziM-revealIn 1s cubic-bezier(0.16, 0.81, 0.32, 1) both;
}

.iziModal.transitionIn .iziModal-header .iziModal-header-title, .iziModal.transitionIn .iziModal-header .iziModal-header-subtitle {
    -webkit-animation: iziM-slideIn 1s cubic-bezier(0.16, 0.81, 0.32, 1) both;
    animation: iziM-slideIn 1s cubic-bezier(0.16, 0.81, 0.32, 1) both;
}

.iziModal.transitionIn .iziModal-header .iziModal-button {
    -webkit-animation: iziM-revealIn 1.2s cubic-bezier(0.7, 0, 0.3, 1);
    animation: iziM-revealIn 1.2s cubic-bezier(0.7, 0, 0.3, 1);
}

.iziModal.transitionIn .iziModal-iframe, .iziModal.transitionIn .iziModal-wrap {
    -webkit-animation: iziM-fadeIn 1.3s;
    animation: iziM-fadeIn 1.3s;
}

.iziModal.transitionIn .iziModal-header {
    -webkit-animation-delay: 0.0s;
    -moz-animation: 0.0s;
    animation-delay: 0.0s;
}

.iziModal.transitionIn .iziModal-header .iziModal-header-icon,
.iziModal.transitionIn .iziModal-header .iziModal-header-title {
    -webkit-animation-delay: 0.4s;
    -moz-animation: 0.4s;
    animation-delay: 0.4s;
}

.iziModal.transitionIn .iziModal-header .iziModal-header-subtitle {
    -webkit-animation-delay: 0.5s;
    -moz-animation: 0.5s;
    animation-delay: 0.5s;
}

.iziModal.transitionOut .iziModal-header, .iziModal.transitionOut .iziModal-header * {
    -webkit-transition: none !important;
    transition: none !important;
}

/* ANIMATIONS */
.iziModal.fadeOut, .iziModal-overlay.fadeOut, .iziModal-navigate.fadeOut, .iziModal .fadeOut {
    -webkit-animation: iziM-fadeOut 0.5s;
    animation: iziM-fadeOut 0.5s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}

.iziModal.fadeIn, .iziModal-overlay.fadeIn, .iziModal-navigate.fadeIn, .iziModal .fadeIn {
    -webkit-animation: iziM-fadeIn 0.5s;
    animation: iziM-fadeIn 0.5s;
}

.iziModal.comingIn, .iziModal-overlay.comingIn {
    -webkit-animation: iziM-comingIn 0.5s ease;
    animation: iziM-comingIn 0.5s ease;
}

.iziModal.comingOut, .iziModal-overlay.comingOut {
    -webkit-animation: iziM-comingOut 0.5s cubic-bezier(0.16, 0.81, 0.32, 1);
    animation: iziM-comingOut 0.5s cubic-bezier(0.16, 0.81, 0.32, 1);
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}

.iziModal.bounceInDown, .iziModal-overlay.bounceInDown {
    -webkit-animation: iziM-bounceInDown 0.7s ease;
    animation: iziM-bounceInDown 0.7s ease;
}

.iziModal.bounceOutDown, .iziModal-overlay.bounceOutDown {
    -webkit-animation: iziM-bounceOutDown 0.7s ease;
    animation: iziM-bounceOutDown 0.7s ease;
}

.iziModal.bounceInUp, .iziModal-overlay.bounceInUp {
    -webkit-animation: iziM-bounceInUp 0.7s ease;
    animation: iziM-bounceInUp 0.7s ease;
}

.iziModal.bounceOutUp, .iziModal-overlay.bounceOutUp {
    -webkit-animation: iziM-bounceOutUp 0.7s ease;
    animation: iziM-bounceOutUp 0.7s ease;
}

.iziModal.fadeInDown, .iziModal-overlay.fadeInDown {
    -webkit-animation: iziM-fadeInDown 0.7s cubic-bezier(0.16, 0.81, 0.32, 1);
    animation: iziM-fadeInDown 0.7s cubic-bezier(0.16, 0.81, 0.32, 1);
}

.iziModal.fadeOutDown, .iziModal-overlay.fadeOutDown {
    -webkit-animation: iziM-fadeOutDown 0.5s ease;
    animation: iziM-fadeOutDown 0.5s ease;
}

.iziModal.fadeInUp, .iziModal-overlay.fadeInUp {
    -webkit-animation: iziM-fadeInUp 0.7s cubic-bezier(0.16, 0.81, 0.32, 1);
    animation: iziM-fadeInUp 0.7s cubic-bezier(0.16, 0.81, 0.32, 1);
}

.iziModal.fadeOutUp, .iziModal-overlay.fadeOutUp {
    -webkit-animation: iziM-fadeOutUp 0.5s ease;
    animation: iziM-fadeOutUp 0.5s ease;
}

.iziModal.fadeInLeft, .iziModal-overlay.fadeInLeft {
    -webkit-animation: iziM-fadeInLeft 0.7s cubic-bezier(0.16, 0.81, 0.32, 1);
    animation: iziM-fadeInLeft 0.7s cubic-bezier(0.16, 0.81, 0.32, 1);
}

.iziModal.fadeOutLeft, .iziModal-overlay.fadeOutLeft {
    -webkit-animation: iziM-fadeOutLeft 0.5s ease;
    animation: iziM-fadeOutLeft 0.5s ease;
}

.iziModal.fadeInRight, .iziModal-overlay.fadeInRight {
    -webkit-animation: iziM-fadeInRight 0.7s cubic-bezier(0.16, 0.81, 0.32, 1);
    animation: iziM-fadeInRight 0.7s cubic-bezier(0.16, 0.81, 0.32, 1);
}

.iziModal.fadeOutRight, .iziModal-overlay.fadeOutRight {
    -webkit-animation: iziM-fadeOutRight 0.5s ease;
    animation: iziM-fadeOutRight 0.5s ease;
}

.iziModal.flipInX, .iziModal-overlay.flipInX {
    -webkit-animation: iziM-flipInX 0.7s ease;
    animation: iziM-flipInX 0.7s ease;
}

.iziModal.flipOutX, .iziModal-overlay.flipOutX {
    -webkit-animation: iziM-flipOutX 0.7s ease;
    animation: iziM-flipOutX 0.7s ease;
}

@-webkit-keyframes iziM-comingIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.9) translateY(-20px) perspective(600px) rotateX(10deg);
        transform: scale(0.9) translateY(-20px) perspective(600px) rotateX(10deg);
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(1) translateY(0) perspective(600px) rotateX(0);
        transform: scale(1) translateY(0) perspective(600px) rotateX(0);
    }
}

@keyframes iziM-comingIn {
    0% {
        opacity: 0;
        /*transform: translateY(-20px) perspective( 600px ) rotateX( 10deg );*/
        -webkit-transform: scale(0.9) translateY(-20px) perspective(600px) rotateX(10deg);
        transform: scale(0.9) translateY(-20px) perspective(600px) rotateX(10deg);
    }
    100% {
        opacity: 1;
        /*transform: scale(1) translateY(0) perspective( 600px ) rotateX( 0 ); */
        -webkit-transform: scale(1) translateY(0) perspective(600px) rotateX(0);
        transform: scale(1) translateY(0) perspective(600px) rotateX(0);
    }
}

@-webkit-keyframes iziM-comingOut {
    0% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
}

@keyframes iziM-comingOut {
    0% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
}

@-webkit-keyframes iziM-fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@keyframes iziM-fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@-webkit-keyframes iziM-fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes iziM-fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-webkit-keyframes iziM-slideIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(50px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
    }
}

@keyframes iziM-slideIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(50px);
        transform: translateX(50px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes iziM-slideDown {
    0% {
        opacity: 0;
        -webkit-transform: scale(1, 0) translateY(-40px);
        -webkit-transform-origin: center top;
    }
}

@keyframes iziM-slideDown {
    0% {
        opacity: 0;
        -webkit-transform: scale(1, 0) translateY(-40px);
        transform: scale(1, 0) translateY(-40px);
        -webkit-transform-origin: center top;
        transform-origin: center top;
    }
}

@-webkit-keyframes iziM-revealIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 1);
    }
}

@keyframes iziM-revealIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 1);
        transform: scale3d(0.3, 0.3, 1);
    }
}

@-webkit-keyframes iziM-bounceInDown {
    from, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -1000px, 0);
        transform: translate3d(0, -1000px, 0);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, 25px, 0);
        transform: translate3d(0, 25px, 0);
    }
    75% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, 5px, 0);
        transform: translate3d(0, 5px, 0);
    }
    to {
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes iziM-bounceInDown {
    from, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -1000px, 0);
        transform: translate3d(0, -1000px, 0);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, 25px, 0);
        transform: translate3d(0, 25px, 0);
    }
    75% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, 5px, 0);
        transform: translate3d(0, 5px, 0);
    }
    to {
        -webkit-transform: none;
        transform: none;
    }
}

@-webkit-keyframes iziM-bounceOutDown {
    20% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
    }
    40%, 45% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 1000px, 0);
        transform: translate3d(0, 1000px, 0);
    }
}

@keyframes iziM-bounceOutDown {
    20% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
    }
    40%, 45% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 1000px, 0);
        transform: translate3d(0, 1000px, 0);
    }
}

@-webkit-keyframes iziM-bounceInUp {
    from, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 1000px, 0);
        transform: translate3d(0, 1000px, 0);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
    }
    75% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, -5px, 0);
        transform: translate3d(0, -5px, 0);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes iziM-bounceInUp {
    from, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 1000px, 0);
        transform: translate3d(0, 1000px, 0);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
    }
    75% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
    }
    90% {
        -webkit-transform: translate3d(0, -5px, 0);
        transform: translate3d(0, -5px, 0);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@-webkit-keyframes iziM-bounceOutUp {
    20% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    40%, 45% {
        opacity: 1;
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
    }
}

@keyframes iziM-bounceOutUp {
    20% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    40%, 45% {
        opacity: 1;
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -1000px, 0);
        transform: translate3d(0, -1000px, 0);
    }
}

@-webkit-keyframes iziM-fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -100px, 0);
        transform: translate3d(0, -100px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes iziM-fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -100px, 0);
        transform: translate3d(0, -100px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@-webkit-keyframes iziM-fadeOutDown {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 100px, 0);
        transform: translate3d(0, 100px, 0);
    }
}

@keyframes iziM-fadeOutDown {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 100px, 0);
        transform: translate3d(0, 100px, 0);
    }
}

@-webkit-keyframes iziM-fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 100px, 0);
        transform: translate3d(0, 100px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes iziM-fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 100px, 0);
        transform: translate3d(0, 100px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@-webkit-keyframes iziM-fadeOutUp {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -100px, 0);
        transform: translate3d(0, -100px, 0);
    }
}

@keyframes iziM-fadeOutUp {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -100px, 0);
        transform: translate3d(0, -100px, 0);
    }
}

@-webkit-keyframes iziM-fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-200px, 0, 0);
        transform: translate3d(-200px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes iziM-fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-200px, 0, 0);
        transform: translate3d(-200px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@-webkit-keyframes iziM-fadeOutLeft {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-200px, 0, 0);
        transform: translate3d(-200px, 0, 0);
    }
}

@keyframes iziM-fadeOutLeft {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-200px, 0, 0);
        transform: translate3d(-200px, 0, 0);
    }
}

@-webkit-keyframes iziM-fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(200px, 0, 0);
        transform: translate3d(200px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes iziM-fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(200px, 0, 0);
        transform: translate3d(200px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@-webkit-keyframes iziM-fadeOutRight {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(200px, 0, 0);
        transform: translate3d(200px, 0, 0);
    }
}

@keyframes iziM-fadeOutRight {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(200px, 0, 0);
        transform: translate3d(200px, 0, 0);
    }
}

@-webkit-keyframes iziM-flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(60deg);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}

@keyframes iziM-flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(60deg);
        transform: perspective(400px) rotateX(60deg);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}

@-webkit-keyframes iziM-flipOutX {
    from {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
    30% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1;
    }
    to {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 40deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 40deg);
        opacity: 0;
    }
}

@keyframes iziM-flipOutX {
    from {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
    30% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1;
    }
    to {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 40deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 40deg);
        opacity: 0;
    }
}

.js-modal {
    overflow-y: scroll;
    -ms-overflow-style: none;
    display: none;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 640px) {
    .js-modal::-webkit-scrollbar {
        display: none;
    }
}

.js-modal .js-modal-bg {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(6, 18, 56, 0.5);
}

.js-modal .js-modal-content {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.js-modal .js-modal-close {
    cursor: pointer;
}

.modaal-wrapper {
    z-index: 1001;
}
  
  .modaal-wrapper .modaal-container {
    border-radius: 5px;
    width: 60%;
}
  
  .modaal-wrapper .modaal-container .modaal-content-container {
    padding: 50px;
}
  
  .modaal-wrapper .modaal-container .modaal-content-container .title {
    font-size: 20px;
    font-weight: bold;
    font-family: 'HiraKakuPro-W6';
    padding-bottom: 30px;
}
  
  .modaal-wrapper .modaal-container .modaal-content-container .modal_bottom .contractor_btn {
    background: #172b41;
    color: #fff;
    float: left;
    width: 50%;
    font-weight: bold;
    text-align: center;
    padding: 20px;
}
  
  .modaal-wrapper .modaal-container .modaal-content-container .modal_bottom .general_btn {
    background: #10101059;
    color: white;
    float: right;
    width: 50%;
    font-weight: bold;
    text-align: center;
    padding: 20px;
}
  
  @media screen and (max-width: 960px) {
    .modaal-wrapper .modaal-container {
      border-radius: 5px;
      width: 80%;
    }
    .modaal-wrapper .modaal-container .modaal-content-container {
      padding: 30px;
    }
  }

.form {
    padding: 0 0 48px;
    border: solid 2px #cfd9e9;
}

@media screen and (max-width: 960px) {
    .form {
        padding: 0;
        border: none;
    }
}

.form dl {
    margin: 0 0 30px;
    padding: 48px 48px 32px;
}

@media screen and (max-width: 960px) {
    .form dl {
        padding: 0 0 16px;
    }
}

.form dl .form-row {
    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;
    padding: 25px 0;
    border-bottom: solid 1px #cfd9e9;
}

.form dl .form-row dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 240px;
}

@media screen and (max-width: 960px) {
    .form dl .form-row dt {
        width: 100%;
        margin: 0 0 8px;
        font-size: 1.6rem;
    }
}

.form dl .form-row dd {
    width: calc(100% - 243px);
}

.form dl .form-row dd.full {
    width: 100%;
}

@media screen and (max-width: 960px) {
    .form dl .form-row dd {
        width: 100%;
    }
}

.form dl .form-row .form-comment {
    font-size: 11px;
    padding-top: 10px;
  }

.form-step .form-step-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background: #eff3f8;
}

@media screen and (max-width: 960px) {
    .form-step .form-step-list {
        width: calc(100% + 64px);
        margin: 0 0 24px;
        -webkit-transform: translateX(-32px);
        transform: translateX(-32px);
    }
}

.form-step .form-step-list__item {
    position: relative;
    width: 33.33%;
    height: 56px;
    padding: 0 32px;
    line-height: 56px;
}

@media screen and (max-width: 960px) {
    .form-step .form-step-list__item {
        text-align: center;
    }
}

.form-step .form-step-list__item.step1 {
    background: #131f2d;
    color: #fff;
}

.form-step .form-step-list__item.step1::before, .form-step .form-step-list__item.step1::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: calc(100% + 1px);
    z-index: 2;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 28px 12px;
    border-color: transparent transparent transparent #cfd9e9;
}

.form-step .form-step-list__item.step1::after {
    left: 100%;
    border-color: transparent transparent transparent #131f2d;
}

.form-step .form-step-list__item.step2 {
    color: #597098;
}

.form-step .form-step-list__item.step2::before, .form-step .form-step-list__item.step2::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: calc(100% + 1px);
    z-index: 2;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 28px 12px;
    border-color: transparent transparent transparent #cfd9e9;
}

.form-step .form-step-list__item.step2::after {
    left: 100%;
    border-color: transparent transparent transparent #eff3f8;
}

.form-step .form-step-list__item.step3 {
    color: #597098;
}

.form-step .form-step-list__item .step-num {
    position: relative;
    margin: 0 16px 0 0;
    padding: 0 16px 0 0;
    font-size: 1.4rem;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 960px) {
    .form-step .form-step-list__item .step-num {
        margin: 0;
        padding: 0;
    }
}

.form-step .form-step-list__item .step-num::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: 16px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 960px) {
    .form-step .form-step-list__item .step-num::after {
        display: none;
    }
}

.form-step .form-step-list__item.step1 .step-num::after {
    background: #fff;
}

.form-step .form-step-list__item.step2 .step-num::after,
.form-step .form-step-list__item.step3 .step-num::after {
    background: #cfd9e9;
}

@media screen and (max-width: 960px) {
    .form-step .form-step-list__item .step-text {
        display: none;
    }
}

.form-step .step-text-sp {
    display: none;
}

@media screen and (max-width: 960px) {
    .form-step .step-text-sp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        font-family: 'HiraKakuPro-W6';
    }
}

.custom-wpcf7c-confirmed .form-step .form-step-list__item.step1 {
    background: #1c3959;
    color: #597098;
}

.custom-wpcf7c-confirmed .form-step .form-step-list__item.step1::after {
    border-color: transparent transparent transparent #1c3959;
}

.custom-wpcf7c-confirmed .form-step .form-step-list__item.step2 {
    background: #131f2d;
    color: #fff;
}

.custom-wpcf7c-confirmed .form-step .form-step-list__item.step2::after {
    border-color: transparent transparent transparent #131f2d;
}

.custom-wpcf7c-confirmed .form-step .form-step-list__item.step1 .step-num::after {
    background: #597098;
}

.custom-wpcf7c-confirmed .form-step .form-step-list__item.step2 .step-num::after {
    background: #fff;
}

#thanks .form-step .form-step-list__item.step1, #thanks .form-step .form-step-list__item.step2 {
    background: #1c3959;
    color: #597098;
}

#thanks .form-step .form-step-list__item.step1::after, #thanks .form-step .form-step-list__item.step2::after {
    border-color: transparent transparent transparent #1c3959;
}

#thanks .form-step .form-step-list__item.step3 {
    background: #131f2d;
    color: #fff;
}

#thanks .form-step .form-step-list__item.step1 .step-num::after,
#thanks .form-step .form-step-list__item.step2 .step-num::after {
    background: #597098;
}

#thanks .form-step .form-step-list__item.step3 .step-num::after {
    background: #fff;
}

input,
select,
textarea {
    display: block;
    width: 100%;
    height: 50px;
    padding: 0 10px;
    border: solid 1px #cfd9e9;
    border-radius: 2px;
    font-size: 1.6rem;
    font-family: "HiraKakuPro-W3", "游ゴシック体", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1.8;
}

input::-webkit-input-placeholder,
select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #cfd9e9;
}

input::-moz-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder {
    color: #cfd9e9;
}

input:-ms-input-placeholder,
select:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #cfd9e9;
}

input::-ms-input-placeholder,
select::-ms-input-placeholder,
textarea::-ms-input-placeholder {
    color: #cfd9e9;
}

input::placeholder,
select::placeholder,
textarea::placeholder {
    color: #cfd9e9;
}

select {
    background: url("../img/common/select.png.html") no-repeat 96% center;
}

textarea {
    overflow: auto;
    height: 200px;
    padding: 10px;
    line-height: 1.8;
}

@media screen and (max-width: 960px) {
    textarea {
        height: 120px;
    }
}

.must {
    display: block;
    height: 24px;
    padding: 0 10px;
    background: #da2442;
    border-radius: 12px;
    color: #fff;
    font-size: 1.2rem;
    line-height: 24px;
    margin-right: 10px;
}
.must-right {
    margin-left: auto;
}

.short-parts .wpcf7-form-control-wrap {
    display: inline-block;
    width: calc(50% - 5px);
}

@media screen and (max-width: 960px) {
    .short-parts .wpcf7-form-control-wrap {
        width: 100%;
    }
}

.short-parts .wpcf7-form-control-wrap:first-child {
    margin: 0 10px 0 0;
}

@media screen and (max-width: 960px) {
    .short-parts .wpcf7-form-control-wrap:first-child {
        margin: 0;
    }
}

@media screen and (max-width: 960px) {
    .short-parts .wpcf7-form-control-wrap + span {
        margin: 10px 0 0;
    }
}

.del_arrow_btn input[type="number"]::-webkit-outer-spin-button, 
.del_arrow_btn input[type="number"]::-webkit-inner-spin-button { 
  -webkit-appearance: none;
  -moz-appearance:textfield;
  margin: 0; 
} 

.input_file_wrapper {
    position: relative;
}

.input_file_wrapper .description {
    background: #efefef;
    padding: 15px;
}

.input_file_wrapper .input-file {
    margin-top: 20px;
}

.input_file_wrapper .input-file .wpcf7-form-control-wrap {
    float: left;
}

.input_file_wrapper .input-file input[type=file] {
    border: none;
    padding: 0;
}

.input_file_wrapper .input-file .delete-input-file {
    color: red;
    cursor: pointer;
    float: left;
}

.input_file_wrapper .template-download {
    display: block;
}

.input_file_wrapper .template-download a {
    font-weight: bold;
}

.address p:not(:last-child) {
    margin-bottom: 10px;
}

.address p:not(.zip) {
    padding-left: 21px;
}

.zip .wpcf7-form-control-wrap{
    display: inline-block;
    width: calc(20% - 5px);
}

@media screen and (max-width: 960px) {
    .zip .wpcf7-form-control-wrap{
        display: inline-block;
        width: calc(40% - 5px);
    }
}

.consent {
    margin: 0 0 40px;
    text-align: center;
}

.consent.consent-left {
    padding: 0 48px 0 48px;
    text-align: left;
}

.consent__description {
    display: inline-block;
    margin-bottom: 20px;
    cursor: pointer;
}

.consent__check {
    display: inline-block;
    position: relative;
    padding: 0 0 0 45px;
    cursor: pointer;
}

.consent__check:not(:last-child) {
    margin-bottom: 24px;
}

.consent__check {
    display: inline-block;
    position: relative;
    padding: 0 0 0 45px;
    cursor: pointer;
}

.consent__check input[type=checkbox] {
    display: none;
}

.consent__check .wpcf7-list-item-label {
    overflow: hidden;
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 30px;
    height: 30px;
    border: solid 1px #cfd9e9;
    text-indent: 100%;
    white-space: nowrap;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    cursor: pointer;
}

.consent__check input[type=checkbox]:checked + .wpcf7-list-item-label::after {
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    left: 11px;
    width: 7px;
    height: 14px;
    -webkit-transform: rotate(40deg);
    transform: rotate(40deg);
    border-bottom: 2px solid #cfd9e9;
    border-right: 2px solid #cfd9e9;
}

.consent__check .wpcf7-not-valid-tip {
    position: absolute;
    bottom: -25px;
}

.consent a {
    position: relative;
    padding: 0 0 0 14px;
    text-decoration: underline;
    font-family: 'HiraKakuPro-W6';
}

.consent a::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 7px;
    height: 8px;
    background: url("../img/common/external.svg") center/contain no-repeat;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.consent a:hover {
    text-decoration: none;
}

.confirm-btn {
    display: block;
    width: 100%;
    max-width: 340px;
    height: 64px;
    margin: 0 auto;
    background-color: #172b41;
    border-radius: 32px;
    color: #fff;
    text-align: center;
    line-height: 64px;
    font-family: 'HiraKakuPro-W6';
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
    cursor: pointer;
}

@media screen and (max-width: 400px) {
    .confirm-btn {
        height: 54px;
        line-height: 54px;
    }
}

.confirm-btn::before {
    content: "内容を確認する";
}

.confirm-btn.en::before {
    content: "Confirm";
}

.confirm-btn:hover {
    opacity: 1;
    background-color: #ded9db;
    color: #172b41;
}

.confirm-btn input {
    display: none;
}

.comp-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.comp-btn__back, .comp-btn__send {
    display: block;
    width: 100%;
    max-width: 340px;
    height: 64px;
    margin: 0 8px;
    background-color: #172b41;
    border-radius: 32px;
    color: #fff;
    text-align: center;
    line-height: 64px;
    font-family: 'HiraKakuPro-W6';
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
    cursor: pointer;
}

@media screen and (max-width: 400px) {
    .comp-btn__back, .comp-btn__send {
        height: 54px;
        line-height: 54px;
    }
}

.comp-btn__back:hover, .comp-btn__send:hover {
    opacity: 1;
    background-color: #ded9db;
    color: #172b41;
}

.comp-btn__back input, .comp-btn__send input {
    display: none;
}

.comp-btn__back {
    background-color: #cfd9e9;
    color: #172b41;
}

.comp-btn__back::before {
    content: "修正する";
}

.comp-btn__back.en::before {
    content: "edit";
}

.comp-btn__send::before {
    content: "送信する";
}

.comp-btn__send.en::before {
    content: "submit";
}

.wpcf7-mail-sent-ok {
    display: none;
}

.wpcf7-validation-errors {
    margin-top: 20px;
    padding: 30px;
    border: 2px solid #cfd9e9;
    font-size: 1.4rem;
    text-align: center;
}

.wpcf7-response-output {
    color: #da2442;
}

.screen-reader-response {
    display: none;
}

.wpcf7-not-valid-tip {
    display: block;
    color: #da2442;
    font-size: 1.4rem;
}

.wpcf7 .wpcf7-not-valid {
    background: #ded9db;
}

.wpcf7-form {
    margin-top: -140px;
    padding-top: 140px;
}

.wpcf7-form .wpcf7-label {
    display: none;
}

.wpcf7-form.custom-wpcf7c-confirmed .must,
.wpcf7-form.custom-wpcf7c-confirmed .wpcf7-form-control-wrap {
    display: none;
}

.wpcf7-form.custom-wpcf7c-confirmed .wpcf7-label {
    display: inline-block;
    margin: 0 5px 0 0;
    font-family: 'HiraKakuPro-W6';
}
/*header*/
.header {
    position: fixed;
    left: 0;
    right: 0;
    z-index: 1000;
    width: 100%;
    -webkit-transition: background .3s ease-out;
    transition: background .3s ease-out;
}

.header.fixed {
    background: #172b41;
}

.header.lower {
    background: #172b41;
}

.header .header-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    max-width: 1280px;
    height: 80px;
    margin: 0 auto;
    padding: 0 0 0 40px;
}

@media screen and (max-width: 960px) {
    .header .header-inner {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        position: relative;
        z-index: 1000;
        width: calc(100% - 64px);
        height: 64px;
        margin: 0;
        padding: 0 0 0 32px;
    }
}

/*2020年3月修正 start*/
.header .header-inner .header-inner--logoBox {
    flex-shrink: 0;
    height: 30px;
}

/*2020年3月修正 end*/

.header .header-inner .header-logo {
    display: inline-block;
}

@media screen and (max-width: 960px) {
    .header .header-inner .gnav {
        display: none;
    }
}

/*2020年3月　ヘッダー項目追加に伴う修正 start*/
.header .header-inner .gnav--right {
    margin: 0 0 0 auto;
    display: flex;
}

.header .header-inner .gnav--right ul {
    display: flex;
    width: 100%;
    margin-right: 20px;
}

.header .header-inner .gnav--right li {
    font-weight: bold;
    font-family: "Roboto", sans-serif;
    float: right;
}


.header .header-inner .gnav .gnav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
    margin-left: 50px;
    width: 100%;
}

.header .header-inner .gnav--right .gnav-list {
     width: 100%;
}

@media screen and (max-width: 960px) {
    .header .header-inner .gnav--right {
        display: none;
    }
}

/*
.header .header-inner .gnav .gnav-list li:nth-child(5){
  width: 100%;
}
.header .header-inner .gnav .gnav-list li:nth-child(6){
  width: 100%;
}
*/

/*2020年3月　ヘッダー項目追加に伴う修正 end*/


.header .header-inner .gnav .gnav-list__item {
    height: 80px;
    line-height: 80px;
    flex: 0 1 auto;
}

.header .header-inner .gnav .gnav-list li:nth-child(3),
.header .header-inner .gnav .gnav-list li:nth-child(4),
.header .header-inner .gnav .gnav-list li:nth-child(5) {
    font-size: 80%;
}


@media screen and (max-width: 1150px) {
    .header .header-inner .gnav .gnav-list__item {
        font-size: 1.20vw;
    }

    .header .header-inner .gnav .gnav-list li:nth-child(3),
    .header .header-inner .gnav .gnav-list li:nth-child(4),
    .header .header-inner .gnav .gnav-list li:nth-child(5) {
        font-size: 1.0vw;
    }

    .header .header-inner .gnav .gnav-list li:nth-child(3),
    .header .header-inner .gnav .gnav-list li:nth-child(4) {
        margin: 0 4% 0 0;
    }
}

.header .header-inner .gnav .gnav-list__item:not(:last-child) {
    margin: 0 15px 0 0;
}

.header .header-inner .gnav .gnav-list__item > a {
    display: block;
    position: relative;
    height: 100%;
    color: #fff;
}

.header .header-inner .gnav .gnav-list__item > a::after {
    content: "";
    opacity: 0;
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 2px;
    background: #cfd9e9;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

.header .header-inner .gnav .gnav-list__item:hover > a::after {
    opacity: 1;
}

.header .header-inner .gnav .gnav-list__item .megamenu {
    opacity: 0;
    overflow: hidden;
    position: absolute;
    top: 80px;
    left: 0;
    right: 0;
    z-index: 999;
    width: 100%;
    max-height: 0;
    background: rgba(28, 57, 89, 0.9);
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

.header .header-inner .gnav .gnav-list__item .megamenu .megamenu-inner {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 24px 40px;
}

.header .header-inner .gnav .gnav-list__item .megamenu .megamenu-ttl {
    margin: 0 0 16px;
    line-height: 1.2;
}

.header .header-inner .gnav .gnav-list__item .megamenu .megamenu-ttl a {
    position: relative;
    padding: 0 0 0 18px;
    color: #fff;
    font-size: 2.8rem;
}

.header .header-inner .gnav .gnav-list__item .megamenu .megamenu-ttl a .ico-arrow {
    position: absolute;
    top: 50%;
    left: 0;
    width: 10px;
    height: 16px;
    fill: #fff;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.header .header-inner .gnav .gnav-list__item .megamenu .megamenu-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.header .header-inner .gnav .gnav-list__item .megamenu .megamenu-list__item {
    width: 25%;
    line-height: 1.6;
}

.header .header-inner .gnav .gnav-list__item .megamenu .megamenu-list__item a {
    position: relative;
    padding: 0 0 0 32px;
    color: #fff;
    font-size: 1.4rem;
    font-weight: normal;
    font-family: "Roboto", sans-serif;
}

.header .header-inner .gnav .gnav-list__item .megamenu .megamenu-list__item a .arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background: #ded9db;
    border-radius: 12px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.header .header-inner .gnav .gnav-list__item .megamenu .megamenu-list__item a .arrow .ico-arrow {
    fill: #172b41;
}

.header .header-inner .gnav .gnav-list__item:hover .megamenu {
    opacity: 1;
    max-height: 9999px;
}

/*2020年3月　追加 start*/

/*2020年3月　追加 start*/

.header .header-inner .header-contact {
    margin: 0 0 0 auto;
}

@media screen and (max-width: 960px) {
    .header .header-inner .header-contact {
        display: none;
    }
}

.header .header-inner .header-contact a {
    display: block;
    width: 144px;
    height: 80px;
    background-color: #1c3959;
    color: #fff;
    font-weight: bold;
    text-align: center;
    line-height: 80px;
    font-family: "Roboto", sans-serif;
}

.header .header-inner .header-contact a:hover {
    opacity: 1;
    background-color: #ded9db;
    color: #172b41;
}
.drawer {
    display: none;
    position: relative;
    top: 0;
    right: 0;
    z-index: 999;
}

@media screen and (max-width: 960px) {
    .drawer {
        display: block;
    }
}

.drawer .drawer-switch {
    display: none;
}

.drawer-hamburger {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 998;
    width: 64px;
    height: 64px;
    background: #1c3959;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    cursor: pointer;
}

.drawer-hamburger span {
    display: block;
    position: relative;
    top: 50%;
    width: 16px;
    height: 2px;
    margin: 0 auto;
    background: #fff;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.drawer-hamburger span::before, .drawer-hamburger span::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: #fff;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.drawer-hamburger span:before {
    top: -4px;
}

.drawer-hamburger span:after {
    top: 4px;
}

.drawer-switch:checked ~ .drawer-hamburger {
    background: #ded9db;
}

.drawer-switch:checked ~ .drawer-hamburger span {
    background: none;
}

.drawer-switch:checked ~ .drawer-hamburger span::before, .drawer-switch:checked ~ .drawer-hamburger span::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: #172b41;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.drawer-switch:checked ~ .drawer-hamburger span::before {
    top: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.drawer-switch:checked ~ .drawer-hamburger span::after {
    top: 0;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.drawer-overlay {
    opacity: 0;
    display: none;
    position: fixed;
    z-index: 997;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: #131f2d;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.drawer-switch:checked ~ .drawer-overlay {
    opacity: .9;
    display: block;
}

.drawer-content {
    overflow: auto;
    position: fixed;
    top: 64px;
    right: 0;
    z-index: 999;
    width: 100%;
    height: 100%;
    padding: 0 32px;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

@media screen and (max-width: 400px) {
    .drawer-content {
        padding: 0 16px;
    }
}

.drawer-switch:checked ~ .drawer-content {
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

.drawer-content .menu {
    margin: 0;
    padding: 60px 0 0;
}

.drawer-content .menu .menu-item > a {
    display: block;
    position: relative;
    padding: 24px 10px 8px;
    color: #fff;
    font-size: 1.6rem;
    border-bottom: 1px solid #fff;
    height: 3.5em;
}

.drawer-content .menu .menu-item.outer-link > a::after {
    content: url('../img/sprite.png');
    position: absolute;
    top: 18px;
    left: 160px;
    width: 10px;
    height: 10px;
}

.drawer-content .menu .menu-item > a .ico-arrow {
    margin: 0 8px 2px 0;
    fill: #fff;
}

.drawer-content .sp-contact-btn a {
    display: block;
    width: 100%;
    height: 64px;
    background: #1c3959;
    color: #fff;
    text-align: center;
    line-height: 64px;
}

.pull-menu {
    position: relative;
}

.pull-menu > a {
    display: block;
    position: relative;
    width: calc(100% - 48px);
    padding: 24px 10px 8px;
    color: #fff;
    font-size: 1.6rem;
}

.pull-menu > a .ico-arrow {
    margin: 0 8px 2px 0;
    fill: #fff;
}

.pull-menu > a::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(100% + 48px);
    height: 1px;
    background: #fff;
}

.pull-menu input {
    display: none;
}

.pull-menu .pull-menu-swich {
    position: absolute;
    top: 16px;
    right: 0;
    width: 40px;
    height: 40px;
    cursor: pointer;
}

.pull-menu .pull-menu-swich::before, .pull-menu .pull-menu-swich::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    left: 0;
    width: 12px;
    height: 2px;
    margin: 0 auto;
    background: #fff;
}

.pull-menu .pull-menu-swich::after {
    -webkit-transform: rotateZ(90deg);
    transform: rotateZ(90deg);
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.pull-menu input:checked + .pull-menu-swich::after {
    opacity: 0;
    -webkit-transform: rotateZ(0);
    transform: rotateZ(0);
}

.pull-menu .pull-menu-list {
    opacity: 0;
    height: 0;
    padding: 0;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.pull-menu .pull-menu-list__item {
    margin: 0 0 16px;
}

.pull-menu .pull-menu-list__item a {
    display: block;
    position: relative;
    padding: 0 0 0 32px;
    color: #fff;
    font-size: 1.4rem;
    line-height: 1.8;
}

.pull-menu .pull-menu-list__item a .arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background: #ded9db;
    border-radius: 12px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.pull-menu .pull-menu-list__item a .arrow .ico-arrow {
    fill: #172b41;
}

.pull-menu input:checked + .pull-menu-swich + .pull-menu-list {
    opacity: 1;
    height: auto;
    padding: 20px 0 8px;
}

.footer {
    position: relative;
}

.footer .l-head {
    padding: 44px 0;
    background: #1c3959;
}

.footer .l-head .footer-contact .footer-contact-ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    line-height: 1;
}

@media screen and (max-width: 960px) {
    .footer .l-head .footer-contact .footer-contact-ttl {
        display: block;
        width: 100%;
        text-align: center;
        margin: 0 0 40px;
    }
}

.footer .l-head .footer-contact .footer-contact-ttl__main {
    font-size: 2rem;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    .footer .l-head .footer-contact .footer-contact-ttl__main {
        font-size: 1.6rem;
    }
}

.footer .l-head .footer-contact .footer-contact-ttl__sub {
    margin: 0 16px 0 0;
    font-size: 4.8rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 960px) {
    .footer .l-head .footer-contact .footer-contact-ttl__sub {
        margin: 0 0 10px;
        font-size: 4.0rem;
    }
}

@media screen and (max-width: 640px) {
    .footer .l-head .footer-contact .footer-contact-ttl__sub {
        font-size: 3.6rem;
    }
}

.footer .l-head .footer-contact .footer-contact-btn {
    width: 100%;
    max-width: 380px;
}

@media screen and (max-width: 960px) {
    .footer .l-head .footer-contact .footer-contact-btn {
        margin: 0 auto;
    }
}

.footer .l-head .footer-contact .footer-contact-btn a {
    display: block;
    position: relative;
    width: 100%;
    padding: 28px 0;
    border: solid 2px #ded9db;
    color: #ded9db;
    text-align: center;
    line-height: 1;
    font-family: 'HiraKakuPro-W6';
}

.footer .l-head .footer-contact .footer-contact-btn a:hover {
    background: #ded9db;
    color: #131f2d;
}

.footer .l-head .footer-contact .footer-contact-btn a .mail {
    display: inline-block;
    position: relative;
    padding: 0 0 0 24px;
}

.footer .l-head .footer-contact .footer-contact-btn a .mail .ico-mail {
    position: absolute;
    top: 50%;
    left: 0;
    width: 16px;
    height: 11px;
    fill: #ded9db;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

.footer .l-head .footer-contact .footer-contact-btn a:hover .mail .ico-mail {
    fill: #131f2d;
}

.footer .l-head .footer-contact .footer-contact-btn a .arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 50%;
    right: 20px;
    width: 24px;
    height: 24px;
    background: #131f2d;
    border: solid 1px #131f2d;
    border-radius: 12px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: background .3s ease-out;
    transition: background .3s ease-out;
}

.footer .l-head .footer-contact .footer-contact-btn a .arrow .ico-arrow {
    width: 5px;
    height: 8px;
    fill: #fff;
}

.footer .l-foot {
    padding: 65px 0;
    background: #131f2d;
}

@media screen and (max-width: 960px) {
    .footer .l-foot {
        padding: 50px 0 100px;
    }
}

.footer .l-foot .footer-logo {
    margin: 0 65px 0 0;
}

@media screen and (max-width: 960px) {
    .footer .l-foot .footer-logo {
        margin: 0 auto 24px;
        -webkit-transform: translateX(-8px);
        transform: translateX(-8px);
    }
}

@media screen and (max-width: 960px) {
    .footer .l-foot .footer-info {
        width: 100%;
    }
}

.footer .l-foot .footer-info .footer-info-menu {
    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;
    margin: 0 0 16px;
    font-size: 1.4rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

.footer .l-foot .footer-info .footer-info-menu__item {
    margin: 0 8px 0 0;
}

@media screen and (max-width: 640px) {
    .footer .l-foot .footer-info .footer-info-menu__item {
        width: 50%;
        margin: 0;
    }
}

/*2020年3月　修正 start*/
.footer .l-foot .footer-info .footer-info-menu__item--modifier {
    margin: 0 20px;
}

@media screen and (max-width: 960px) {
    .footer .l-foot .footer-info .footer-info-menu__item--modifier {
        display: none;
    }
}

/*2020年3月　修正 start*/

.footer .l-foot .footer-info .footer-info-menu__item a {
    color: #ded9db;
}

@media screen and (max-width: 640px) {
    .footer .l-foot .footer-info .footer-info-menu__item a {
        display: block;
        margin: 0 0 5px;
        padding: 5px 0;
    }
}

.footer .l-foot .footer-info .footer-info-menu__item a:hover {
    text-decoration: underline;
}

.footer .l-foot .footer-info .footer-info-add {
    margin: 0 0 20px;
    color: #8b8486;
    font-size: 1.4rem;
    line-height: 1.6;
}

@media screen and (max-width: 640px) {
    .footer .l-foot .footer-info .footer-info-add {
        text-align: center;
    }
}

.footer .l-foot .footer-info .copy {
    color: #8b8486;
    font-size: 1.0rem;
}

@media screen and (max-width: 640px) {
    .footer .l-foot .footer-info .copy {
        text-align: center;
    }
}

#top .hero {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 130vh;
    background: url("../img/top/mv-bg01.png") center/cover no-repeat;
}

@media screen and (max-width: 960px) {
    #top .hero {
        background-image: url("../img/top/sp-mv-bg01.png");
    }
}

#top .hero .hero-bg {
    position: absolute;
    width: 100%;
    height: 100%;
}

#top .hero .hero-bg div[class*="view"] {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-animation-name: mv;
    animation-name: mv;
    -webkit-animation-duration: 8s;
    animation-duration: 8s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

#top .hero .hero-bg .view1 {
    background: url("../img/top/mv-bg02.png") center/cover no-repeat;
    -webkit-animation-delay: 3s;
    animation-delay: 3s;
}

#top .hero .hero-bg .view2 {
    background: url("../img/top/mv-bg03.png") center/cover no-repeat;
    -webkit-animation-delay: 3.1s;
    animation-delay: 3.1s;
}

#top .hero .hero-bg .view3 {
    background: url("../img/top/mv-bg04.png") center/cover no-repeat;
    -webkit-animation-delay: 3.2s;
    animation-delay: 3.2s;
}

#top .hero .hero-bg .view4 {
    background: url("../img/top/mv-bg05.png") center/cover no-repeat;
    -webkit-animation-delay: 3.3s;
    animation-delay: 3.3s;
}

#top .hero .hero-bg .view5 {
    background: url("../img/top/mv-bg06.png") center/cover no-repeat;
    -webkit-animation-delay: 3.4s;
    animation-delay: 3.4s;
}

#top .hero .hero-bg .view6 {
    background: url("../img/top/mv-bg01.png") center/cover no-repeat;
    -webkit-animation-delay: 3.5s;
    animation-delay: 3.5s;
}

@media screen and (max-width: 960px) {
    #top .hero .hero-bg .view1 {
        background-image: url("../img/top/sp-mv-bg02.png");
    }

    #top .hero .hero-bg .view2 {
        background-image: url("../img/top/sp-mv-bg03.png");
    }

    #top .hero .hero-bg .view3 {
        background-image: url("../img/top/sp-mv-bg04.png");
    }

    #top .hero .hero-bg .view4 {
        background-image: url("../img/top/sp-mv-bg05.png");
    }

    #top .hero .hero-bg .view5 {
        background-image: url("../img/top/sp-mv-bg06.png");
    }

    #top .hero .hero-bg .view6 {
        background-image: url("../img/top/sp-mv-bg01.png");
    }
}

@-webkit-keyframes mv {
    0% {
        opacity: 0;
    }
    2% {
        opacity: 1;
    }
    6% {
        opacity: 1;
    }
    8% {
        opacity: 0;
    }
}

@keyframes mv {
    0% {
        opacity: 0;
    }
    2% {
        opacity: 1;
    }
    6% {
        opacity: 1;
    }
    8% {
        opacity: 0;
    }
}

#top .hero .hero-inner {
    position: relative;
    max-width: 1280px;
    height: 100%;
    margin: 0 auto;
    padding: 0 40px;
}

@media screen and (max-width: 960px) {
    #top .hero .hero-inner {
        padding: 0 32px;
    }
}

@media screen and (max-width: 400px) {
    #top .hero .hero-inner {
        padding: 0 16px;
    }
}

#top .hero .hero-content {
    position: absolute;
    bottom: 86px;
    color: #ded9db;
}

@media screen and (max-width: 960px) {
    #top .hero .hero-content {
        bottom: 64px;
    }
}

@media screen and (max-width: 640px) {
    #top .hero .hero-content {
        bottom: 32px;
    }
}

#top .hero .hero-content__catch {
    margin: 0 0 32px;
    font-size: 9.6rem;
    font-weight: bold;
    line-height: 1;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    #top .hero .hero-content__catch {
        font-size: 8.0rem;
    }
}

@media screen and (max-width: 960px) {
    #top .hero .hero-content__catch {
        font-size: 6.4rem;
    }
}

@media screen and (max-width: 640px) {
    #top .hero .hero-content__catch {
        font-size: 4.8rem;
    }
}

@media screen and (max-width: 400px) {
    #top .hero .hero-content__catch {
        font-size: 3.2rem;
    }
}

#top .hero .hero-content__lead {
    margin: 0 0 32px;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 2;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    #top .hero .hero-content__lead {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 640px) {
    #top .hero .hero-content__lead {
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 400px) {
    #top .hero .hero-content__lead {
        font-size: 1.2rem;
    }
}

#top .about.delighter {
    position: relative;
    height: 100vh;
    background: url("../img/top/about-bg.jpg") center/cover no-repeat;
}

@media screen and (max-width: 960px) {
    #top .about.delighter {
        background-image: url("../img/top/sp-about-bg.png");
    }
}

#top .about.delighter .about-inner {
    opacity: 0;
    -webkit-transform: translateY(60px);
    transform: translateY(60px);
    padding: 220px 0 0;
    -webkit-transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out, -webkit-transform 1s ease-out;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
}

@media screen and (max-width: 960px) {
    #top .about.delighter .about-inner {
        padding: 128px 0 0;
    }
}

@media screen and (max-width: 400px) {
    #top .about.delighter .about-inner {
        padding: 80px 0 0;
    }
}

#top .about.delighter.started .about-inner {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

#top .full-content.delighter {
    position: relative;
    height: 100vh;
}

#top .full-content.delighter::before, #top .full-content.delighter::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    z-index: -4;
    height: 100%;
    width: calc(50% + 600px);
    background: center / cover no-repeat;
    -webkit-transition: opacity 1s ease-out;
    transition: opacity 1s ease-out;
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
}

@media screen and (max-width: 960px) {
    #top .full-content.delighter::before, #top .full-content.delighter::after {
        width: 100%;
    }
}

#top .full-content.delighter::after {
    opacity: 0;
    z-index: -3;
}

#top .full-content.delighter .full-content-deco {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
}

#top .full-content.delighter .full-content-deco::before, #top .full-content.delighter .full-content-deco::after {
    content: "";
    display: block;
    position: absolute;
}

@media screen and (max-width: 960px) {
    #top .full-content.delighter .full-content-deco::before, #top .full-content.delighter .full-content-deco::after {
        display: none;
    }
}

#top .full-content.delighter .full-content-deco::before {
    bottom: 0;
    z-index: -2;
    width: 560px;
    height: 92%;
}

#top .full-content.delighter .full-content-deco::after {
    top: 0;
    width: 420px;
    z-index: -1;
    height: 100%;
}

#top .full-content.delighter .full-content-inner {
    position: relative;
    max-width: 1280px;
    height: 100%;
    margin: 0 auto;
    padding: 0 40px;
}

@media screen and (max-width: 960px) {
    #top .full-content.delighter .full-content-inner {
        padding: 0 32px;
    }
}

@media screen and (max-width: 400px) {
    #top .full-content.delighter .full-content-inner {
        padding: 0 16px;
    }
}

#top .full-content.delighter .full-content-dtl {
    opacity: 0;
    position: absolute;
    bottom: 100px;
    color: #172b41;
    -webkit-transform: translateY(60px);
    transform: translateY(60px);
    -webkit-transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out, -webkit-transform 1s ease-out;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
}

@media screen and (max-width: 960px) {
    #top .full-content.delighter .full-content-dtl {
        bottom: 64px;
    }
}

@media screen and (max-width: 640px) {
    #top .full-content.delighter .full-content-dtl {
        bottom: 32px;
    }
}

#top .full-content.delighter .full-content-dtl__catch {
    margin: 0 0 32px;
    font-size: 13.2rem;
    font-weight: bold;
    line-height: 0.9;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    #top .full-content.delighter .full-content-dtl__catch {
        font-size: 1 1.2rem;
    }
}

@media screen and (max-width: 960px) {
    #top .full-content.delighter .full-content-dtl__catch {
        margin: 0 0 24px;
        font-size: 9.6rem;
    }
}

@media screen and (max-width: 640px) {
    #top .full-content.delighter .full-content-dtl__catch {
        margin: 0 0 16px;
        font-size: 7.2rem;
    }
}

@media screen and (max-width: 400px) {
    #top .full-content.delighter .full-content-dtl__catch {
        font-size: 5.6rem;
    }
}

#top .full-content.delighter .full-content-dtl__lead {
    margin: 0 0 32px;
    font-size: 3.2rem;
    letter-spacing: .05em;
    line-height: 0.9;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    #top .full-content.delighter .full-content-dtl__lead {
        margin: 0 0 24px;
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 640px) {
    #top .full-content.delighter .full-content-dtl__lead {
        margin: 0 0 16px;
    }
}

#top .full-content.delighter.started::after {
    opacity: 1;
}

#top .full-content.delighter.started .full-content-dtl {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

#top .for-safety.delighter::before, #top .for-safety.delighter::after {
    right: 0;
    background-image: url("../img/top/safety-bg01.png");
}

@media screen and (max-width: 960px) {
    #top .for-safety.delighter::before, #top .for-safety.delighter::after {
        background-image: url("../img/top/sp-safety-bg01.png");
    }
}

#top .for-safety.delighter::after {
    background-image: url("../img/top/safety-bg02.png");
}

@media screen and (max-width: 960px) {
    #top .for-safety.delighter::after {
        background-image: url("../img/top/sp-safety-bg02.png");
    }
}

#top .for-safety.delighter .full-content-deco::before, #top .for-safety.delighter .full-content-deco::after {
    left: calc(50% - 600px);
}

#top .for-safety.delighter .full-content-deco::before {
    background: -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(50%, transparent), color-stop(50%, #dbd3d6), to(#dbd3d6));
    background: linear-gradient(to left bottom, transparent, transparent 50%, #dbd3d6 50%, #dbd3d6);
}

#top .for-safety.delighter .full-content-deco::after {
    background: -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(50%, transparent), color-stop(50%, #fff), to(#fff));
    background: linear-gradient(to left bottom, transparent, transparent 50%, #fff 50%, #fff);
}

#top .for-work.delighter::before {
    left: 0;
    background-image: url("../img/top/work-bg01.png");
}

@media screen and (max-width: 960px) {
    #top .for-work.delighter::before {
        background-image: url("../img/top/sp-work-bg01.png");
    }
}

#top .for-work.delighter::after {
    left: 0;
    background-image: url("../img/top/work-bg02.png");
}

@media screen and (max-width: 960px) {
    #top .for-work.delighter::after {
        background-image: url("../img/top/sp-work-bg02.png");
    }
}

#top .for-work.delighter .full-content-deco::before {
    right: calc(50% - 600px);
    background: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(50%, transparent), color-stop(50%, #dbd3d6), to(#dbd3d6));
    background: linear-gradient(to right bottom, transparent, transparent 50%, #dbd3d6 50%, #dbd3d6);
}

#top .for-work.delighter .full-content-deco::after {
    right: calc(50% - 600px);
    background: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(50%, transparent), color-stop(50%, #fff), to(#fff));
    background: linear-gradient(to right bottom, transparent, transparent 50%, #fff 50%, #fff);
}

#top .for-work.delighter .full-content-dtl {
    right: 40px;
}

@media screen and (max-width: 960px) {
    #top .for-work.delighter .full-content-dtl {
        right: auto;
    }
}

#top .for-comfort.delighter::before {
    right: 0;
    background-image: url("../img/top/comfort-bg01.png");
}

@media screen and (max-width: 960px) {
    #top .for-comfort.delighter::before {
        background-image: url("../img/top/sp-comfort-bg01.png");
    }
}

#top .for-comfort.delighter::after {
    right: 0;
    background-image: url("../img/top/comfort-bg02.png");
}

@media screen and (max-width: 960px) {
    #top .for-comfort.delighter::after {
        background-image: url("../img/top/sp-comfort-bg02.png");
    }
}

#top .for-comfort.delighter .full-content-deco::before, #top .for-comfort.delighter .full-content-deco::after {
    left: calc(50% - 600px);
}

#top .for-comfort.delighter .full-content-deco::before {
    background: -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(50%, transparent), color-stop(50%, #dbd3d6), to(#dbd3d6));
    background: linear-gradient(to left bottom, transparent, transparent 50%, #dbd3d6 50%, #dbd3d6);
}

#top .for-comfort.delighter .full-content-deco::after {
    background: -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(50%, transparent), color-stop(50%, #fff), to(#fff));
    background: linear-gradient(to left bottom, transparent, transparent 50%, #fff 50%, #fff);
}

#top .biz {
    overflow: hidden;
    position: relative;
    padding: 120px 0;
}

@media screen and (max-width: 960px) {
    #top .biz {
        padding: 96px 0;
    }
}

@media screen and (max-width: 640px) {
    #top .biz {
        padding: 64px 0;
    }
}

#top .biz::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    z-index: -2;
    width: 620px;
    height: 446px;
    background: url("../img/top/biz-bg01.jpg") top right/contain no-repeat;
}

@media screen and (max-width: 960px) {
    #top .biz::before {
        width: 100%;
        height: 16%;
    }
}

@media screen and (max-width: 640px) {
    #top .biz::before {
        height: 10%;
    }
}

#top .biz::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    width: 680px;
    height: 416px;
    background: url("../img/top/biz-bg02.jpg") bottom left/contain no-repeat;
}

@media screen and (max-width: 960px) {
    #top .biz::after {
        width: 100%;
        height: 20%;
    }
}

@media screen and (max-width: 640px) {
    #top .biz::after {
        height: 16%;
    }
}

#top .biz .biz-content {
    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;
}

@media screen and (max-width: 1280px) {
    #top .biz .biz-content {
        width: 92%;
        margin: 0 auto;
    }
}

#top .biz .biz-content .biz-content-col {
    position: relative;
    width: 33.33%;
    margin: 0 0 50px;
}

@media screen and (max-width: 1280px) {
    #top .biz .biz-content .biz-content-col {
        width: 40%;
    }
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content .biz-content-col {
        width: 100%;
    }
}

#top .biz .biz-content .biz-content-col::before {
    content: "";
    position: absolute;
    z-index: -1;
    color: #ded9db;
    font-size: 11rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    #top .biz .biz-content .biz-content-col::before {
        font-size: 8.8rem;
    }
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content .biz-content-col::before {
        font-size: 7.2rem;
    }
}

@media screen and (max-width: 400px) {
    #top .biz .biz-content .biz-content-col::before {
        font-size: 5.6rem;
    }
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content .biz-content-col .biz-vsl {
        width: 86%;
    }
}

@media screen and (max-width: 640px) {
    #top .biz .biz-content .biz-content-col .biz-vsl {
        width: 126%;
        -webkit-transform: translateX(-26%);
        transform: translateX(-26%);
    }
}

#top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-catch {
    margin: 0 0 10px;
    text-align: center;
    font-family: 'HiraKakuPro-W6';
}

#top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-catch.consult-catch {
    text-align: left;
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-catch.consult-catch {
        text-align: center;
    }
}

#top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-ttl3 {
    margin: 0 0 30px;
    font-size: 3.6rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 400px) {
    #top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-ttl3 {
        font-size: 2.8rem;
    }
}

#top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-ttl3.consult-ttl3 {
    text-align: left;
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-ttl3.consult-ttl3 {
        text-align: center;
    }
}

#top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-ttl3 a {
    position: relative;
    padding: 0 0 0 32px;
}

#top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-ttl3 a .arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background: #131f2d;
    border: solid 1px #131f2d;
    border-radius: 12px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: background .3s ease-out;
    transition: background .3s ease-out;
}

#top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-ttl3 a .arrow .ico-arrow {
    width: 5px;
    height: 8px;
    fill: #fff;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

#top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-text {
    text-align: center;
    line-height: 2;
}

#top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-text.consult-text {
    text-align: left;
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content .biz-content-col .biz-dtl .biz-dtl-text.consult-text {
        text-align: center;
    }
}

#top .biz .biz-content-col.service::before {
    content: "Service";
    top: 50%;
    right: -260px;
    -webkit-transform: translateY(-50%) rotateZ(-90deg);
    transform: translateY(-50%) rotateZ(-90deg);
}

@media screen and (max-width: 1280px) {
    #top .biz .biz-content-col.service::before {
        right: -200px;
    }
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content-col.service::before {
        top: -56px;
        right: 20%;
        -webkit-transform: translateY(0) rotateZ(-90deg);
        transform: translateY(0) rotateZ(-90deg);
        -webkit-transform-origin: right;
        transform-origin: right;
    }
}

@media screen and (max-width: 640px) {
    #top .biz .biz-content-col.service::before {
        right: 10px;
    }
}

#top .biz .biz-content-col.product::before {
    content: "Product";
    top: 50%;
    left: -260px;
    -webkit-transform: translateY(-50%) rotateZ(90deg);
    transform: translateY(-50%) rotateZ(90deg);
}

@media screen and (max-width: 1280px) {
    #top .biz .biz-content-col.product::before {
        left: -200px;
    }
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content-col.product::before {
        top: -56px;
        left: auto;
        right: 20%;
        -webkit-transform: translateY(0) rotateZ(-90deg);
        transform: translateY(0) rotateZ(-90deg);
        -webkit-transform-origin: right;
        transform-origin: right;
    }
}

@media screen and (max-width: 640px) {
    #top .biz .biz-content-col.product::before {
        right: 10px;
    }
}

#top .biz .biz-content-col.product::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 100%;
    width: 100%;
    height: 100%;
    background: url("../img/top/biz-illust.svg") center/144px no-repeat;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media screen and (max-width: 1280px) {
    #top .biz .biz-content-col.product::after {
        width: 50%;
        background-size: 77px;
    }
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content-col.product::after {
        display: none;
    }
}

#top .biz .biz-content-col.consult {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    margin: 0;
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content-col.consult {
        display: block;
        margin: 0 0 40px;
    }
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content-col.consult::before {
        content: "Consulting";
        top: -56px;
        right: 20%;
        -webkit-transform: rotateZ(-90deg);
        transform: rotateZ(-90deg);
        -webkit-transform-origin: right;
        transform-origin: right;
    }
}

@media screen and (max-width: 640px) {
    #top .biz .biz-content-col.consult::before {
        right: 10px;
    }
}

#top .biz .biz-content-col.consult .biz-vsl {
    width: 33.33%;
}

@media screen and (max-width: 1280px) {
    #top .biz .biz-content-col.consult .biz-vsl {
        width: 40%;
    }
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content-col.consult .biz-vsl {
        width: 86%;
    }
}

@media screen and (max-width: 640px) {
    #top .biz .biz-content-col.consult .biz-vsl {
        width: 126%;
    }
}

#top .biz .biz-content-col.consult .biz-dtl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    width: calc(66.66% - 40px);
    height: 100%;
}

@media screen and (max-width: 1280px) {
    #top .biz .biz-content-col.consult .biz-dtl {
        width: calc(60% - 40px);
    }
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content-col.consult .biz-dtl {
        width: 100%;
        height: auto;
    }
}

#top .biz .biz-content-col.consult .biz-dtl::before {
    content: "Consulting";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    color: #ded9db;
    font-size: 11rem;
    line-height: 1.3;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    #top .biz .biz-content-col.consult .biz-dtl::before {
        font-size: 8.8rem;
    }
}

@media screen and (max-width: 960px) {
    #top .biz .biz-content-col.consult .biz-dtl::before {
        display: none;
    }
}

#top .news {
    padding: 100px 0;
    background: #f7fafd;
}

@media screen and (max-width: 1280px) {
    #top .news {
        padding: 80px 0;
    }
}

@media screen and (max-width: 960px) {
    #top .news {
        padding: 64px 0;
    }
}

#top .news .news-ttl2 {
    width: 240px;
}

@media screen and (max-width: 1280px) {
    #top .news .news-ttl2 {
        width: 200px;
    }
}

@media screen and (max-width: 960px) {
    #top .news .news-ttl2 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
        margin: 0 0 40px;
    }
}

#top .news .news-ttl2__main {
    margin: 0 0 60px;
    font-size: 2rem;
    line-height: 1;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    #top .news .news-ttl2__main {
        margin: 0 auto 0 8px;
        font-size: 1.6rem;
    }
}

#top .news .news-ttl2__sub {
    margin: 0 0 16px;
    font-size: 4.8rem;
    font-weight: bold;
    line-height: 0.8;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 960px) {
    #top .news .news-ttl2__sub {
        font-size: 4.2rem;
    }
}

@media screen and (max-width: 960px) {
    #top .news .news-ttl2__sub {
        font-size: 3.6rem;
    }
}

#top .news .news-dtl {
    width: calc(100% - 300px);
}

@media screen and (max-width: 1280px) {
    #top .news .news-dtl {
        width: calc(100% - 240px);
    }
}

@media screen and (max-width: 960px) {
    #top .news .news-dtl {
        width: 100%;
    }
}

#top .news .news-dtl .news-list {
    margin: 0 0 48px;
}

#top .news .news-dtl .news-list__item {
    padding: 25px 0 20px;
    border-bottom: solid 1px #cfd9e9;
}

#top .news .news-dtl .news-list__item .news-meta {
    margin: 0 0 5px;
    font-size: 1.2rem;
}

#top .news .news-dtl .news-list__item .news-meta__cate {
    margin: 0 16px 0 0;
    padding: 0 16px 0 0;
    border-right: solid 1px #cfd9e9;
    font-weight: bold;
}

#top .news .news-dtl .news-list__item .news-meta__date {
    color: #597098;
    font-weight: 300;
    font-family: "Roboto", sans-serif;
}

#top .news .news-dtl .news-list__item dd {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

#top .news .news-dtl .news-list__item dd a {
    overflow: hidden;
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
}

#top .news .news-dtl .news-list__item dd a:hover {
    -webkit-transform: translateX(6px);
    transform: translateX(6px);
}

#top .news .news-dtl .news-list__item dd a svg {
    margin: 0 8px 4px 0;
}

#top .career {
    padding: 75px 0;
    background: url("../img/top/career-bg.jpg") center/cover no-repeat;
}

@media screen and (max-width: 960px) {
    #top .career {
        padding: 64px 0;
        background-image: url("../img/top/sp-career-bg.jpg");
    }
}

#top .career .career-dtl {
    max-width: 420px;
    margin: 0 auto;
    padding: 40px;
    background: #1c3959;
    color: #fff;
}

@media screen and (max-width: 960px) {
    #top .career .career-dtl {
        padding: 32px 24px;
    }
}

#top .career .career-text {
    margin: 0 0 24px;
    text-align: center;
}

#about .vision .vision-catch,
#about-english .vision .vision-catch {
    font-size: 3.2rem;
    font-family: 'HiraKakuPro-W6';
}


@media screen and (max-width: 960px) {
    #about .vision .vision-catch,
    #about-english .vision .vision-catch {
        font-size: 2rem;
    }
}

/*2020年3月　追加 start*/
.vision .wrap {
    margin-top: 60px;
}

/*2020年3月　追加　end*/


#concept .tec {
    position: relative;
    z-index: 1;
    padding: 100px 0;
    background: #eef2f7;
}

#concept .tec::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 50%;
    background: url("../img/about/tec-bg.png") bottom/cover no-repeat;
}

#concept .tec .tec-catch {
    margin: 0 0 16px;
    color: #fff;
    font-size: 4.8rem;
    text-align: center;
    line-height: 1.4;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 1280px) {
    #concept .tec .tec-catch {
        font-size: 4.0rem;
    }
}

@media screen and (max-width: 960px) {
    #concept .tec .tec-catch {
        font-size: 3.2rem;
    }
}

#concept .tec .tec-text {
    margin: 0 0 32px;
    color: #fff;
    text-align: center;
}

#concept .tec .l-tec-grid2 {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1px 1fr;
    -ms-grid-rows: 1fr 1px 1fr;
    grid-template-columns: repeat(2, calc(50% - 0.5px));
    grid-gap: 1px 1px;
    background: #131f2d;
    color: #fff;
}

@media screen and (max-width: 640px) {
    #concept .tec .l-tec-grid2 {
        -ms-grid-columns: 100%;
        -ms-grid-rows: 1fr 1px 1fr 1px 1fr 1px 1fr;
        grid-template-columns: repeat(1, 100%);
        grid-gap: 1px 0;
    }
}

#concept .tec .l-tec-grid2 .l-tec-card {
    position: relative;
    padding: 80px 40px 64px;
    background: #1c3959;
}

@media screen and (max-width: 1280px) {
    #concept .tec .l-tec-grid2 .l-tec-card {
        padding: 72px 32px 48px;
    }
}

@media screen and (max-width: 960px) {
    #concept .tec .l-tec-grid2 .l-tec-card {
        padding: 64px 24px 32px;
    }
}

@media screen and (max-width: 640px) {
    #concept .tec .l-tec-grid2 .l-tec-card {
        padding: 48px 16px 24px;
    }
}

#concept .tec .l-tec-grid2 .l-tec-card:nth-of-type(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
}

#concept .tec .l-tec-grid2 .l-tec-card:nth-of-type(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
}

@media screen and (max-width: 640px) {
    #concept .tec .l-tec-grid2 .l-tec-card:nth-of-type(2) {
        -ms-grid-row: 3;
        -ms-grid-column: 1;
    }
}

#concept .tec .l-tec-grid2 .l-tec-card:nth-of-type(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
}

@media screen and (max-width: 640px) {
    #concept .tec .l-tec-grid2 .l-tec-card:nth-of-type(3) {
        -ms-grid-row: 5;
    }
}

#concept .tec .l-tec-grid2 .l-tec-card:nth-of-type(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
}

@media screen and (max-width: 640px) {
    #concept .tec .l-tec-grid2 .l-tec-card:nth-of-type(4) {
        -ms-grid-row: 7;
        -ms-grid-column: 1;
    }
}

#concept .tec .tec-reason-num {
    position: absolute;
    top: 40px;
    font-size: 6.4rem;
    font-weight: bold;
    line-height: 1;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    #concept .tec .tec-reason-num {
        top: 32px;
        font-size: 4.8rem;
    }
}

@media screen and (max-width: 960px) {
    #concept .tec .tec-reason-num {
        top: 32px;
        font-size: 4.0rem;
    }
}

@media screen and (max-width: 640px) {
    #concept .tec .tec-reason-num {
        top: 24px;
        font-size: 3.2rem;
    }
}

#concept .tec .tec-reason-vsl {
    margin: 0 0 10px;
}

#concept .tec .tec-reason-ttl3 {
    margin: 0 0 20px;
}

#concept .tec .tec-reason-ttl3__main {
    font-size: 3.2rem;
    line-height: 1;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    #concept .tec .tec-reason-ttl3__main {
        font-size: 2.4rem;
        line-height: 1.4;
    }
}

@media screen and (max-width: 640px) {
    #concept .tec .tec-reason-ttl3__main {
        font-size: 2rem;
    }
}

#concept .tec .tec-reason-ttl3__sub {
    margin: 0 0 10px;
    font-size: 2rem;
    font-weight: bold;
    line-height: 1;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 960px) {
    #concept .tec .tec-reason-ttl3__sub {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 640px) {
    #concept .tec .tec-reason-ttl3__sub {
        font-size: 1.4rem;
    }
}

#about .corp,
#about-english .corp {
    padding: 0 0 40px;
}

#about .corp .corp-data__item,
#about-english .corp .corp-data__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#about .corp .corp-data__item:first-child dt,
#about-english .corp .corp-data__item:first-child dt {
    border-top: solid 1px #1c3959;
}

@media screen and (max-width: 640px) {
    #about .corp .corp-data__item:first-child dt,
    #about-english .corp .corp-data__item:first-child dt {
        border-top: none;
    }
}

#about .corp .corp-data__item:first-child dd,
#about-english .corp .corp-data__item:first-child dd {
    border-top: solid 1px #cfd9e9;
}

@media screen and (max-width: 640px) {
    #about .corp .corp-data__item:first-child dd,
    #about-english .corp .corp-data__item:first-child dd {
        border-top: none;
    }
}

#about .corp .corp-data__item dt,
#about-english .corp .corp-data__item dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 240px;
    border-bottom: solid 1px #1c3959;
    color: #597098;
}

@media screen and (max-width: 960px) {
    #about .corp .corp-data__item dt,
    #about-english .corp .corp-data__item dt {
        width: 200px;
    }
}

@media screen and (max-width: 640px) {
    #about .corp .corp-data__item dt,
    #about-english .corp .corp-data__item dt {
        position: relative;
        display: block;
        width: 100%;
        padding: 0 0 8px;
        border-color: #cfd9e9;
    }
}

@media screen and (max-width: 640px) {
    #about .corp .corp-data__item dt::after,
    #about-english .corp .corp-data__item dt::after {
        content: "";
        display: block;
        position: absolute;
        bottom: -1px;
        left: 0;
        width: 32px;
        height: 1px;
        background: #1c3959;
    }
}

#about .corp .corp-data__item dd,
#about-english .corp .corp-data__item dd {
    width: calc(100% - 240px);
    padding: 25px;
    border-bottom: solid 1px #cfd9e9;
}

@media screen and (max-width: 960px) {
    #about .corp .corp-data__item dd,
    #about-english .corp .corp-data__item dd {
        width: calc(100% - 200px);
    }
}

@media screen and (max-width: 640px) {
    #about .corp .corp-data__item dd,
    #about-english .corp .corp-data__item dd {
        width: 100%;
        padding: 10px 0 20px;
        border: none;
    }
}

#about .corp .corp-data__item dd a.link,
#about-english .corp .corp-data__item dd a.link {
    font-weight: bold;
    text-decoration: underline;
}

#about .corp .corp-data__item dd a.link:hover,
#about-english .corp .corp-data__item dd a.link:hover {
    text-decoration: none;
}

/*2020年3月　追加 start*/
#about .corp .corp-data__item .corp-data__item__email,
#about-english .corp .corp-data__item .corp-data__item__email {
    padding: 25px;
    max-width: 300px;
    max-height: 100px;
    width: auto;
    height: auto;
}

@media screen and (max-width: 640px) {
    #about .corp .corp-data__item .corp-data__item__email,
    #about-english .corp .corp-data__item .corp-data__item__email {
        padding: 0;
        max-height: 25px;
        max-width: 250px;
        margin: 10px 0 10px;
    }
}

/*2020年3月　追加 end*/

#concept .about-catch {
    margin: 0 0 24px;
    font-size: 3.2rem;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #concept .about-catch {
        margin: 0 0 16px;
        font-size: 2rem;
    }
}

#concept .future .l-future-unit3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#concept .future .l-future-unit3 .l-future-col {
    width: 33.33%;
}

@media screen and (max-width: 768px) {
    #concept .future .l-future-unit3 .l-future-col {
        width: 100%;
    }
}

#concept .future .future-safety {
    position: relative;
    z-index: 1;
    padding: 34% 0 2%;
}

@media screen and (max-width: 768px) {
    #concept .future .future-safety {
        margin: 0 0 64px;
        padding: 92% 0 8%;
    }
}

#concept .future .future-safety::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background: url("../img/concept/future-safety-bg.jpg.png") top/cover no-repeat;
}

#concept .future .future-work {
    position: relative;
    z-index: 1;
    padding: 34% 0 2%;
}

@media screen and (max-width: 768px) {
    #concept .future .future-work {
        margin: 0 0 64px;
        padding: 92% 0 8%;
    }
}

#concept .future .future-work::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background: url("../img/concept/future-work-bg.jpg.png") top/cover no-repeat;
}

#concept .future .future-comfort {
    position: relative;
    z-index: 1;
    padding: 34% 0 2%;
}

@media screen and (max-width: 768px) {
    #concept .future .future-comfort {
        margin: 0 0 32px;
        padding: 92% 0 8%;
    }
}

#concept .future .future-comfort::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background: url("../img/concept/future-comfort-bg.jpg.png") top/cover no-repeat;
}

#concept .future .future-dtl {
    padding: 0 64px;
}

@media screen and (max-width: 1280px) {
    #concept .future .future-dtl {
        padding: 0 56px;
    }
}

@media screen and (max-width: 960px) {
    #concept .future .future-dtl {
        padding: 0 40px;
    }
}

@media screen and (max-width: 768px) {
    #concept .future .future-dtl {
        padding: 0 32px;
    }
}

@media screen and (max-width: 400px) {
    #concept .future .future-dtl {
        padding: 0 16px;
    }
}

#concept .future .future-dtl .future-dtl-ttl {
    margin: 0 0 24px;
}

#concept .future .future-dtl .future-dtl-ttl__sub {
    margin: 0 0 16px;
    font-size: 2rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    #concept .future .future-dtl .future-dtl-ttl__sub {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 960px) {
    #concept .future .future-dtl .future-dtl-ttl__sub {
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 768px) {
    #concept .future .future-dtl .future-dtl-ttl__sub {
        font-size: 1.2rem;
    }
}

#concept .future .future-dtl .future-dtl-ttl__main {
    font-size: 3.2rem;
    line-height: 1.4;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 1280px) {
    #concept .future .future-dtl .future-dtl-ttl__main {
        font-size: 2.8rem;
    }
}

@media screen and (max-width: 768px) {
    #concept .future .future-dtl .future-dtl-ttl__main {
        font-size: 2.4rem;
    }
}

#concept .future .future-dtl .text {
    line-height: 2;
}

/*2020年3月　追加 start*/
#business .model .l-model-unit2,
#business-english .model .l-model-unit2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#business .model .l-model-unit2 .l-model-col,
#business-english .model .l-model-unit2 .l-model-col {
    width: 50%;
}

@media screen and (max-width: 768px) {
    #business .model .l-model-unit2 .l-model-col,
    #business-english .model .l-model-unit2 .l-model-col {
        width: 100%;
    }
}

#business .model .model-catch,
#business-english .model .model-catch {
    margin: 0 0 24px;
    font-size: 3.2rem;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #business .model .model-catch,
    #business-english .model .model-catch {
        margin: 0 0 16px;
        padding: 0 32px;
        font-size: 2rem;
    }
}

@media screen and (max-width: 400px) {
    #business .model .model-catch,
    #business-english .model .model-catch {
        padding: 0 16px;
    }
}

@media screen and (max-width: 768px) {
    #business .model .text,
    #business-english .model .text {
        padding: 0 32px;
    }
}

@media screen and (max-width: 400px) {
    #business .model .text,
    #business-english .model .text {
        padding: 0 16px;
    }
}

#business .model-inner,
#business-english .model-inner {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
}

@media screen and (max-width: 960px) {
    #business .model-inner,
    #business-english .model-inner {
        padding: 0 32px;
    }
}

@media screen and (max-width: 768px) {
    #business .model-inner,
    #business-english .model-inner {
        padding: 0;
    }
}

/*2020年3月　追加 end*/

#concept .model-solution,
#concept .model-box {
    background: right/contain no-repeat #172b41;
}

#concept .model-solution a,
#concept .model-box a {
    display: block;
    position: relative;
    padding: 48px 64px 64px;
}

@media screen and (max-width: 768px) {
    #concept .model-solution a,
    #concept .model-box a {
        padding: 32px 32px 48px;
    }
}

#concept .model-solution a .model-dtl .model-dtl-catch,
#concept .model-box a .model-dtl .model-dtl-catch {
    margin: 0 0 24px;
    color: #ded9db;
    font-size: 3.2rem;
    line-height: 1.4;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #concept .model-solution a .model-dtl .model-dtl-catch,
    #concept .model-box a .model-dtl .model-dtl-catch {
        margin: 0 0 16px;
        font-size: 2rem;
        text-align: center;
    }
}

#concept .model-solution a .model-dtl .model-dtl-text,
#concept .model-box a .model-dtl .model-dtl-text {
    margin: 0 0 48px;
    color: #ded9db;
    text-align: justify;
}

@media screen and (max-width: 768px) {
    #concept .model-solution a .model-dtl .model-dtl-text,
    #concept .model-box a .model-dtl .model-dtl-text {
        margin: 0 0 32px;
        text-align: center;
    }
}

#concept .model-solution a .model-dtl .model-dtl-link,
#concept .model-box a .model-dtl .model-dtl-link {
    position: relative;
    width: 100%;
    max-width: 240px;
    height: 48px;
    border: solid 2px #ded9db;
    border-radius: 24px;
    color: #ded9db;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    line-height: 44px;
    font-family: "Roboto", sans-serif;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

@media screen and (max-width: 768px) {
    #concept .model-solution a .model-dtl .model-dtl-link,
    #concept .model-box a .model-dtl .model-dtl-link {
        max-width: 320px;
        margin: 0 auto;
    }
}

#concept .model-solution a .model-dtl .model-dtl-link .ico-arrow,
#concept .model-box a .model-dtl .model-dtl-link .ico-arrow {
    position: absolute;
    top: 50%;
    left: 24px;
    fill: #fff;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

#concept .model-solution a:hover .model-dtl-link,
#concept .model-box a:hover .model-dtl-link {
    background: #ded9db;
    color: #172b41;
}

#concept .model-solution a:hover .model-dtl-link .ico-arrow,
#concept .model-box a:hover .model-dtl-link .ico-arrow {
    fill: #172b41;
}

#concept .model-solution {
    background-image: url("../img/concept/model-solution-bg.png");
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    #concept .model-solution {
        background-image: url("../img/concept/model-solution-bg@2x.png");
    }
}

#concept .model-box {
    background-image: url("../img/concept/model-box-bg.png");
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    #concept .model-box {
        background-image: url("../img/concept/model-box-bg@2x.png");
    }
}

#concept .platform {
    padding: 80px 0;
    background: url("../img/concept/platform-bg.jpg") bottom/cover no-repeat;
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    #concept .platform {
        background: url("../img/concept/platform-bg@2x.jpg") bottom/cover no-repeat;
    }
}

@media screen and (max-width: 768px) {
    #concept .platform {
        padding: 64px 0;
    }
}

#concept .platform .platform-ttl2 {
    margin: 0 0 16px;
    color: #ded9db;
    font-size: 4.8rem;
    text-align: center;
    line-height: 1.4;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #concept .platform .platform-ttl2 {
        font-size: 3.2rem;
    }
}

#concept .platform .platform-text {
    margin: 0 0 40px;
    color: #ded9db;
    text-align: center;
}

#concept .platform .platform-img {
    width: 100%;
    max-width: 540px;
    margin: 0 auto 40px;
}

#evidence .evidence .evidence-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: calc(100% - 40px);
    max-width: 1200px;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    #evidence .evidence .evidence-content {
        width: calc(100% - 32px);
    }
}

#evidence .evidence .evidence-content .evidence-content-vsl {
    width: 60%;
}

@media screen and (max-width: 768px) {
    #evidence .evidence .evidence-content .evidence-content-vsl {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        width: 100%;
        margin: 0 0 16px 0;
    }
}

#evidence .evidence .evidence-content .evidence-content-dtl {
    width: 40%;
}

@media screen and (max-width: 768px) {
    #evidence .evidence .evidence-content .evidence-content-dtl {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        width: 100%;
    }
}

#evidence .evidence .evidence-content .evidence-content-dtl__catch {
    margin: 0 0 24px;
    font-size: 3.2rem;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #evidence .evidence .evidence-content .evidence-content-dtl__catch {
        margin: 0 0 16px;
        font-size: 2rem;
    }
}

#evidence .evidence .evidence-content--cloud {
    padding-bottom: 64px;
    margin-bottom: 64px;
    border-bottom: 1px solid #cfd9e9;
}

@media screen and (max-width: 768px) {
    #evidence .evidence .evidence-content--cloud {
        padding-bottom: 32px;
        margin-bottom: 32px;
    }
}

#evidence .evidence .evidence-content--cloud .evidence-content-dtl {
    padding-left: 80px;
    border-left: 1px solid #cfd9e9;
}

@media screen and (max-width: 768px) {
    #evidence .evidence .evidence-content--cloud .evidence-content-dtl {
        padding-left: 0px;
        border: none;
    }
}

#evidence .evidence .evidence-content--edge .evidence-content-dtl {
    padding-right: 80px;
    border-right: 1px solid #cfd9e9;
}

@media screen and (max-width: 768px) {
    #evidence .evidence .evidence-content--edge .evidence-content-dtl {
        padding-right: 0px;
        border: none;
    }
}

@media screen and (max-width: 960px) {
    #business .biz
    #business-english .biz {
        overflow: hidden;
    }
}

#business .biz .biz-inner,
#business-english .biz .biz-inner {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
}

@media screen and (max-width: 960px) {
    #business .biz .biz-inner,
    #business-english .biz .biz-inner {
        padding: 0 32px;
    }
}

@media screen and (max-width: 640px) {
    #business .biz .biz-inner,
    #business-english .biz .biz-inner {
        padding: 0;
    }
}

#business .biz .l-biz-unit3,
#business-english .biz .l-biz-unit3 {
    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;
}

#business .biz .l-biz-unit3 .l-biz-col,
#business-english .biz .l-biz-unit3 .l-biz-col {
    width: 31.33%;
    margin: 0 0 50px;
}

@media screen and (max-width: 960px) {
    #business .biz .l-biz-unit3 .l-biz-col,
    #business-english .biz .l-biz-unit3 .l-biz-col {
        width: 100%;
        margin: 0 auto 40px;
    }
}

@media screen and (max-width: 960px) {
    #business .biz .l-biz-unit3 .l-biz-col:not(:last-child),
    #business-english .biz .l-biz-unit3 .l-biz-col:not(:last-child) {
        padding: 0 0 40px;
        border-bottom: solid 1px #cfd9e9;
    }
}

@media screen and (max-width: 960px) {
    #business .biz .l-biz-unit3 .l-biz-col .l-biz-head,
    #business-english .biz .l-biz-unit3 .l-biz-col .l-biz-head {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: calc(100% + 80px);
        margin: 0 auto 10px;
        -webkit-transform: translateX(-40px);
        transform: translateX(-40px);
    }
}

@media screen and (max-width: 640px) {
    #business .biz .l-biz-unit3 .l-biz-col .l-biz-head,
    #business-english .biz .l-biz-unit3 .l-biz-col .l-biz-head {
        display: block;
        width: 100%;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@media screen and (max-width: 960px) {
    #business .biz .biz-vsl,
    #business-english .biz .biz-vsl {
        width: 240px;
        margin: 0 20px 0 0;
    }
}

@media screen and (max-width: 640px) {
    #business .biz .biz-vsl,
    #business-english .biz .biz-vsl {
        width: 80%;
        margin: 0 auto;
    }
}

#business .biz .biz-vsl.ai_box,
#business-english .biz .biz-vsl.ai_box {
    -webkit-transform: translateX(12px);
    transform: translateX(12px);
}

@media screen and (max-width: 960px) {
    #business .biz .biz-dtl,
    #business-english .biz .biz-dtl {
        width: 224px;
        padding: 0 20px 0 0;
    }
}

@media screen and (max-width: 640px) {
    #business .biz .biz-dtl,
    #business-english .biz .biz-dtl {
        width: 100%;
        margin: 0 auto;
    }
}

#business .biz .biz-dtl .biz-dtl-catch,
#business-english .biz .biz-dtl .biz-dtl-catch {
    margin: 0 0 16px;
    text-align: center;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    #business .biz .biz-dtl .biz-dtl-catch,
    #business-english .biz .biz-dtl .biz-dtl-catch {
        margin: 0 0 10px;
        text-align: left;
    }
}

@media screen and (max-width: 640px) {
    #business .biz .biz-dtl .biz-dtl-catch,
    #business-english .biz .biz-dtl .biz-dtl-catch {
        text-align: center;
    }
}

#business .biz .biz-dtl .biz-dtl-ttl3,
#business-english .biz .biz-dtl .biz-dtl-ttl3 {
    margin: 0 0 30px;
    font-size: 3.6rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    #business .biz .biz-dtl .biz-dtl-ttl3,
    #business-english .biz .biz-dtl .biz-dtl-ttl3 {
        font-size: 3.0rem;
    }
}

@media screen and (max-width: 960px) {
    #business .biz .biz-dtl .biz-dtl-ttl3,
    #business-english .biz .biz-dtl .biz-dtl-ttl3 {
        margin: 0;
        font-size: 2.4rem;
        line-height: 1.4;
        text-align: left;
    }
}

@media screen and (max-width: 640px) {
    #business .biz .biz-dtl .biz-dtl-ttl3,
    #business-english .biz .biz-dtl .biz-dtl-ttl3 {
        text-align: center;
    }
}

#business .biz .biz-dtl .biz-dtl-ttl3 a,
#business-english .biz .biz-dtl .biz-dtl-ttl3 a {
    position: relative;
    padding: 0 0 0 32px;
}

@media screen and (max-width: 960px) {
    #business .biz .biz-dtl .biz-dtl-ttl3 a,
    #business-english .biz .biz-dtl .biz-dtl-ttl3 a {
        display: block;
    }
}

@media screen and (max-width: 640px) {
    #business .biz .biz-dtl .biz-dtl-ttl3 a,
    #business-english .biz .biz-dtl .biz-dtl-ttl3 a {
        display: inline-block;
    }
}

#business .biz .biz-dtl .biz-dtl-ttl3 a .arrow,
#business-english .biz .biz-dtl .biz-dtl-ttl3 a .arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background: #131f2d;
    border: solid 1px #131f2d;
    border-radius: 12px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: background .3s ease-out;
    transition: background .3s ease-out;
}

#business .biz .biz-dtl .biz-dtl-ttl3 a .arrow .ico-arrow,
#business-english .biz .biz-dtl .biz-dtl-ttl3 a .arrow .ico-arrow {
    width: 5px;
    height: 8px;
    fill: #fff;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

#business .biz .biz-text,
#business-english .biz .biz-text {
    text-align: center;
    line-height: 2;
}

@media screen and (max-width: 1280px) {
    #business .biz .biz-text,
    #business-english .biz .biz-text {
        font-size: 1.4rem;
    }
}

#business .biz .biz-notice,
#business-english .biz .biz-notice {
    margin: 0 auto;
}

.l-biz-hero-unit2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 1280px;
    margin: 0 auto;
}

.l-biz-hero-unit2 .l-biz-hero-col__dtl {
    width: calc(50% - 16px);
}

@media screen and (max-width: 768px) {
    .l-biz-hero-unit2 .l-biz-hero-col__dtl {
        width: 100%;
    }
}

.l-biz-hero-unit2 .l-biz-hero-col__vsl {
    width: calc(50% - 16px);
    max-width: 880px;
}

.biz-hero {
    position: relative;
    z-index: 1;
    padding: 120px 0 64px;
    background: #1c3959;
}

.biz-hero::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 360px;
    background: bottom / cover no-repeat;
}

.biz-hero .pan {
    color: #fff;
}

.biz-hero .pan__item a {
    color: #fff;
}

.biz-hero .biz-hero-dtl .biz-hero-dtl-inner {
    max-width: 620px;
    margin: 0 0 0 auto;
    padding: 0 0 0 40px;
}

@media screen and (max-width: 960px) {
    .biz-hero .biz-hero-dtl .biz-hero-dtl-inner {
        max-width: none;
        padding: 0 32px;
    }
}

@media screen and (max-width: 400px) {
    .biz-hero .biz-hero-dtl .biz-hero-dtl-inner {
        padding: 0 16px;
    }
}

.biz-hero .biz-hero-dtl .biz-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 132px;
    border-bottom: solid 1px #172b41;
}

@media screen and (max-width: 768px) {
    .biz-hero .biz-hero-dtl .biz-nav {
        overflow-x: scroll;
        -ms-overflow-style: none;
        -webkit-overflow-scrolling: touch;
        margin: 0 0 32px;
    }
}

.biz-hero .biz-hero-dtl .biz-nav::-webkit-scrollbar {
    display: none;
}

.biz-hero .biz-hero-dtl .biz-nav__item {
    margin: 0 20px 0 0;
    white-space: nowrap;
}

.biz-hero .biz-hero-dtl .biz-nav__item a {
    display: block;
    position: relative;
    padding: 0 0 16px;
    color: #597098;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

.biz-hero .biz-hero-dtl .biz-nav__item a:hover {
    color: #ded9db;
}

.biz-hero .biz-hero-dtl .biz-nav__item a.current {
    color: #ded9db;
    pointer-events: none;
}

.biz-hero .biz-hero-dtl .biz-nav__item a.current::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #ded9db;
}

.biz-hero .biz-hero-dtl .biz-pagetitle {
    margin: 0 0 24px;
    color: #ded9db;
}

@media screen and (max-width: 768px) {
    .biz-hero .biz-hero-dtl .biz-pagetitle {
        margin: 0 0 32px;
    }
}

.biz-hero .biz-hero-dtl .biz-pagetitle__main, .aiboxpagemaintitle {
    margin: 0 0 8px;
    font-size: 2rem;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    .biz-hero .biz-hero-dtl .biz-pagetitle__main, .aiboxpagemaintitle {
        font-size: 1.4rem;
    }
}

.biz-hero .biz-hero-dtl .biz-pagetitle__sub {
    font-size: 6.4rem;
    font-weight: bold;
    line-height: 1;
    font-family: "Roboto", sans-serif;
}
.aiboxpagemaintitle {
    text-align: center;
    color: #ded9db;
}
.aiboxpagetitle {
    font-size: 6.4rem;
    font-weight: bold;
    line-height: 1;
    font-family: "Roboto", sans-serif;
    color: #ded9db;
    text-align: center;
    margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
    .biz-hero .biz-hero-dtl .biz-pagetitle__sub, .aiboxpagetitle {
        font-size: 4.0rem;
        line-height: 1.4;
    }
}

.biz-hero .biz-hero-dtl .biz-hero-text {
    color: #ded9db;
    text-align: justify;
}

@media screen and (max-width: 768px) {
    .biz-hero .biz-hero-vsl {
        margin: 0 0 32px;
    }
}

#box .l-biz-hero-unit2 .l-biz-hero-col__vsl,
#box-english .l-biz-hero-unit2 .l-biz-hero-col__vsl {
    margin: 0 auto;
}
#aiboxEXgroup {
    width: 100%;
}
.aiboxlisting {
    padding-left: 20px;
    margin-top: 20px;
    font-size: 2rem;
    color: #ded9db;
}
.aiboxlisting li::before {
    content: "•"; 
    color: #ded9db; 
    margin-right: 20px;
  }
#box .biz-hero,
#box-english .biz-hero {
    margin: 0 0 64px;
}

#box .biz-hero::before,
#box-english .biz-hero::before {
    background-image: url("../img/box/hero-bg.jpg");
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    #box .biz-hero::before,
    #box-english .biz-hero::before {
        background-image: url("../img/box/hero-bg@2x.jpg");
    }
}

#box .biz-hero .biz-hero-dtl .biz-nav,
#box-english .biz-hero .biz-hero-dtl .biz-nav {
    margin: 0 0 20px;
}

#box .page-link,
#box-english .page-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 48px;
}

@media screen and (max-width: 768px) {
    #box .page-link,
    #box-english .page-link {
        overflow-x: scroll;
        -ms-overflow-style: none;
        -webkit-overflow-scrolling: touch;
    }
}

#box .page-link::-webkit-scrollbar,
#box-english .page-link::-webkit-scrollbar {
    display: none;
}

#box .page-link__item,
#box-english .page-link__item {
    text-align: center;
}

#box .page-link__item:not(:last-child),
#box-english .page-link__item:not(:last-child) {
    margin: 0 13px 0 0;
}

#box .page-link__item a,
#box-english .page-link__item a {
    display: block;
    color: #ded9db;
    font-size: 1.2rem;
}

#box .page-link__item a:hover,
#box-english .page-link__item a:hover {
    opacity: .6;
}

#box .page-link__icon,
#box-english .page-link__icon {
    display: block;
    width: 48px;
    height: 48px;
    margin: 0 auto 4px;
}

#box .scroll-message,
#box-english .scroll-message {
    padding: 0px 0px 20px 0px;
    font-size: 1.2rem;
}

#box .scroll-message-attention,
#box-english .scroll-message-attention {
    padding-top: 40px;
    font-size: 1.2rem;
}

#box .lineup .lineup-unit,
#box-english .lineup .lineup-unit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#box .lineup .lineup-unit .lineup-col,
#box-english .lineup .lineup-unit .lineup-col {
    width: calc(20% - 24px);
}

#box .lineup .lineup-unit .lineup-col.standard,
#box-english .lineup .lineup-unit .lineup-col.standard {
    width: calc(60% - 12px);
}

#box .lineup .lineup-standard-unit,
#box-english .lineup .lineup-standard-unit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#box .lineup .lineup-standard-unit .lineup-standard-col,
#box-english .lineup .lineup-standard-unit .lineup-standard-col {
    width: calc(33.33% - 20px);
}

#box .lineup .lineup-ttl3,
#box-english .lineup .lineup-ttl3 {
    position: relative;
    margin: 0 0 8px;
    color: #ded9db;
    font-size: 2.4rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#box .lineup .lineup-ttl3::before,
#box-english .lineup .lineup-ttl3::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    z-index: -1;
    width: 100%;
    height: 1px;
    background: #ded9db;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#box .lineup .lineup-ttl3 span,
#box-english .lineup .lineup-ttl3 span {
    display: inline-block;
    padding: 0 16px 0 0;
    background: #fff;
    color: #ded9db;
}

#box .lineup .lineup-release,
#box-english .lineup .lineup-release {
    margin: 0 0 32px;
    font-size: 1.4rem;
    font-weight: 600;
}

#box .lineup .lineup-vsl,
#box-english .lineup .lineup-vsl {
    width: 120px;
    margin: 0 auto 32px;
}

#box .lineup .lineup-name,
#box-english .lineup .lineup-name {
    margin: 0 0 8px;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#box .lineup .lineup-name__type,
#box-english .lineup .lineup-name__type {
    display: inline-block;
    margin: 0 0 8px;
    padding: 2px 16px;
    background: #172b41;
    color: #fff;
    font-size: 1.2rem;
    font-family: 'HiraKakuPro-W6';
}

#box .lineup .lineup-name__num,
#box-english .lineup .lineup-name__num {
    font-size: 1.2rem;
    font-weight: normal;
}

#box .lineup .lineup-text,
#box-english .lineup .lineup-text {
    margin: 0 0 24px;
    font-size: 1.4rem;
}

#box .lineup .lineup-spec,
#box-english .lineup .lineup-spec {
    position: relative;
    margin: 0 0 24px;
    padding: 16px 0 0;
    border-top: solid 1px #cfd9e9;
    height: 491px;
}
@media screen and (max-width: 768px) {
    #box .lineup .lineup-spec,
    #box-english .lineup .lineup-spec {
        height: 270px;
    }
}

#box .lineup .lineup-spec::before,
#box-english .lineup .lineup-spec::before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    width: 16px;
    height: 1px;
    background: #172b41;
}

#box .lineup .lineup-spec dt,
#box-english .lineup .lineup-spec dt {
    margin: 0 0 8px;
    color: #597098;
    font-size: 1.2rem;
}

#box .lineup .lineup-spec dd,
#box-english .lineup .lineup-spec dd {
    min-height: 48px;
    font-size: 1.2rem;
    font-family: "Roboto", sans-serif;
}

#box .lineup .lineup-scene,
#box-english .lineup .lineup-scene {
    position: relative;
    margin: 0 0 24px;
    padding: 16px 0 0;
    border-top: solid 1px #cfd9e9;
}

#box .lineup .lineup-scene::before,
#box-english .lineup .lineup-scene::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    width: 16px;
    height: 1px;
    background: #172b41;
}

#box .lineup .lineup-scene dt,
#box-english .lineup .lineup-scene dt {
    margin: 0 0 8px;
    color: #597098;
    font-size: 1.2rem;
}

#box .lineup .lineup-scene dd,
#box-english .lineup .lineup-scene dd {
    font-size: 1.4rem;
}

#box .table.js-slider-pc .slick-disabled,
#box-english .table.js-slider-pc .slick-disabled {
    display: none !important;
}

#box .lineup .table-ttl3,
#box-english .lineup .table-ttl3 {
    position: relative;
    margin: 0 0 8px;
    color: #ded9db;
    font-size: 2.4rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#box .lineup .table li.last-titled,
#box-english .lineup .table li.last-titled {
    padding-right: 30px;
}

#box .lineup .table-ttl3::before,
#box-english .lineup .table-ttl3::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    z-index: -1;
    width: 100%;
    height: 1px;
    background: #ded9db;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#box .lineup .table-ttl3 span,
#box-english .lineup .table-ttl3 span {
    display: inline-block;
    padding: 0 6px 0 0;
    background: #fff;
    color: #ded9db;
}

#box .lineup .table-release,
#box-english .lineup .table-release {
    margin: 0 0 32px;
    font-size: 1.4rem;
    font-weight: 600;
}

#box .lineup .table-vsl,
#box-english .lineup .table-vsl {
    width: 120px;
    margin: 0 auto 32px;
}

#box .product-head,
#box-english .product-head {
    position: relative;
    z-index: 1;
    background: center / cover no-repeat;
}

#box .product-head.model-light,
#box-english .product-head.model-light {
    background-image: url("../img/box/product-light-bg.jpg");
}

#box .product-head.model-advance,
#box-english .product-head.model-advance {
    background-image: url("../img/box/product-advance-bg.jpg");
}

#box .product-head.model-advance5g,
#box-english .product-head.model-advance5g {
    background-image: url("../img/box/product-advance5g-bg.jpg");
}

#box .product-head.model-advancemk2,
#box-english .product-head.model-advancemk2 {
    background-image: url("../img/box/product-advancemk2-bg.jpg");
}

#box .product-head.model-outdoor,
#box-english .product-head.model-outdoor {
    background-image: url("../img/box/product-outdoor-bg.jpg");
}

#box .product-head.model-indoor,
#box-english .product-head.model-indoor {
    background-image: url("../img/box/product-indoor-bg.jpg");
}

#box .product-head.model-indoor2,
#box-english .product-head.model-indoor2 {
    background-image: url("../img/box/product-indoor2-bg.jpg");
}

#box .product-head.model-nx-outdoor,
#box-english .product-head.model-nx-outdoor {
    background-image: url("../img/box/product-nx-outdoor-bg.png");
}

#box .product-head.model-nx-indoor,
#box-english .product-head.model-nx-indoor {
    background-image: url("../img/box/product-nx-indoor-bg.png");
}

#box .product-head .product-vsl,
#box-english .product-head .product-vsl {
    position: absolute;
    z-index: 2;
    top: 64px;
    width: 100%;
    max-width: 480px;
}

@media screen and (max-width: 768px) {
    #box .product-head .product-vsl,
    #box-english .product-head .product-vsl {
        top: 72px;
        left: 0;
        right: 0;
        max-width: 400px;
        margin: 0 auto;
    }
}

@media screen and (max-width: 400px) {
    #box .product-head .product-vsl,
    #box-english .product-head .product-vsl {
        max-width: 300px;
    }
}

#box .product-head .product-head-inner,
#box-english .product-head .product-head-inner {
    position: relative;
    width: 100%;
    max-width: 1280px;
    min-height: 360px;
    margin: 0 auto;
    padding: 72px 40px 0;
}

@media screen and (max-width: 960px) {
    #box .product-head .product-head-inner,
    #box-english .product-head .product-head-inner {
        padding: 0 32px;
    }
}

@media screen and (max-width: 768px) {
    #box .product-head .product-head-inner,
    #box-english .product-head .product-head-inner {
        min-height: 300px;
        padding: 24px 0 0;
    }
}

#box .product-head .product-ttl,
#box-english .product-head .product-ttl {
    width: 100%;
    max-width: 560px;
    margin: 0 0 0 auto;
}

@media screen and (max-width: 768px) {
    #box .product-head .product-ttl,
    #box-english .product-head .product-ttl {
        position: relative;
        z-index: 2;
        max-width: none;
    }
}

#box .product-head .product-ttl__release,
#box-english .product-head .product-ttl__release {
    margin: 0 0 8px;
    font-size: 1.4rem;
    font-weight: 600;
}

#box .product-head .product-ttl__release span,
#box-english .product-head .product-ttl__release span {
    display: inline-block;
    padding: 4px 10px;
    background: #fff;
}

#box .product-head .product-ttl__main,
#box-english .product-head .product-ttl__main {
    font-size: 2.4rem;
    letter-spacing: .05em;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #box .product-head .product-ttl__main,
    #box-english .product-head .product-ttl__main {
        font-size: 1.6rem;
    }
}

#box .product-head .product-ttl__main span,
#box-english .product-head .product-ttl__main span {
    display: inline-block;
    padding: 4px 10px;
    background: #fff;
}

#box .product-head .product-typo,
#box-english .product-head .product-typo {
    position: absolute;
    right: 40px;
    bottom: -2px;
    width: 100%;
    max-width: 560px;
}

#box .product-body,
#box-english .product-body {
    padding: 48px 0 0;
}

@media screen and (max-width: 768px) {
    #box .product-body,
    #box-english .product-body {
        padding: 148px 0 0;
    }
}

@media screen and (max-width: 400px) {
    #box .product-body,
    #box-english .product-body {
        padding: 64px 0 0;
    }
}

#box .product-body .product-dtl,
#box-english .product-body .product-dtl {
    width: 100%;
    max-width: 560px;
    margin: 0 0 0 auto;
}

@media screen and (max-width: 768px) {
    #box .product-body .product-dtl,
    #box-english .product-body .product-dtl {
        max-width: none;
    }
}

@media screen and (max-width: 768px) {
    #box .product-body .product-dtl .product-typo,
    #box-english .product-body .product-dtl .product-typo {
        width: 100%;
    }
}

#box .product-body .product-dtl .product-dtl-name,
#box-english .product-body .product-dtl .product-dtl-name {
    margin: 0 0 8px;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#box .product-body .product-dtl .product-dtl-name__type,
#box-english .product-body .product-dtl .product-dtl-name__type {
    display: inline-block;
    margin: 0 10px 0 0;
    padding: 2px 16px;
    background: #172b41;
    color: #fff;
    font-size: 1.2rem;
    font-family: 'HiraKakuPro-W6';
}

#box .product-body .product-dtl .product-dtl-name__num,
#box-english .product-body .product-dtl .product-dtl-name__num {
    margin: 0 0 0 10px;
    font-size: 1.2rem;
    font-weight: normal;
}

#box .product-body .product-dtl .product-dtl-text,
#box-english .product-body .product-dtl .product-dtl-text {
    margin: 0 0 16px;
    font-size: 1.4rem;
}

#box .product-body .product-dtl .product-pdf-link,
#box-english .product-body .product-dtl .product-pdf-link, .aiboxexpage-link {
    font-size: 1.2rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#box .product-body .product-dtl .product-pdf-link a,
#box-english .product-body .product-dtl .product-pdf-link a, .aiboxexpage-link a {
    position: relative;
    padding: 0 0 0 32px;
}

#box .product-body .product-dtl .product-pdf-link a .arrow,
#box-english .product-body .product-dtl .product-pdf-link a .arrow, .aiboxexpage-link a .arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background: #131f2d;
    border: solid 1px #131f2d;
    border-radius: 12px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: background .3s ease-out;
    transition: background .3s ease-out;
}

#box .product-body .product-dtl .product-pdf-link a .arrow .ico-arrow,
#box-english .product-body .product-dtl .product-pdf-link a .arrow .ico-arrow, .aiboxexpage-link a .arrow .ico-arrow {
    height: 8px;
    fill: #fff;
}
.aiboxexpage-link {
    text-align: center;
    font-size: 1.8rem;
}
.aiboxexpage-link a {
    color: #ded9db;
    margin-left: 32px;
}
#box .delighter .product-head,
#box-english .delighter .product-head {
    -webkit-transform: translateY(60px);
    transform: translateY(60px);
    -webkit-transition: -webkit-transform 1s ease-out;
    transition: -webkit-transform 1s ease-out;
    transition: transform 1s ease-out;
    transition: transform 1s ease-out, -webkit-transform 1s ease-out;
}

#box .delighter .product-head::after,
#box-english .delighter .product-head::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-transition: -webkit-transform 1s ease-out;
    transition: -webkit-transform 1s ease-out;
    transition: transform 1s ease-out;
    transition: transform 1s ease-out, -webkit-transform 1s ease-out;
    -webkit-transform-origin: top right;
    transform-origin: top right;
}

#box .delighter .product-head .product-vsl,
#box-english .delighter .product-head .product-vsl {
    opacity: 0;
    -webkit-transform: translateY(60px);
    transform: translateY(60px);
    -webkit-transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out, -webkit-transform 1s ease-out;
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s;
}

@media screen and (max-width: 768px) {
    #box .delighter .product-head .product-ttl::after,
    #box-english .delighter .product-head .product-ttl::after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        z-index: 1;
        width: 100%;
        height: 100%;
        background: #fff;
        -webkit-transition: -webkit-transform 1s ease-out;
        transition: -webkit-transform 1s ease-out;
        transition: transform 1s ease-out;
        transition: transform 1s ease-out, -webkit-transform 1s ease-out;
        -webkit-transform-origin: top right;
        transform-origin: top right;
    }
}

#box .delighter .product-body,
#box-english .delighter .product-body {
    position: relative;
    -webkit-transform: translateY(60px);
    transform: translateY(60px);
    -webkit-transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out, -webkit-transform 1s ease-out;
}

#box .delighter .product-body::after,
#box-english .delighter .product-body::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-transition: -webkit-transform 1s ease-out;
    transition: -webkit-transform 1s ease-out;
    transition: transform 1s ease-out;
    transition: transform 1s ease-out, -webkit-transform 1s ease-out;
    -webkit-transform-origin: top right;
    transform-origin: top right;
}

#box .delighter.started .product-head,
#box-english .delighter.started .product-head {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

#box .delighter.started .product-head::after,
#box-english .delighter.started .product-head::after {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
}

#box .delighter.started .product-head .product-vsl,
#box-english .delighter.started .product-head .product-vsl {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

@media screen and (max-width: 768px) {
    #box .delighter.started .product-head .product-ttl::after,
    #box-english .delighter.started .product-head .product-ttl::after {
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
    }
}

#box .delighter.started .product-body,
#box-english .delighter.started .product-body {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

#box .delighter.started .product-body::after,
#box-english .delighter.started .product-body::after {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
}

#platform .l-biz-hero-unit2 .l-biz-hero-col__vsl,
#platform-english .l-biz-hero-unit2 .l-biz-hero-col__vsl {
    margin: 0 auto 0 0;
}

#platform .biz-hero::before,
#platform-english .biz-hero::before {
    background-image: url("../img/platform/hero-bg.jpg");
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    #platform .biz-hero::before,
    #platform-english .biz-hero::before {
        background-image: url("../img/platform/hero-bg@2x.jpg");
    }
}

@media screen and (max-width: 768px) {
    #platform .biz-hero .btn.left a,
    #platform-english .biz-hero .btn.left a {
        margin: 0 auto;
    }
}

#platform .spec .l-spec-unit3,
#platform-english .spec .l-spec-unit3 {
    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;
}

#platform .spec .l-spec-col,
#platform-english .spec .l-spec-col {
    position: relative;
    width: 33.33%;
    background: url("../img/platform/platform-bg.png") center/cover no-repeat;
}

@media screen and (max-width: 768px) {
    #platform .spec .l-spec-col,
    #platform-english .spec .l-spec-col {
        width: 100%;
        min-height: 800px;
    }
}

#platform .spec .spec-vsl,
#platform-english .spec .spec-vsl {
    padding: 56px 46px 0;
    margin: 0 0 64px 0;
}

@media screen and (max-width: 768px) {
    #platform .spec .spec-vsl,
    #platform-english .spec .spec-vsl {
        padding: 64px 32px 0;
    }
}

#platform .spec .spec-dtl,
#platform-english .spec .spec-dtl {
    padding: 0 80px 88px;
}

@media screen and (max-width: 1280px) {
    #platform .spec .spec-dtl,
    #platform-english .spec .spec-dtl {
        padding: 0 56px 88px;
    }
}

@media screen and (max-width: 768px) {
    #platform .spec .spec-dtl,
    #platform-english .spec .spec-dtl {
        padding: 0 32px 64px;
    }
}

#platform .spec .spec-dtl .spec-dtl-ttl,
#platform-english .spec .spec-dtl .spec-dtl-ttl {
    margin: 0 0 8px 0;
    color: #fff;
    font-family: 'HiraKakuPro-W6';
}

#platform .spec .spec-dtl .spec-dtl-ttl__main,
#platform-english .spec .spec-dtl .spec-dtl-ttl__main {
    margin: 0 0 24px 0;
    line-height: 1.4;
    font-size: 3.2rem;
}

#platform .spec .spec-dtl .spec-dtl-ttl__sub,
#platform-english .spec .spec-dtl .spec-dtl-ttl__sub {
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#platform .spec .spec-dtl .spec-dtl-ttl--developer,
#platform-english .spec .spec-dtl .spec-dtl-ttl--developer {
    position: relative;
}

#platform .spec .spec-dtl .spec-dtl-ttl--developer::after,
#platform-english .spec .spec-dtl .spec-dtl-ttl--developer::after {
    content: "For Developer";
    position: absolute;
    top: -40px;
    left: 0;
    height: 24px;
    padding: 0 14px;
    background: #fff;
    border-radius: 12px;
    line-height: 24px;
    text-align: center;
    color: #1c3959;
    font-size: 1.2rem;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
}

#platform .spec .spec-dtl .spec-dtl-txt,
#platform-english .spec .spec-dtl .spec-dtl-txt {
    color: #cfd9e9;
    font-size: 1.4rem;
}

#platform .spec a .more-btn,
#platform-english .spec a .more-btn {
    display: block;
    position: relative;
    width: 100%;
    max-width: 240px;
    height: 48px;
    border: solid 2px #ded9db;
    border-radius: 24px;
    color: #ded9db;
    font-weight: bold;
    text-align: center;
    line-height: 44px;
    font-family: "Roboto", sans-serif;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

@media screen and (max-width: 768px) {
    #platform .spec a .more-btn,
    #platform-english .spec a .more-btn {
        max-width: 320px;
        margin: 0 auto;
    }
}

#platform .spec a .more-btn .ico-external,
#platform-english .spec a .more-btn .ico-external {
    position: absolute;
    top: 50%;
    left: 24px;
    width: 8px;
    height: 7px;
    fill: #ded9db;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

#platform .spec a:hover .more-btn,
#platform-english .spec a:hover .more-btn {
    background: #ded9db;
    color: #172b41;
}

#platform .spec a:hover .more-btn .ico-external,
#platform-english .spec a:hover .more-btn .ico-external {
    fill: #172b41;
}

#platform .spec.delighter .spec-vsl,
#platform-english .spec.delighter .spec-vsl {
    opacity: 0;
    position: relative;
    -webkit-transform: translateY(60px);
    transform: translateY(60px);
    -webkit-transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out, -webkit-transform 1s ease-out;
}

#platform .spec.delighter.started .spec-vsl,
#platform-english .spec.delighter.started .spec-vsl {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

#solution .biz-hero::before,
#solution-english .biz-hero::before {
    background-image: url("../img/solution/hero-bg.jpg");
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    #solution .biz-hero::before,
    #solution-english .biz-hero::before {
        background-image: url("../img/solution/hero-bg@2x.jpg");
    }
}

@media screen and (max-width: 768px) {
    #solution .biz-hero .biz-hero-vsl,
    #solution-english .biz-hero .biz-hero-vsl {
        -webkit-transform: translateX(32px);
        transform: translateX(32px);
    }
}

@media screen and (max-width: 400px) {
    #solution .biz-hero .biz-hero-vsl,
    #solution-english .biz-hero .biz-hero-vsl {
        -webkit-transform: translateX(16px);
        transform: translateX(16px);
    }
}

#solution .scene,
#solution-english .scene {
    padding: 80px 0 0;
    margin: 0 0 108px;
    background: -webkit-gradient(linear, left top, left bottom, from(#eff3f8), color-stop(92%, #eff3f8), color-stop(92%, white), to(white));
    background: linear-gradient(to bottom, #eff3f8 0%, #eff3f8 92%, white 92%, white 100%);
}

@media screen and (max-width: 768px) {
    #solution .scene,
    #solution-english .scene {
        padding: 48px 0 0;
        margin: 0 0 64px;
        background: -webkit-gradient(linear, left top, left bottom, from(#eff3f8), color-stop(97%, #eff3f8), color-stop(97%, white), to(white));
        background: linear-gradient(to bottom, #eff3f8 0%, #eff3f8 97%, white 97%, white 100%);
    }
}

#solution .scene .l-scene-unit4,
#solution-english .scene .l-scene-unit4 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: calc(100% - 40px);
    max-width: 1200px;
    margin: 0 auto;
    background: #1c3959;
    border-radius: 4px;
}

@media screen and (max-width: 768px) {
    #solution .scene .l-scene-unit4,
    #solution-english .scene .l-scene-unit4 {
        width: calc(100% - 16px);
    }
}

#solution .scene .l-scene-col,
#solution-english .scene .l-scene-col {
    width: 25%;
    padding: 40px 10px;
}

@media screen and (max-width: 768px) {
    #solution .scene .l-scene-col,
    #solution-english .scene .l-scene-col {
        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;
        width: 100%;
        padding: 24px;
    }
}

#solution .scene .l-scene-col:not(:last-of-type),
#solution-english .scene .l-scene-col:not(:last-of-type) {
    border-right: 1px solid #172b41;
}

@media screen and (max-width: 768px) {
    #solution .scene .l-scene-col:not(:last-of-type),
    #solution-english .scene .l-scene-col:not(:last-of-type) {
        border-bottom: 1px solid #172b41;
    }
}

#solution .scene .scene-catch,
#solution-english .scene .scene-catch {
    margin: 0 0 16px;
    text-align: center;
    font-size: 4.8rem;
    color: #172b41;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #solution .scene .scene-catch,
    #solution-english .scene .scene-catch {
        font-size: 3.2rem;
    }
}

#solution .scene .scene-vzl,
#solution-english .scene .scene-vzl {
    margin: 0 auto 24px;
    width: 128px;
    height: 128px;
    padding: 32px;
    background: #172b41;
    border-radius: 50%;
}

@media screen and (max-width: 768px) {
    #solution .scene .scene-vzl,
    #solution-english .scene .scene-vzl {
        margin: 0;
        width: 96px;
        height: 96px;
        padding: 24px;
    }
}

#solution .scene .scene-dtl,
#solution-english .scene .scene-dtl {
    text-align: center;
    color: #fff;
    font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
    #solution .scene .scene-dtl,
    #solution-english .scene .scene-dtl {
        width: calc(100% - 112px);
        text-align: left;
    }
}

#solution .scene .scene-dtl .scene-dtl-ttl,
#solution-english .scene .scene-dtl .scene-dtl-ttl {
    margin: 0 0 8px;
    font-family: "Roboto", sans-serif;
    font-size: 1.2rem;
    color: #ded9db;
    font-weight: bold;
}

#solution .flow,
#solution-english .flow {
    margin: 0 0 80px;
}

#solution .flow .flow-catch,
#solution-english .flow .flow-catch {
    margin: 0 0 16px;
    text-align: center;
    line-height: 1.4;
    font-size: 4.8rem;
    color: #172b41;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #solution .flow .flow-catch,
    #solution-english .flow .flow-catch {
        font-size: 3.2rem;
    }
}

@media screen and (max-width: 768px) {
    #solution .flow .flow-catch br.tb2-unshown,
    #solution-english .flow .flow-catch br.tb2-unshown {
        display: none;
    }
}

#solution .flow .flow-contact,
#solution-english .flow .flow-contact {
    background: #fff;
    color: #ded9db;
    text-align: center;
    font-family: "Roboto", sans-serif;
    font-size: 1.4rem;
    font-weight: bold;
}

#solution .flow .flow-contact-mail,
#solution-english .flow .flow-contact-mail {
    margin: 0 auto;
    padding: 17px 16px;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #ded9db;
}

#solution .flow .flow-contact-mail svg,
#solution-english .flow .flow-contact-mail svg {
    fill: #fff;
    width: 32px;
    height: 32px;
}

#solution .flow .flow-contact--sp,
#solution-english .flow .flow-contact--sp {
    display: none;
}

@media screen and (max-width: 768px) {
    #solution .flow .flow-contact--sp,
    #solution-english .flow .flow-contact--sp {
        display: block;
    }
}

@media screen and (max-width: 768px) {
    #solution .flow .flow-contact,
    #solution-english .flow .flow-contact {
        position: relative;
        margin: 0 0 54px;
    }
}

@media screen and (max-width: 768px) {
    #solution .flow .flow-contact::after,
    #solution-english .flow .flow-contact::after {
        content: "";
        display: block;
        position: absolute;
        top: 100%;
        left: auto;
        right: 50%;
        -webkit-transform: translate(50%, 0);
        transform: translate(50%, 0);
        width: 12px;
        height: 42px;
        background: url("../img/solution/flow-arw.svg") center/contain no-repeat;
    }
}

#solution .flow .flow-content,
#solution-english .flow .flow-content {
    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;
    width: calc(100% - 40px);
    max-width: 1200px;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    #solution .flow .flow-content:last-of-type .explanation::after,
    #solution-english .flow .flow-content:last-of-type .explanation::after {
        height: 48px;
        background: url("../img/solution/flow-last.svg") center/contain no-repeat;
    }
}

#solution .flow .flow-content:last-of-type .step,
#solution-english .flow .flow-content:last-of-type .step {
    background: url("../img/solution/step-bg-last.svg") center/12px 100% no-repeat;
}

@media screen and (max-width: 768px) {
    #solution .flow .flow-content,
    #solution-english .flow .flow-content {
        padding: 0;
        width: 100%;
    }
}

#solution .flow .step,
#solution-english .flow .step {
    position: relative;
    width: 80px;
    background: url("../img/solution/step-bg.svg") center/12px 100% no-repeat;
}

@media screen and (max-width: 768px) {
    #solution .flow .step,
    #solution-english .flow .step {
        display: none;
    }
}

#solution .flow .step .step-contact,
#solution-english .flow .step .step-contact {
    background: #fff;
    color: #ded9db;
    text-align: center;
    font-family: "Roboto", sans-serif;
    font-size: 1.4rem;
    font-weight: bold;
}

#solution .flow .step .step-contact-mail,
#solution-english .flow .step .step-contact-mail {
    margin: 0 auto;
    padding: 17px 16px;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #ded9db;
}

#solution .flow .step .step-contact-mail svg,
#solution-english .flow .step .step-contact-mail svg {
    fill: #fff;
    width: 32px;
    height: 32px;
}

#solution .flow .step .step-contact--sp,
#solution-english .flow .step .step-contact--sp {
    display: none;
}

@media screen and (max-width: 768px) {
    #solution .flow .step .step-contact--sp,
    #solution-english .flow .step .step-contact--sp {
        display: block;
    }
}

#solution .flow .step .step-num,
#solution-english .flow .step .step-num {
    width: 80px;
    height: 34px;
    line-height: 30px;
    border-top: 2px solid #ded9db;
    border-bottom: 2px solid #ded9db;
    color: #ded9db;
    text-align: center;
    font-family: "Roboto", sans-serif;
    font-size: 1.4rem;
    font-weight: bold;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#solution .flow .step .step-num--sp,
#solution-english .flow .step .step-num--sp {
    display: none;
}

@media screen and (max-width: 768px) {
    #solution .flow .step .step-num--sp,
    #solution-english .flow .step .step-num--sp {
        display: block;
    }
}

#solution .flow .explanation,
#solution-english .flow .explanation {
    position: relative;
    padding-left: 120px;
    width: calc(100% - 120px);
}

@media screen and (max-width: 768px) {
    #solution .flow .explanation,
    #solution-english .flow .explanation {
        margin: 0 0 54px;
        padding-left: 0px;
        width: 100%;
    }
}

#solution .flow .explanation::after,
#solution-english .flow .explanation::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: -20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 48px;
    height: 1px;
    background: #ded9db;
}

@media screen and (max-width: 768px) {
    #solution .flow .explanation::after,
    #solution-english .flow .explanation::after {
        top: 100%;
        left: auto;
        right: 50%;
        -webkit-transform: translate(50%, 0);
        transform: translate(50%, 0);
        width: 12px;
        height: 42px;
        background: url("../img/solution/flow-arw.svg") center/contain no-repeat;
    }
}

#solution .flow .explanation .explanation-vsl,
#solution-english .flow .explanation .explanation-vsl {
    position: relative;
    overflow: hidden;
    height: 320px;
    width: 100%;
}

@media screen and (max-width: 768px) {
    #solution .flow .explanation .explanation-vsl,
    #solution-english .flow .explanation .explanation-vsl {
        height: auto;
    }
}

#solution .flow .explanation .explanation-vsl img,
#solution-english .flow .explanation .explanation-vsl img {
    position: absolute;
    top: 50%;
    right: 50%;
    -webkit-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
    height: 100%;
    min-width: 960px;
}

@media screen and (max-width: 768px) {
    #solution .flow .explanation .explanation-vsl img,
    #solution-english .flow .explanation .explanation-vsl img {
        position: static;
        min-width: 0;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

#solution .flow .explanation .explanation-dtl,
#solution-english .flow .explanation .explanation-dtl {
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    min-height: 240px;
    width: 400px;
    padding: 32px 48px;
    background: #fff;
}

@media screen and (max-width: 768px) {
    #solution .flow .explanation .explanation-dtl,
    #solution-english .flow .explanation .explanation-dtl {
        position: static;
        -webkit-transform: translate(0);
        transform: translate(0);
        margin: -24px auto 0px;
        padding: 24px 32px;
        width: calc(100% - 16px);
    }
}

#solution .flow .explanation .explanation-dtl .explanation-dtl-num,
#solution-english .flow .explanation .explanation-dtl .explanation-dtl-num {
    width: 80px;
    height: 34px;
    line-height: 30px;
    border-top: 2px solid #ded9db;
    border-bottom: 2px solid #ded9db;
    color: #ded9db;
    text-align: center;
    font-family: "Roboto", sans-serif;
    font-size: 1.4rem;
    font-weight: bold;
}

#solution .flow .explanation .explanation-dtl .explanation-dtl-num--sp,
#solution-english .flow .explanation .explanation-dtl .explanation-dtl-num--sp {
    display: none;
}

@media screen and (max-width: 768px) {
    #solution .flow .explanation .explanation-dtl .explanation-dtl-num--sp,
    #solution-english .flow .explanation .explanation-dtl .explanation-dtl-num--sp {
        display: block;
    }
}

@media screen and (max-width: 768px) {
    #solution .flow .explanation .explanation-dtl .explanation-dtl-num,
    #solution-english .flow .explanation .explanation-dtl .explanation-dtl-num {
        margin: 0 auto 16px;
    }
}

#solution .flow .explanation .explanation-dtl .explanation-dtl-ttl,
#solution-english .flow .explanation .explanation-dtl .explanation-dtl-ttl {
    margin: 0 0 16px;
}

@media screen and (max-width: 768px) {
    #solution .flow .explanation .explanation-dtl .explanation-dtl-ttl,
    #solution-english .flow .explanation .explanation-dtl .explanation-dtl-ttl {
        text-align: center;
    }
}

#solution .flow .explanation .explanation-dtl .explanation-dtl-ttl__sub,
#solution-english .flow .explanation .explanation-dtl .explanation-dtl-ttl__sub {
    font-family: "Roboto", sans-serif;
    font-size: 2.4rem;
    color: #ded9db;
    font-weight: bold;
}

#solution .flow .explanation .explanation-dtl .explanation-dtl-ttl__main,
#solution-english .flow .explanation .explanation-dtl .explanation-dtl-ttl__main {
    color: #172b41;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #solution .flow .explanation .explanation-dtl .explanation-dtl-ttl__main,
    #solution-english .flow .explanation .explanation-dtl .explanation-dtl-ttl__main {
        font-size: 1.6rem;
    }
}

#solution .flow .explanation .explanation-dtl .explanation-dtl-txt,
#solution-english .flow .explanation .explanation-dtl .explanation-dtl-txt {
    font-size: 1.4rem;
    text-align: justify;
}

#solution .delighter,
#solution-english .delighter {
    opacity: 0;
    -webkit-transform: translateY(60px);
    transform: translateY(60px);
    -webkit-transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, -webkit-transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out;
    transition: opacity 1s ease-out, transform 1s ease-out, -webkit-transform 1s ease-out;
}

#solution .delighter.started,
#solution-english .delighter.started {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

.partner-header {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
}

.partner-header .partner-header-head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 8px 64px;
    background: #172b41;
}

@media screen and (max-width: 768px) {
    .partner-header .partner-header-head {
        padding: 8px 16px;
    }
}

.partner-header .partner-header-foot {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 28px 64px;
    background: #fff;
    -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.05);
}

@media screen and (max-width: 768px) {
    .partner-header .partner-header-foot {
        padding: 16px;
    }
}

.partner-header .partner-header-text {
    color: #fff;
    font-size: 1.2rem;
}

.partner-header .partner-header-text a {
    color: #fff;
}

.partner-header .partner-header-ttl {
    font-family: 'HiraKakuPro-W6';
}

.partner-header .partner-header-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 768px) {
    .partner-header .partner-header-nav {
        display: none;
    }
}

.partner-header .partner-header-nav__item:not(:last-child) {
    margin: 0 32px 0 0;
}

.partner-header .partner-header-nav__item a {
    color: #738496;
    font-size: 1.4rem;
    pointer-events: none;
}

.partner-footer {
    padding: 32px 0 40px;
}

.partner-footer .copy {
    color: #738496;
    font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
    .partner-footer .copy {
        text-align: center;
    }
}

#partnerpotal {
    padding: 38px 0 0;
}

@media screen and (max-width: 768px) {
    #partnerpotal {
        padding: 32px 0 0;
    }
}

#partnerpotal .partner-ttl {
    margin: 0 0 56px;
}

@media screen and (max-width: 768px) {
    #partnerpotal .partner-ttl {
        margin: 0 0 32px;
        text-align: center;
    }
}

#partnerpotal .partner-ttl__main {
    color: #2078dc;
    font-size: 4.0rem;
    font-weight: bold;
    line-height: 1.6;
}

@media screen and (max-width: 768px) {
    #partnerpotal .partner-ttl__main {
        font-size: 3.2rem;
        line-height: 1.4;
    }
}

#partnerpotal .partner-ttl__sub {
    font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
    #partnerpotal .partner-ttl__sub {
        font-size: 1.2rem;
    }
}

#partnerpotal .partner-ttl.center {
    text-align: center;
}

#partnerpotal .l-partner-hero-unit2 {
    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;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#partnerpotal .l-partner-hero-unit2 .l-partner-hero-vsl {
    width: calc(50% - 40px);
}

@media screen and (max-width: 768px) {
    #partnerpotal .l-partner-hero-unit2 .l-partner-hero-vsl {
        width: 100%;
    }
}

#partnerpotal .l-partner-hero-unit2 .l-partner-hero-dtl {
    width: calc(50% - 40px);
}

@media screen and (max-width: 768px) {
    #partnerpotal .l-partner-hero-unit2 .l-partner-hero-dtl {
        width: 100%;
    }
}

#partnerpotal .partner-hero {
    min-height: 780px;
    padding: 64px 0 216px;
    background: url("../img/partner/hero-bg.png") top/2940px 780px no-repeat;
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    #partnerpotal .partner-hero {
        background-image: url("../img/partner/hero-bg@2x.png");
    }
}

@media screen and (max-width: 768px) {
    #partnerpotal .partner-hero {
        min-height: 0;
        margin: 0 0 40px;
        padding: 32px 0;
        background: url("../img/partner/sp-hero-bg.png") top/cover no-repeat;
    }
}

@media screen and (max-width: 768px) {
    #partnerpotal .partner-hero .partner-hero-vsl {
        width: 80%;
        margin: 0 auto 24px;
    }
}

#partnerpotal .partner-hero .partner-hero-dtl-release {
    position: relative;
    margin: 0 0 24px;
    padding: 0 0 16px;
    font-size: 1.2rem;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #partnerpotal .partner-hero .partner-hero-dtl-release {
        text-align: center;
    }
}

#partnerpotal .partner-hero .partner-hero-dtl-release::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    width: 24px;
    height: 1px;
    background: #2078dc;
}

@media screen and (max-width: 768px) {
    #partnerpotal .partner-hero .partner-hero-dtl-release::after {
        right: 0;
        left: 0;
        margin: 0 auto;
    }
}

#partnerpotal .partner-hero .partner-hero-dtl-pagetitle {
    margin: 0 0 16px;
    font-size: 4.0rem;
    line-height: 1.6;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #partnerpotal .partner-hero .partner-hero-dtl-pagetitle {
        margin: 0 0 8px;
        font-size: 3.2rem;
        text-align: center;
        line-height: 1.4;
    }
}

#partnerpotal .partner-hero .partner-hero-dtl-text {
    margin: 0 0 32px;
    font-size: 1.4rem;
    line-height: 2;
}

@media screen and (max-width: 768px) {
    #partnerpotal .partner-hero .partner-hero-dtl-text {
        text-align: center;
    }
}

#partnerpotal .partner-hero .accept-btn a {
    display: block;
    width: 200px;
    height: 48px;
    background: #2078dc;
    border-radius: 24px;
    -webkit-box-shadow: 0 6px 12px 0 rgba(32, 120, 220, 0.15);
    box-shadow: 0 6px 12px 0 rgba(32, 120, 220, 0.15);
    text-align: center;
    color: #fff;
    font-size: 1.4rem;
    line-height: 48px;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #partnerpotal .partner-hero .accept-btn a {
        margin: 0 auto;
    }
}

#partnerpotal .about {
    position: relative;
    z-index: 1;
    padding: 8px 0 80px;
    background: url("../img/partner/about-bg.jpg") bottom/cover no-repeat;
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    #partnerpotal .about {
        background-image: url("../img/partner/about-bg@2x.jpg");
    }
}

#partnerpotal .about::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 160px;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(transparent));
    background: linear-gradient(to bottom, #fff, transparent);
}

#partnerpotal .about .l-about-unit2 {
    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;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#partnerpotal .about .l-about-unit2 .l-about-dtl {
    width: calc(44% - 32px);
}

@media screen and (max-width: 768px) {
    #partnerpotal .about .l-about-unit2 .l-about-dtl {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        width: 100%;
    }
}

#partnerpotal .about .l-about-unit2 .l-about-vsl {
    width: calc(56% - 32px);
}

@media screen and (max-width: 768px) {
    #partnerpotal .about .l-about-unit2 .l-about-vsl {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        width: 100%;
        margin: 0 0 24px;
    }
}

#partnerpotal .about .about-dtl .about-dtl-catch {
    margin: 0 0 16px;
    font-size: 2.8rem;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #partnerpotal .about .about-dtl .about-dtl-catch {
        font-size: 2.4rem;
        text-align: center;
    }
}

#partnerpotal .about .about-dtl .about-dtl-text {
    margin: 0 0 32px;
    font-size: 1.4rem;
    text-align: justify;
}

#partnerpotal .about .about-dtl .about-dtl-list {
    counter-reset: about-num;
}

#partnerpotal .about .about-dtl .about-dtl-list__item:not(:last-child) {
    margin: 0 0 24px;
    min-height: 24px;
    padding: 0 0 24px;
    border-bottom: solid 1px #d5dde0;
}

#partnerpotal .about .about-dtl .about-dtl-list__item dt {
    position: relative;
    margin: 0 0 8px;
    padding: 0 0 0 32px;
    color: #2078dc;
    font-size: 2rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#partnerpotal .about .about-dtl .about-dtl-list__item dt::before {
    counter-increment: about-num;
    content: counter(about-num);
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background: #2078dc;
    border-radius: 2px;
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
    line-height: 24px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#partnerpotal .about .about-dtl .about-dtl-list__item dd {
    font-size: 1.4rem;
    font-family: 'HiraKakuPro-W6';
}

#partnerpotal .about .about-desc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 24px 32px;
    border: solid 1px #d5dde0;
    border-radius: 4px;
}

@media screen and (max-width: 768px) {
    #partnerpotal .about .about-desc {
        padding: 24px;
    }
}

#partnerpotal .about .about-desc .about-desc-vsl {
    width: 70px;
}

@media screen and (max-width: 768px) {
    #partnerpotal .about .about-desc .about-desc-vsl {
        width: 56px;
    }
}

#partnerpotal .about .about-desc .about-desc-dtl {
    width: calc(100% - 102px);
}

@media screen and (max-width: 768px) {
    #partnerpotal .about .about-desc .about-desc-dtl {
        width: calc(100% - 80px);
    }
}

#partnerpotal .about .about-desc .about-desc-dtl dt {
    margin: 0 0 8px;
    color: #2078dc;
    font-size: 2rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#partnerpotal .value {
    counter-reset: value-num;
    padding: 64px 0 280px;
    background: #f4f6f9;
}

@media screen and (max-width: 768px) {
    #partnerpotal .value {
        padding: 64px 0 168px;
    }
}

#partnerpotal .value .l-value-unit3,
#partnerpotal .value .l-value-unit4 {
    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;
}

#partnerpotal .value .l-value-unit3 .l-value-col {
    width: calc(33.33% - 26.66px);
}

@media screen and (max-width: 768px) {
    #partnerpotal .value .l-value-unit3 .l-value-col {
        width: 100%;
    }
}

#partnerpotal .value .l-value-unit4 .l-value-col {
    width: calc(25% - 30px);
}

@media screen and (max-width: 768px) {
    #partnerpotal .value .l-value-unit4 .l-value-col {
        width: 100%;
    }
}

#partnerpotal .value .value-frame {
    padding: 64px 40px;
    background: #fff;
    border-radius: 4px;
    -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.05);
}

@media screen and (max-width: 768px) {
    #partnerpotal .value .value-frame {
        padding: 48px 24px;
    }
}

#partnerpotal .value .value-list:not(:last-child) {
    margin: 0 0 64px;
    padding: 0 0 64px;
    border-bottom: solid 1px #d5dde0;
}

@media screen and (max-width: 768px) {
    #partnerpotal .value .value-list__item:not(:last-child) {
        margin: 0 0 40px;
    }
}

#partnerpotal .value .value-list__item .value-list-ttl4 {
    position: relative;
    margin: 0 0 16px;
    padding: 0 0 0 32px;
    color: #2078dc;
    font-size: 2rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#partnerpotal .value .value-list__item .value-list-ttl4::before {
    counter-increment: value-num;
    content: counter(value-num);
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    background: #2078dc;
    border-radius: 2px;
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
    line-height: 24px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#partnerpotal .value .value-list__item .value-list-vsl {
    margin: 0 0 16px;
}

#partnerpotal .value .value-list__item .value-list-ttl5 {
    margin: 0 0 8px;
    font-family: 'HiraKakuPro-W6';
}

#partnerpotal .value .value-list__item .value-list-text {
    font-size: 1.4rem;
    text-align: justify;
}

@media screen and (max-width: 768px) {
    #partnerpotal .value .value-list.tool .value-list__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

#partnerpotal .value .value-list.tool .value-list__item .value-list-vsl {
    max-width: 64px;
    margin: 0 auto 32px;
}

@media screen and (max-width: 768px) {
    #partnerpotal .value .value-list.tool .value-list__item .value-list-dtl {
        width: calc(100% - 96px);
    }
}

#partnerpotal .forum {
    position: relative;
    padding: 108px 0 76px;
    background: url("../img/partner/forum-bg.png") center/cover no-repeat;
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    #partnerpotal .forum {
        background-image: url("../img/partner/forum-bg@2x.png");
    }
}

@media screen and (max-width: 768px) {
    #partnerpotal .forum {
        padding: 80px 0 64px;
        background-image: url("../img/partner/sp-forum-bg.png");
    }
}

#partnerpotal .forum .headline {
    margin: 0 0 32px;
}

@media screen and (max-width: 768px) {
    #partnerpotal .forum .headline {
        margin: 0 0 24px;
    }
}

#partnerpotal .forum .forum-img {
    position: absolute;
    top: -214px;
    right: 0;
    left: 0;
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    #partnerpotal .forum .forum-img {
        top: -116px;
        max-width: 340px;
    }
}

#partnerpotal .forum .forum-text {
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
}

@media screen and (max-width: 768px) {
    #partnerpotal .forum .forum-text {
        text-align: justify;
    }
}

#partnerpotal .pre {
    padding: 56px 0 64px;
    background: #172b41;
}

#partnerpotal .pre .l-pre-unit2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#partnerpotal .pre .l-pre-unit2 .l-pre-dtl {
    width: calc(50% - 20px);
}

@media screen and (max-width: 768px) {
    #partnerpotal .pre .l-pre-unit2 .l-pre-dtl {
        width: 100%;
        margin: 0 0 24px;
    }
}

#partnerpotal .pre .l-pre-unit2 .l-pre-form {
    width: calc(50% - 20px);
}

@media screen and (max-width: 768px) {
    #partnerpotal .pre .l-pre-unit2 .l-pre-form {
        width: 100%;
    }
}

#partnerpotal .pre .pre-ttl {
    margin: 0 0 16px;
    color: #fff;
    font-size: 2rem;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #partnerpotal .pre .pre-ttl {
        text-align: center;
    }
}

#partnerpotal .pre .pre-text {
    color: #fff;
    font-size: 1.4rem;
}

#partnerpotal .pre .mail-field {
    margin: 0 0 16px;
    background: #fff;
    border: none;
}

#partnerpotal .pre .entry-btn {
    display: block;
    width: 120px;
    height: 48px;
    margin: 0 0 0 auto;
    background: #2078dc;
    border-radius: 24px;
    -webkit-box-shadow: 0 6px 12px 0 rgba(32, 120, 220, 0.15);
    box-shadow: 0 6px 12px 0 rgba(32, 120, 220, 0.15);
    text-align: center;
    color: #fff;
    font-size: 1.4rem;
    line-height: 48px;
    font-family: 'HiraKakuPro-W6';
    cursor: pointer;
}

#partnerpotal .pre .entry-btn input {
    display: none;
}

#partnerpotal .pre .wpcf7-response-output,
#partnerpotal .pre .wpcf7-validation-errors {
    display: none !important;
}

#partnerpotal .entry-result {
    overflow: hidden;
    max-width: 640px;
    padding: 64px;
    background: url("../img/partner/entry-result-bg.png") center/cover no-repeat;
    border-radius: 4px;
}

@media screen and (max-width: 768px) {
    #partnerpotal .entry-result {
        width: calc(100% - 32px);
        margin: 0 auto;
        padding: 48px 24px;
    }
}

#partnerpotal .entry-result .entry-result-vsl {
    width: 64px;
    margin: 0 auto 32px;
}

#partnerpotal .entry-result .entry-result-ttl {
    margin: 0 0 20px;
    color: #fff;
    font-size: 2.4rem;
    text-align: center;
    font-family: 'HiraKakuPro-W6';
}

#partnerpotal .entry-result .entry-result-text {
    margin: 0 0 20px;
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
}

#partnerpotal .entry-result .entry-result-close a {
    display: block;
    width: 200px;
    height: 48px;
    margin: 0 auto;
    border: solid 1px #fff;
    border-radius: 24px;
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
    line-height: 48px;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #career .about
    #career-english .about {
        margin: 0 0 48px;
    }
}

@media screen and (max-width: 768px) {
    #career .about .about-dtl,
    #career-english .about .about-dtl {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
}

#career .about .about-dtl .about-dtl-catch,
#career-english .about .about-dtl .about-dtl-catch {
    margin: 0 0 24px;
    font-size: 3.2rem;
    color: #fff;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #career .about .about-dtl .about-dtl-catch,
    #career-english .about .about-dtl .about-dtl-catch {
        font-size: 2.4rem;
    }
}

#career .about .about-dtl .about-dtl-catch span,
#career-english .about .about-dtl .about-dtl-catch span {
    display: inline-block;
    padding: 8px 16px;
    background: #172b41;
}

@media screen and (max-width: 768px) {
    #career .about .about-dtl .about-dtl-catch span,
    #career-english .about .about-dtl .about-dtl-catch span {
        padding: 4px 16px;
    }
}

#career .about .about-dtl .about-dtl-text,
#career-english .about .about-dtl .about-dtl-text {
    line-height: 2;
}

@media screen and (max-width: 768px) {
    #career .about .about-img,
    #career-english .about .about-img {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
}

#career .employment-ttl,
#career-english .employment-ttl {
    margin: 0 0 24px;
    padding: 20px;
    background: #ded9db;
    font-size: 2rem;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 768px) {
    #career .employment-ttl,
    #career-english .employment-ttl {
        padding: 16px 20px;
        font-size: 1.6rem;
    }
}

#career .btn a,
#career-english .btn a {
    max-width: 340px;
}

#ai-deploy-engineer .job-desc-lead,
#product-engineer .job-desc-lead,
#sales .job-desc-lead {
    margin: 0 0 40px;
    text-align: center;
    line-height: 2;
}

@media screen and (max-width: 960px) {
    #ai-deploy-engineer .job-desc-lead,
    #product-engineer .job-desc-lead,
    #sales .job-desc-lead {
        margin: 0 0 32px;
        text-align: justify;
    }
}

#ai-deploy-engineer .job-desc-data__item,
#product-engineer .job-desc-data__item,
#sales .job-desc-data__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#ai-deploy-engineer .job-desc-data__item:first-child dt,
#product-engineer .job-desc-data__item:first-child dt,
#sales .job-desc-data__item:first-child dt {
    border-top: solid 1px #1c3959;
}

@media screen and (max-width: 640px) {
    #ai-deploy-engineer .job-desc-data__item:first-child dt,
    #product-engineer .job-desc-data__item:first-child dt,
    #sales .job-desc-data__item:first-child dt {
        border-top: none;
    }
}

#ai-deploy-engineer .job-desc-data__item:first-child dd,
#product-engineer .job-desc-data__item:first-child dd,
#sales .job-desc-data__item:first-child dd {
    border-top: solid 1px #cfd9e9;
}

@media screen and (max-width: 640px) {
    #ai-deploy-engineer .job-desc-data__item:first-child dd,
    #product-engineer .job-desc-data__item:first-child dd,
    #sales .job-desc-data__item:first-child dd {
        border-top: none;
    }
}

#ai-deploy-engineer .job-desc-data__item dt,
#product-engineer .job-desc-data__item dt,
#sales .job-desc-data__item dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 240px;
    border-bottom: solid 1px #1c3959;
    color: #597098;
}

@media screen and (max-width: 960px) {
    #ai-deploy-engineer .job-desc-data__item dt,
    #product-engineer .job-desc-data__item dt,
    #sales .job-desc-data__item dt {
        width: 200px;
    }
}

@media screen and (max-width: 640px) {
    #ai-deploy-engineer .job-desc-data__item dt,
    #product-engineer .job-desc-data__item dt,
    #sales .job-desc-data__item dt {
        position: relative;
        display: block;
        width: 100%;
        padding: 0 0 8px;
        border-color: #cfd9e9;
    }
}

@media screen and (max-width: 640px) {
    #ai-deploy-engineer .job-desc-data__item dt::after,
    #product-engineer .job-desc-data__item dt::after,
    #sales .job-desc-data__item dt::after {
        content: "";
        display: block;
        position: absolute;
        bottom: -1px;
        left: 0;
        width: 32px;
        height: 1px;
        background: #1c3959;
    }
}

#ai-deploy-engineer .job-desc-data__item dd,
#product-engineer .job-desc-data__item dd,
#sales .job-desc-data__item dd {
    width: calc(100% - 240px);
    padding: 25px;
    border-bottom: solid 1px #cfd9e9;
}

@media screen and (max-width: 960px) {
    #ai-deploy-engineer .job-desc-data__item dd,
    #product-engineer .job-desc-data__item dd,
    #sales .job-desc-data__item dd {
        width: calc(100% - 200px);
    }
}

@media screen and (max-width: 640px) {
    #ai-deploy-engineer .job-desc-data__item dd,
    #product-engineer .job-desc-data__item dd,
    #sales .job-desc-data__item dd {
        width: 100%;
        padding: 10px 0 20px;
        border: none;
    }
}

#ai-deploy-engineer .job-desc-data__item dd a.link,
#product-engineer .job-desc-data__item dd a.link,
#sales .job-desc-data__item dd a.link {
    font-weight: bold;
    text-decoration: underline;
}

#ai-deploy-engineer .job-desc-data__item dd a.link:hover,
#product-engineer .job-desc-data__item dd a.link:hover,
#sales .job-desc-data__item dd a.link:hover {
    text-decoration: none;
}

#ai-deploy-engineer .apply-inner,
#product-engineer .apply-inner,
#sales .apply-inner {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto 80px;
    padding: 0 40px;
}

@media screen and (max-width: 640px) {
    #ai-deploy-engineer .apply-inner,
    #product-engineer .apply-inner,
    #sales .apply-inner {
        margin: 0 auto 60px;
        padding: 0;
    }
}

#ai-deploy-engineer .apply-note,
#product-engineer .apply-note,
#sales .apply-note {
    padding: 48px 48px 40px;
    border: solid 2px #cfd9e9;
}

@media screen and (max-width: 640px) {
    #ai-deploy-engineer .apply-note,
    #product-engineer .apply-note,
    #sales .apply-note {
        padding: 32px 32px 0;
        border: none;
        border-top: solid 2px #cfd9e9;
    }
}

@media screen and (max-width: 400px) {
    #ai-deploy-engineer .apply-note,
    #product-engineer .apply-note,
    #sales .apply-note {
        padding: 32px 16px 0;
    }
}

#ai-deploy-engineer .apply-note .apply-note-ttl,
#product-engineer .apply-note .apply-note-ttl,
#sales .apply-note .apply-note-ttl {
    margin: 0 0 24px;
    padding: 0 0 0 16px;
    border-left: solid 4px #ded9db;
    line-height: 2.4;
    font-family: 'HiraKakuPro-W6';
}

#ai-deploy-engineer .apply-note .text,
#product-engineer .apply-note .text,
#sales .apply-note .text {
    line-height: 2;
}

#ai-deploy-engineer .apply-note .btn a,
#product-engineer .apply-note .btn a,
#sales .apply-note .btn a {
    max-width: 340px;
}

#archive .news-list {
    margin: 0 0 48px;
}

#archive .news-list__item {
    padding: 25px 0 20px;
    border-bottom: solid 1px #cfd9e9;
}

#archive .news-list__item .news-meta {
    margin: 0 0 10px;
    font-size: 1.2rem;
}

#archive .news-list__item .news-meta__cate {
    margin: 0 16px 0 0;
    padding: 0 16px 0 0;
    border-right: solid 1px #cfd9e9;
    font-weight: bold;
}

#archive .news-list__item .news-meta__date {
    color: #597098;
    font-weight: 300;
    font-family: "Roboto", sans-serif;
}

#archive .news-list__item dd {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

#archive .news-list__item dd a {
    overflow: hidden;
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
}

#archive .news-list__item dd a:hover {
    -webkit-transform: translateX(6px);
    transform: translateX(6px);
}

#archive .news-list__item dd a svg {
    margin: 0 8px 4px 0;
}

#archive .wp-pagenavi {
    text-align: center;
}

#archive .wp-pagenavi a,
#archive .wp-pagenavi span {
    display: inline-block;
    width: 40px;
    height: 40px;
    margin: 0 4px;
    background: #eff3f8;
    font-weight: bold;
    line-height: 40px;
    font-family: "Roboto", sans-serif;
}

#archive .wp-pagenavi a:hover, #archive .wp-pagenavi a.current,
#archive .wp-pagenavi span:hover,
#archive .wp-pagenavi span.current {
    opacity: 1;
    background: #172b41;
    color: #fff;
}

#archive .wp-pagenavi a.previouspostslink,
#archive .wp-pagenavi a.nextpostslink {
    position: relative;
}

#archive .wp-pagenavi a.previouspostslink::before,
#archive .wp-pagenavi a.nextpostslink::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    width: 5px;
    height: 8px;
    margin: 0 auto;
    background: url("../img/common/arrow.svg") center/contain no-repeat;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#archive .wp-pagenavi a.previouspostslink:hover::before, #archive .wp-pagenavi a.previouspostslink.current::before,
#archive .wp-pagenavi a.nextpostslink:hover::before,
#archive .wp-pagenavi a.nextpostslink.current::before {
    background: url("../img/common/arrow-wht.svg");
}

#archive .wp-pagenavi a.previouspostslink::before {
    -webkit-transform: translateY(-50%) rotateZ(180deg);
    transform: translateY(-50%) rotateZ(180deg);
}

#single .news {
    margin: 0 0 60px;
    padding: 0 0 80px;
    border-bottom: solid 1px #cfd9e9;
}

@media screen and (max-width: 960px) {
    #single .news {
        margin: 0 0 40px;
        padding: 0 0 64px;
    }
}

#single .news .news-meta {
    margin: 0 0 10px;
    font-size: 1.2rem;
}

#single .news .news-meta__cate {
    margin: 0 16px 0 0;
    padding: 0 16px 0 0;
    border-right: solid 1px #cfd9e9;
    font-weight: bold;
}

#single .news .news-meta__date {
    color: #597098;
    font-weight: 300;
    font-family: "Roboto", sans-serif;
}

#single .news .news-ttl2 {
    margin: 0 0 40px;
    padding: 0 0 20px;
    border-bottom: solid 1px #cfd9e9;
    font-size: 2.4rem;
    line-height: 1.2;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    #single .news .news-ttl2 {
        line-height: 1.6;
    }
}

#single .news .news-eyecatch {
    max-width: 800px;
    margin: 0 auto 40px;
}

#single .news .news-dtl h3 {
    margin: 0 0 25px;
    padding: 20px;
    background: #ded9db;
    font-size: 2rem;
    line-height: 1;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    #single .news .news-dtl h3 {
        margin: 0 0 20px;
        font-size: 1.6rem;
    }
}

#single .news .news-dtl h4 {
    margin: 0 0 20px;
    padding: 4px 0 4px 16px;
    border-left: solid 4px #ded9db;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    #single .news .news-dtl h4 {
        margin: 0 0 16px;
        padding: 4px 0 2px 14px;
    }
}

#single .news .news-dtl a {
    position: relative;
    padding: 0 0 0 16px;
    text-decoration: underline;
    font-family: 'HiraKakuPro-W6';
}

#single .news .news-dtl a::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 5px;
    height: 8px;
    background: url("../img/common/arrow.svg") center/contain no-repeat;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#single .news .news-dtl a:hover {
    text-decoration: none;
}

#single .news .news-dtl a.external::before {
    width: 7px;
    background-image: url("../img/common/external.svg");
}

#single .pagelink {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    width: 100%;
}

@media screen and (max-width: 640px) {
    #single .pagelink {
        padding: 56px 0 0;
    }
}

#single .pagelink__back {
    width: 100%;
    max-width: 340px;
}

@media screen and (max-width: 640px) {
    #single .pagelink__back {
        max-width: none;
    }
}

#single .pagelink__back a {
    display: block;
    width: 100%;
    height: 64px;
    margin: 0 auto;
    background-color: #172b41;
    border-radius: 32px;
    color: #fff;
    text-align: center;
    line-height: 64px;
    font-family: 'HiraKakuPro-W6';
}

#single .pagelink__back a:hover {
    opacity: 1;
    background-color: #ded9db;
    color: #172b41;
}

#single .pagelink .pagelink__prev,
#single .pagelink .pagelink__next {
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 640px) {
    #single .pagelink .pagelink__prev,
    #single .pagelink .pagelink__next {
        position: absolute;
        top: 0;
    }
}

#single .pagelink .pagelink__prev:hover,
#single .pagelink .pagelink__next:hover {
    text-decoration: underline;
}

@media screen and (max-width: 640px) {
    #single .pagelink .pagelink__prev {
        left: 0;
    }
}

#single .pagelink .pagelink__prev svg {
    margin: 0 8px 4px 0;
}

@media screen and (max-width: 640px) {
    #single .pagelink .pagelink__next {
        right: 0;
    }
}

#single .pagelink .pagelink__next svg {
    margin: 0 0 4px 8px;
}

/*# sourceMappingURL=../maps/style.css.map */

/*2020年3月 お問い合わせフォーム追加 start*/
#box .l-head,
#box-english .l-head,
#platform .l-head,
#platform-english .l-head,
#solution .l-head,
#solution-english .l-head {
    padding: 44px 0;
    background-color: #1c3959;
}

#box .l-head .wrap,
#box-english .l-head .wrap,
#platform .l-head .wrap,
#platform-english .l-head .wrap,
#solution .l-head .wrap,
#solution-english .l-head .wrap {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
}

#box .l-head .wrap .mdl,
#box-english .l-head .wrap .mdl,
#platform .l-head .wrap .mdl,
#platform-english .l-head .wrap .mdl,
#solution .l-head .wrap .mdl,
#solution-english .l-head .wrap .mdl {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}

#box .l-head .wrap .mdl .footer-contact-ttl,
#box-english .l-head .wrap .mdl .footer-contact-ttl,
#platform .l-head .wrap .mdl .footer-contact-ttl,
#platform-english .l-head .wrap .mdl .footer-contact-ttl,
#solution .l-head .wrap .mdl .footer-contact-ttl,
#solution-english .l-head .wrap .mdl .footer-contact-ttl {
    align-items: center;
    display: flex;
    color: #fff;
    line-height: 1;
}

#box .l-head .wrap .mdl .footer-contact-ttl__sub,
#box-english .l-head .wrap .mdl .footer-contact-ttl__sub,
#platform .l-head .wrap .mdl .footer-contact-ttl__sub,
#platform-english .l-head .wrap .mdl .footer-contact-ttl__sub,
#solution .l-head .wrap .mdl .footer-contact-ttl__sub,
#solution-english .l-head .wrap .mdl .footer-contact-ttl__sub {
    margin: 0 16px 0 0;
    font-size: 4.8rem;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#box .l-head .wrap .mdl .footer-contact-ttl__main,
#box-english .l-head .wrap .mdl .footer-contact-ttl__main,
#platform .l-head .wrap .mdl .footer-contact-ttl__main,
#platform-english .l-head .wrap .mdl .footer-contact-ttl__main,
#solution .l-head .wrap .mdl .footer-contact-ttl__main,
#solution-english .l-head .wrap .mdl .footer-contact-ttl__main {
    font-size: 2rem;
    font-family: 'HiraKakuPro-W6';
}

#box .l-head .wrap .mdl .footer-contact-btn,
#box-english .l-head .wrap .mdl .footer-contact-btn,
#platform .l-head .wrap .mdl .footer-contact-btn,
#platform-english .l-head .wrap .mdl .footer-contact-btn,
#solution .l-head .wrap .mdl .footer-contact-btn,
#solution-english .l-head .wrap .mdl .footer-contact-btn {
    width: 100%;
    max-width: 380px;
}

#box .l-head .wrap .mdl .footer-contact-btn a:hover,
#box-english .l-head .wrap .mdl .footer-contact-btn a:hover,
#platform .l-head .wrap .mdl .footer-contact-btn a:hover,
#platform-english .l-head .wrap .mdl .footer-contact-btn a:hover,
#solution .l-head .wrap .mdl .footer-contact-btn a:hover,
#solution-english .l-head .wrap .mdl .footer-contact-btn a:hover {
    background: #ded9db;
    color: #131f2d;
}

#box .l-head .wrap .mdl .footer-contact-btn a:hover .ico-mail,
#box-english .l-head .wrap .mdl .footer-contact-btn a:hover .ico-mail,
#platform .l-head .wrap .mdl .footer-contact-btn a:hover .ico-mail,
#platform-english .l-head .wrap .mdl .footer-contact-btn a:hover .ico-mail,
#solution .l-head .wrap .mdl .footer-contact-btn a:hover .ico-mail,
#solution-english .l-head .wrap .mdl .footer-contact-btn a:hover .ico-mail {
    fill: #131f2d;
}

#box .l-head .wrap .mdl .footer-contact-btn a .mail,
#box-english .l-head .wrap .mdl .footer-contact-btn a .mail,
#platform .l-head .wrap .mdl .footer-contact-btn a .mail,
#platform-english .l-head .wrap .mdl .footer-contact-btn a .mail,
#solution .l-head .wrap .mdl .footer-contact-btn a .mail,
#solution-english .l-head .wrap .mdl .footer-contact-btn a .mail {
    display: inline-block;
    position: relative;
    padding: 0 0 0 24px;
}

#box .l-head .footer-contact .footer-contact-btn a .mail .ico-mail,
#box-english .l-head .footer-contact .footer-contact-btn a .mail .ico-mail,
#platform .l-head .footer-contact .footer-contact-btn a .mail .ico-mail,
#platform-english .l-head .footer-contact .footer-contact-btn a .mail .ico-mail,
#solution .l-head .footer-contact .footer-contact-btn a .mail .ico-mail,
#solution-english .l-head .footer-contact .footer-contact-btn a .mail .ico-mail {
    position: absolute;
    top: 50%;
    left: 0;
    width: 16px;
    height: 11px;
    fill: #ded9db;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

svg[class^="ico-"] {
    display: inline-block;
    fill: #333;
    vertical-align: middle;
}

#box .l-head .footer-contact .footer-contact-btn a,
#box-english .l-head .footer-contact .footer-contact-btn a,
#platform .l-head .footer-contact .footer-contact-btn a,
#platform-english .l-head .footer-contact .footer-contact-btn a,
#solution .l-head .footer-contact .footer-contact-btn a,
#solution-english .l-head .footer-contact .footer-contact-btn a {
    display: block;
    position: relative;
    width: 100%;
    padding: 28px 0;
    border: solid 2px #ded9db;
    color: #ded9db;
    text-align: center;
    line-height: 1;
    font-family: 'HiraKakuPro-W6';
}

#box .l-head .footer-contact .footer-contact-btn a .arrow .ico-arrow,
#box-english .l-head .footer-contact .footer-contact-btn a .arrow .ico-arrow,
#platform .l-head .footer-contact .footer-contact-btn a .arrow .ico-arrow,
#platform-english .l-head .footer-contact .footer-contact-btn a .arrow .ico-arrow,
#solution .l-head .footer-contact .footer-contact-btn a .arrow .ico-arrow,
#solution-english .l-head .footer-contact .footer-contact-btn a .arrow .ico-arrow {
    width: 5px;
    height: 8px;
    fill: #fff;
}

#box .l-head .footer-contact .footer-contact-btn a .arrow,
#box-english .l-head .footer-contact .footer-contact-btn a .arrow,
#platform .l-head .footer-contact .footer-contact-btn a .arrow,
#platform-english .l-head .footer-contact .footer-contact-btn a .arrow,
#solution .l-head .footer-contact .footer-contact-btn a .arrow,
#solution-english .l-head .footer-contact .footer-contact-btn a .arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 50%;
    right: 20px;
    width: 24px;
    height: 24px;
    background: #131f2d;
    border: solid 1px #131f2d;
    border-radius: 12px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: background .3s ease-out;
    transition: background .3s ease-out;
}

svg[class^="ico-"] {
    display: inline-block;
    fill: #333;
    vertical-align: middle;
}

.ico-arrow {
    width: 5px;
    height: 8px;
}

user agent stylesheet
svg:not(:root) {
    overflow: hidden;
}

/*2020年3月 お問い合わせフォーム追加 end*/

/*2020年3月 追加 start*/
.drawer .menu-list__item .ico-external {
    /*
  position: absolute;
  top: 50%;
  left: 24px;
  */
    margin-left: 10px;
    width: 8px;
    height: 7px;
    fill: #ded9db;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

header .gnav-list__item .ico-external {
    margin-left: 5px;
    width: 8px;
    height: 7px;
    fill: #ded9db;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}


footer .footer-info-menu__item .ico-external {
    /*
  position: absolute;
  top: 50%;
  left: 24px;
  */
    margin-left: 5px;
    width: 8px;
    height: 7px;
    fill: #ded9db;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

#career .wrap .headline h3,
#career-english .wrap .headline h3 {
    color: red;
    margin-top: 20px;
}

.full-content__inner__btn .ico-external {
    margin-left: 10px;
    width: 8px;
    height: 7px;
    fill: #ded9db;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

.full-content__inner__btn a:hover .ico-external {
    fill: #172b41;
}

/*2020年3月 追加 end*/
/*2020年8月 追加*/
.hero .New-Top {
    color: #FFF;
    margin: 0 0 32px;
    font-size: 7.6rem;
    font-weight: bold;
    line-height: 1.2;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    #top .hero .New-Top {
        font-size: 6.4rem;
    }
}

@media screen and (max-width: 960px) {
    #top .hero .New-Top {
        font-size: 5.8rem;
    }
}

@media screen and (max-width: 640px) {
    #top .hero .New-Top {
        font-size: 5.2rem;
        line-height: 1.3;
    }
}

@media screen and (max-width: 420px) {
    #top .hero .New-Top {
        font-size: 4rem;
    }
}

.hero .New-Top_sub {
    color: #FFF;
    margin: 0 0 32px;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 2;
    font-family: 'HiraKakuPro-W6';
}

@media screen and (max-width: 960px) {
    #top .hero .New-Top_sub {
        font-size: 1.6rem;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 640px) {
    #top .hero .New-Top_sub {
        font-size: 1.4rem;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 420px) {
    #top .hero .New-Top_sub {
        font-size: 1rem;
        margin-bottom: 120px;
    }
}

@media screen and (max-width: 320px) {
    #top .hero .New-Top_sub {
        font-size: 1rem;
        margin-bottom: 70px;
    }
}

#top .New-menu {
    padding: 70px 0;
    background: #F7FAFD;
}

@media screen and (max-width: 1280px) {
    #top .New-menu {
        padding: 60px 0;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu {
        padding: 50px 0;
    }
}

#top .wrap-New-menu {
    padding: 0;
}

#top .New-menu .New-menu_title {
    margin: 30px auto;
    font-size: 42px;
    line-height: 1.5;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    #top .New-menu .New-menu_title {
        font-size: 3.5rem;
        margin: 10px auto;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu .New-menu_title {
        font-size: 3rem;
        margin: 0 auto;
    }
}

@media screen and (max-width: 640px) {
    #top .New-menu .New-menu_title {
        font-size: 2.6rem;
        margin: 0 auto;
    }
}

@media screen and (max-width: 420px) {
    #top .New-menu .New-menu_title {
        font-size: 2rem;
        margin: 0 auto;
    }
}

#top .New-menu_List {
    margin: 40px auto;
}

@media screen and (max-width: 960px) {
    #top .New-menu_List {
        margin: 0 auto;
    }
}

#top .New-menu_List p {
    font-size: 14px;
    line-height: 1.3;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    #top .New-menu_List p {
        font-size: 1.3rem;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu_List p {
        font-size: 1.7rem;
    }
}

@media screen and (max-width: 640px) {
    #top .New-menu_List p {
        font-size: 1.2rem;
    }
}

@media screen and (max-width: 420px) {
    #top .New-menu_List p {
        font-size: 1.2rem;
    }
}

#top .New-menu_List .New-menu_List-main_top_text p {
    font-weight: bold;
}

#top .New-menu_List h2 {
    font-size: 24px;
    line-height: 1.2;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

@media screen and (max-width: 1280px) {
    #top .New-menu_List h2 {
        font-size: 2rem;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu_List h2 {
        font-size: 2.7rem;
    }
}

@media screen and (max-width: 640px) {
    #top .New-menu_List h2 {
        font-size: 2rem;
    }
}

@media screen and (max-width: 420px) {
    #top .New-menu_List h2 {
        font-size: 2rem;
    }
}


#top .New-menu_List-main {
    margin: 30px auto;
    padding: 0 10px;
    text-align: center;
}


#top .New-menu_List .New-menu_List_btn {
    padding: 0 15px;
    width: 32%;
    height: 280px;
    background-color: #FFF;
    border-top: 5px solid #172B41;
    display: inline-block;
    vertical-align: top;
    text-align: left;
    position: relative;
    box-shadow: 1px 1px 4px rgba(000, 0, 0, 0.2);
    transition: all 0.3s ease 0s;
}

#top .New-menu_List .main:nth-of-type(2) {
    margin: 0 10px;
}

#top .New-menu_List .main:hover {
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.25);
    transform: translateY(-0.2em);
}

@media screen and (max-width: 1280px) {
    #top .New-menu_List .New-menu_List_btn {
        height: 230px;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu_List .New-menu_List_btn {
        margin: 30px 0;
        width: 70%;
        height: 290px;
        background-color: #FFF;
        border-top: none;
        border-left: 10px solid #172B41;
        text-align: left;
        position: relative;
        box-shadow: 1px 1px 4px rgba(000, 0, 0, 0.2);
        transition: all 0.3s ease 0s;
    }
}

@media screen and (max-width: 640px) {
    #top .New-menu_List .New-menu_List_btn {
        font-size: 1.4rem;
        width: 90%;
        height: 200px
    }
}

@media screen and (max-width: 420px) {
    #top .New-menu_List .New-menu_List_btn {
        font-size: 1.4rem;
        width: 90%;
        height: 200px
    }
}

#top .New-menu_List_btn .top-main_img {
    position: absolute;
    width: 157px;
    top: 0;
    right: 0;
}

@media screen and (max-width: 1280px) {
    #top .New-menu_List_btn .top-main_img {
        width: 130px;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu_List_btn .top-main_img {
        width: 180px;
    }
}

@media screen and (max-width: 640px) {
    #top .New-menu_List_btn .top-main_img {
        width: 130px;
    }
}

@media screen and (max-width: 420px) {
    #top .New-menu_List_btn .top-main_img {
        width: 130px;
    }
}

#top .New-menu_List_btn .top-sub_img {
    display: inline-block;
    vertical-align: top;
    width: 60px;
}

@media screen and (max-width: 1280px) {
    #top .New-menu_List_btn .top-sub_img {
        width: 45px;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu_List_btn .top-sub_img {
        width: 50px;
    }
}

@media screen and (max-width: 640px) {
    #top .New-menu_List_btn .top-sub_img {
        width: 50px;
    }
}

@media screen and (max-width: 420px) {
    #top .New-menu_List_btn .top-sub_img {
        width: 50px;
    }
}


#top .New-menu_List .New-menu_List_btn .top-main_next {
    position: absolute;
    width: 25px;
}

@media screen and (max-width: 1280px) {
    #top .New-menu_List .New-menu_List_btn .top-main_next {
        width: 20px;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu_List .New-menu_List_btn .top-main_next {
        display: none;
    }
}


#top .New-menu_List .main .top-main_next {
    bottom: 10px;
    right: 10px;
}

#top .New-menu_List .sub .top-main_next {
    top: 7px;
    right: -15px;
}

@media screen and (max-width: 1280px) {
    #top .New-menu_List .sub .top-main_next {
        top: 5px;
    }
}


#top .New-menu_List .New-menu_List_btn a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent: -999px;
}

#top .New-menu_List .main p {
    margin: 20px 0;
}

#top .New-menu_List .New-menu_List_btn .New-menu_List-main_top {
    height: 130px;
    padding-top: 10px;
    margin-bottom: 10px;
    position: relative;
}

@media screen and (max-width: 1280px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top {
        height: 100px;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top {
        height: 120px;
        margin-bottom: 45px;
    }
}

@media screen and (max-width: 640px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top {
        height: 90px;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 420px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top {
        height: 90px;
    }
}


#top .New-menu_List .New-menu_List_btn .New-menu_List-main_top .New-menu_List-main_top_text {
    position: absolute;
    bottom: 0;
}

#top .New-menu_List .New-menu_List_btn .New-menu_List-main_top_text p {
    margin: 0 0 8px;
    color: #ded9db;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#top .New-menu_List .New-menu_List_btn .New-menu_List-main_top_text h2 {
    margin: 0;
}

#top .New-menu_List .New-menu_List-sub .sub {
    padding: 30px 15px 20px;
    height: 160px;
}

@media screen and (max-width: 640px) {
    #top .New-menu_List .New-menu_List-sub .sub {
        height: 130px;
    }
}

@media screen and (max-width: 420px) {
    #top .New-menu_List .New-menu_List-sub .sub {
        height: 130px;
    }
}

#top .New-menu_List .sub:nth-of-type(2) {
    margin: 0 10px;
}

#top .New-menu_List .sub:hover {
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.25);
    transform: translateY(-0.2em);
}

#top .New-menu_List .sub h2 {
    margin: 0 0 10px;
    line-height: 1.5;
    border-bottom: 2px solid #172B41;
}

#top .New-menu_List .sub .New-menu_List-sub_top {
    display: inline-block;
    vertical-align: middle;
    width: 80%;
    padding-left: 10px;
    position: relative;
}

.menu-header-menu-container,
.menu-header-menu-english-container {
    margin-right: 50px;
    line-height: 80px;
    vertical-align: middle;
}

.menu-header-menu-container li a,
.menu-header-menu-english-container li a {
    color: #fff;
    padding: 30px 0;
    margin: 0 30px;
}

.menu-header-menu-container li a:hover,
.menu-header-menu-english-container li a:hover {
    border-bottom: 2px solid #fff;
}

.menu li.outer-link a {
    position: relative;
}

.menu li.outer-link a:after {
    content: url('../img/sprite.png');
    position: absolute;
    top: -5px;
    right: -20px;
    width: 10px;
    height: 10px;
}

.footer .l-foot {
    padding: 20px 0 50px;
}

.footer .l-foot .wrap {
    display: flex;
}

.footer .l-foot .wrap .col {
    margin: 5px auto;
}

.footer .l-foot .wrap .col .footer-logo {
    padding: 30px 0;
}

.footer .l-foot .wrap .col a:hover {
    text-decoration: underline;
}

/* 追加CSSに入ってた分 */
.menu-header-menu-container ul li, .menu-header-menu-english-container  ul li {
    font-size: 1.5rem;
}

@media screen
and (max-width: 1280px) {
    .menu-header-menu-container ul li, .menu-header-menu-english-container  ul li {
        font-size: 1.2rem;
        margin: 0;
    }

    .menu-header-menu-container li a, .menu-header-menu-english-container  li a {
        margin: 0 20px;
    }
}

.footer .l-foot .wrap .col-1, .col-5 {
    display: none
}

@media screen
and (min-width: 960px) {
    .footer .l-foot .wrap .col-4 {
        display: none;
    }
}

.footer .l-foot .wrap .col a {
    color: #FFF;
}

.footer .l-foot .wrap .col-2 {
    width: 20%;
    margin: 0;
    color: #8B8486;
    font-size: 1rem;
    list-style: none;
}

.footer .l-foot .wrap .col-2 img {
    width: 190px;
}

.footer .l-foot .wrap .col-2 div {
    margin-top: 30px;
}

.footer .l-foot .wrap .col-2 div div {
    margin-top: 20px;
}

.footer .l-foot .wrap .col-2 div div p {
    padding-top: 5px;
}

.footer .l-foot .wrap .col-3 {
    width: 70%;
    margin: 0;
    font-size: 1.4rem;
    list-style: none;
}

.footer .l-foot .wrap .col-3 ul {
    display: inline-block;
    vertical-align: top;
    width: 23%;
    margin-top: 30px;
    margin-left: 10px;
}

.footer .l-foot .wrap .col-3 ul li {
    padding-bottom: 5px;
}

@media screen
and (max-width: 1280px) {
    .footer .l-foot .wrap .col-2 {
        font-size: 1rem;
        width: 25%;
    }
}

@media screen
and (max-width: 1280px) {
    .footer .l-foot .wrap .col-3 {
        font-size: 1.1rem;
    }

    .footer .l-foot .wrap .col-3 ul {
        width: 22%;
    }
}


@media screen
and (max-width: 960px) {
    .footer .l-foot .wrap .col-2, .col-3 {
        display: none;
    }

    .footer .l-foot .wrap .col-4 {
        font-family: "Roboto", sans-serif;
        width: 100%;
    }

    .footer .l-foot .wrap .col-4 {
        width: 100%;
    }

    .footer .l-foot .wrap .col-4 img {
        width: 300px;
        margin: 0 20px;
    }

    .footer .l-foot .wrap .col-4 div div {
        margin: 20px 20px;
    }

    .footer .l-foot .wrap .col-4 ul {
        padding: 30px 0 30px 20px;
    }

    .footer .l-foot .wrap .col-4 ul:nth-last-of-type(n+3) {
        display: inline-block;
        vertical-align: top;
        width: 40%;
    }

    .footer .l-foot .wrap .col-4 ul:nth-of-type(n+3) {
        border-top: 2px solid #38404C;
    }

    .footer .l-foot .wrap .col-4 ul li {
        padding: 5px 0;
    }

    .footer .l-foot .wrap .col-4 p {
        color: #8B8486;
        text-align: right
    }

    .footer .l-foot .wrap .col-4 ul li {
        font-size: 1.7rem;
    }
}


@media screen
and (max-width: 640px) {
    .footer .l-foot .wrap .col-4 img {
        width: 200px;
    }

    .footer .l-foot .wrap .col-4 ul li {
        font-size: 1.3rem;
    }

    .footer .l-foot .wrap .col-4 p {
        font-size: 1.1rem;
    }
}

@media screen
and (max-width: 420px) {
    .footer .l-foot .wrap .col-4 img {
        width: 150px;
    }

    .footer .l-foot .wrap .col-4 ul li {
        font-size: 1.2rem;
    }

    .footer .l-foot .wrap .col-4 p {
        font-size: 1rem;
    }
}

/*2020年8月 追加 end*/

/*2020年12月 追加*/
@media screen and (max-width: 960px) {
    .hero .none-960 {
        display: none;
    }
}

@media screen and (max-width: 420px) {
    .hero .none-420 {
        display: none;
    }
}

.hero .block-420 {
    display: none;
}

@media screen and (max-width: 420px) {
    .hero .block-420 {
        display: block;
    }
}

#top .hero {
    height: auto;
    padding-top: 1000px;
}

@media screen and (max-width: 960px) {
    #top .hero {
        padding-top: 1340px;
    }
}

@media screen and (max-width: 640px) {
    #top .hero {
        padding-top: 920px;
    }
}

@media screen and (max-width: 420px) {
    #top .hero {
        padding-top: 680px;
    }
}

#top .hero .hero-content {
    position: absolute;
    top: 100px;
    color: #FFF;
}

@media screen and (max-width: 1280px) {
    #top .hero .hero-content {
        top: 100px;
        left: 0;
    }
}

@media screen and (max-width: 960px) {
    #top .hero .hero-content {
        top: 100px;
        left: 0;
    }
}

@media screen and (max-width: 640px) {
    #top .hero .hero-content {
        top: 80px;
    }
}

@media screen and (max-width: 420px) {
    #top .hero .hero-content {
        top: 70px;
    }
}

#top .hero .New-Top {
    color: #FFF;
    margin: 0 auto 5px;
    font-size: 5.4rem;
    font-weight: bold;
    line-height: 1.2;
    font-family: "Roboto", sans-serif;
    width: 97%;
}

@media screen and (max-width: 960px) {
    #top .hero .New-Top {
        font-size: 5.4rem;
        width: 90%;
        margin: 0 auto;
    }    
}

@media screen and (max-width: 640px) {
    #top .hero .New-Top {
        font-size: 4.6rem;
    }    
}

@media screen and (max-width: 520px) {
    #top .hero .New-Top {
        font-size: 3.6rem;
    }    
}

@media screen and (max-width: 420px) {
    #top .hero .New-Top {
        font-size: 2.2rem;
    }    
}

#top .New-menu {
    padding: 0 0 30px 0;
    background: none;
}

@media screen and (max-width: 1280px) {
    #top .New-menu {
        padding: 0 0 20px;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu {
        padding: 0;
    }
}

#top .New-menu .l-unit2 {
    width: 97%;
}

@media screen and (max-width: 1280px) {
    #top .New-menu .l-unit2 {
        width: 100%;
    }
}

#top .New-menu_List {
    margin: 0 auto;
}

#top .New-menu_List-main {
    margin: 15px auto;
    padding: 0 10px;
    text-align: center;
}

@media screen and (max-width: 960px) {
    #top .New-menu_List-main {
        margin: 0 auto;
    }
}

#top .New-menu_List .New-menu_List_btn {
    padding: 0 15px;
    width: 32%;
    height: 200px;
    background-color: transparent;
    background-image:
        linear-gradient(30deg, rgba(38,77,109,0.7), rgba(54,197,206,0.7)),
        url(../img/common/panel-plus.svg.html),
        url(../img/common/panel-plus.svg.html),
        url(../img/common/panel-plus.svg.html);
    background-position:
        0 0,
        3% 5%,
        3% 95%,
        97% 5%;
    background-repeat: no-repeat;
    border-top: 0;
    border-left: 0;
    display: inline-block;
    vertical-align: top;
    text-align: left;
    position: relative;
    box-shadow: 1px 1px 4px rgba(61, 202, 219, 0.8);
    transition: all 0.3s ease 0s;
}

@media screen and (max-width: 960px) {
    #top .New-menu_List .New-menu_List_btn {
        background-size: contain;
        background-position:
            0 0,
            right top;
        margin: 30px 0;
        padding: 0 25px;
        width: 90%;
        height: 115px;
    }
    #top .New-menu_List .New-menu_List-main:nth-of-type(1) .New-menu_List_btn:nth-of-type(1) {
        background-image:
            linear-gradient(30deg, rgba(38,77,109,0.7), rgba(54,197,206,0.7)),
            url(../img/top/top-platform.png);
    }
    #top .New-menu_List .New-menu_List-main:nth-of-type(1) .New-menu_List_btn:nth-of-type(2) {
        background-image:
            linear-gradient(30deg, rgba(38,77,109,0.7), rgba(54,197,206,0.7)),
            url(../img/top/top-solution.png);
    }
    #top .New-menu_List .New-menu_List-main:nth-of-type(1) .New-menu_List_btn:nth-of-type(3) {
        background-image:
            linear-gradient(30deg, rgba(38,77,109,0.7), rgba(54,197,206,0.7)),
            url(../img/top/top-product.png);
    }
    #top .New-menu_List .New-menu_List-main:nth-of-type(2) .New-menu_List_btn:nth-of-type(1) {
        background-image:
            linear-gradient(30deg, rgba(38,77,109,0.7), rgba(54,197,206,0.7)),
            url(../img/top/top-service.png);
    }
    #top .New-menu_List .New-menu_List-main:nth-of-type(2) .New-menu_List_btn:nth-of-type(2) {
        background-image:
            linear-gradient(30deg, rgba(38,77,109,0.7), rgba(54,197,206,0.7)),
            url(../img/top/top-gatekeeper.png);
    }
    #top .New-menu_List .New-menu_List-main:nth-of-type(2) .New-menu_List_btn:nth-of-type(3) {
        background-image:
            linear-gradient(30deg, rgba(38,77,109,0.7), rgba(54,197,206,0.7)),
            url(../img/top/top-store.png);
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu_List .New-menu_List-main:first-of-type .New-menu_List_btn:last-of-type {
        margin-bottom: 0;
    }
}

@media screen and (max-width: 640px) {
    #top .New-menu_List .New-menu_List_btn {
        height: 80px;
        margin: 10px 0;
        padding: 0 25px 0 10px;
    }
}

@media screen and (max-width: 420px) {
    #top .New-menu_List .New-menu_List_btn {
        height: 60px;
    }
}

#top .New-menu_List .main:hover {
    box-shadow: 0 3px 6px 0 rgba(61, 202, 219, 0.8);
    transform: translateY(-0.2em);
}

@media screen and (max-width: 960px) {
    #top .New-menu_List .main p {
        font-size: 1.4rem;
        margin: 5px 0;
    }
}
@media screen and (max-width: 640px) {
    #top .New-menu_List .main p {
        font-size: 1.2rem;
    }
}

#top .New-menu_List_btn .top-main_img {
    position: absolute;
    width: 135px;
    top: 5%;
    right: 5%;
}
@media screen and (max-width: 1280px) {
    #top .New-menu_List_btn .top-main_img {
        width: 130px;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu_List_btn .top-main_img {
        display: none;
    }
}

#top .New-menu_List .New-menu_List_btn .New-menu_List-main_top {
    height: 110px;
    padding-top: 10px;
    margin-bottom: 10px;
    position: relative;
}

@media screen and (max-width: 960px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top {
        height: 50px;
        margin-bottom: 0;
    }
}

@media screen and (max-width: 640px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top {
        height: 30px;
        margin-bottom: 0;
        padding-top: 5px;
    }
}

@media screen and (max-width: 420px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top {
        height: 22px;
        margin-bottom: 0;
        padding-top: 0;
    }
}

#top .New-menu_List .New-menu_List_btn .New-menu_List-main_top_text p {
    margin: 0 0 8px;
    color: #46FDFF;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
}

#top .New-menu_List .New-menu_List_btn .New-menu_List-main_top .New-menu_List-main_top_text {
    position: absolute;
    top: 25%;
}

@media screen and (max-width: 960px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top .New-menu_List-main_top_text {
        position: absolute;
        top: 40%;
    }    
}

@media screen and (max-width: 640px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top .New-menu_List-main_top_text {
        position: absolute;
        top: 35%;
    }    
}
@media screen and (max-width: 420px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top .New-menu_List-main_top_text {
        position: absolute;
        top: 25%;
    }    
}

#top .New-menu_List .New-menu_List_btn .top-main_next {
    position: absolute;
    width: 15px;
}

@media screen and (max-width: 1280px) {
    #top .New-menu_List .New-menu_List_btn .top-main_next {
        width: 15px;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu_List .New-menu_List_btn .top-main_next {
        display: block;
        width: 15px;
    }
}
@media screen and (max-width: 640px) {
    #top .New-menu_List .New-menu_List_btn .top-main_next {
        display: block;
        width: 10px;
    }
}

@media screen and (max-width: 960px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top_text h2 {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 640px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top_text h2 {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 420px) {
    #top .New-menu_List .New-menu_List_btn .New-menu_List-main_top_text h2 {
        font-size: 1.4rem;
    }
}

#top .New-menu_List .New-menu_List_btn .New-menu_List-main_top_text h2 .ico-external {
    margin-left: 10px;
    width: 8px;
    height: 7px;
    fill: #FFF;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}

.hero .New-Top_sub {
    color: #FFF;
    margin: 0 auto;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 2;
    font-family: 'HiraKakuPro-W6';
    width: 97%;
}

@media screen and (max-width: 960px) {
    #top .hero .New-Top_sub {
        font-size: 1.6rem;
        width: 90%;
        margin: 0 auto 30px;
    }
}

@media screen and (max-width: 640px) {
    #top .hero .New-Top_sub {
        font-size: 1.4rem;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 520px) {
    #top .hero .New-Top_sub {
        font-size: 1.2rem;
        margin-bottom: 120px;
    }
}

@media screen and (max-width: 420px) {
    #top .hero .New-Top_sub {
        font-size: 1rem;
        margin-bottom: 120px;
    }
}

@media screen and (max-width: 320px) {
    #top .hero .New-Top_sub {
        font-size: 1rem;
        margin-bottom: 70px;
    }
}

/*2020年12月 追加 end*/

/*2021年3月 追加 start - TOP改修*/
/* header */
.header {
    background-color: rgb(19 31 45 / 20%);
    border-bottom: .1px solid rgb(255 255 255 / 20%);
}

.header .header-inner .header-contact a {
    background-color: rgb(28 57 89 / 25%);
}

.header .header-inner .header-contact a:hover {
    opacity: 1;
    background-color: #fff;
    color: #172b41;
}

.header.fixed .header-contact a {
    background: #1c3959;
}

.header.fixed .header-contact a:hover {
    background-color: #ded9db;
}

.header.lower .header-contact a {
    background: #1c3959;
}

.header.lower .header-contact a:hover {
    background-color: #ded9db;
}

.header .header-inner .gnav--right ul {
    margin-right: 0;
}
.menu-header-menu-container, .menu-header-menu-english-container {
    margin-right: 0;
}

.menu-header-menu-container li a, .menu-header-menu-english-container  li a {
    color: #fff;
    margin: auto;
    padding: 30px;
}

.menu-header-menu-container li a:hover, .menu-header-menu-english-container  li a:hover {
    background-color: rgb(28 57 89 / 50%);
    border-bottom: 0;
}

.menu li.outer-link a:after {
    content: url('../img/sprite02.png');
    position: absolute;
    top: -5px;
    right: 10px;
    width: 10px;
    height: 10px;
}

.drawer-content .menu .menu-item.outer-link > a::after {
    content: url('../img/sprite02.png');
    position: absolute;
    top: 18px;
    left: 110px;
    width: 10px;
    height: 10px;
}

/* footer */
.footer .l-foot .wrap .col-3 ul {
    display: inline-block;
    vertical-align: top;
    width: 22%;
    margin-top: 30px;
    margin-left: 10px;
}

.footer .l-foot .wrap .col-3 ul:last-of-type {
    width: 27%;
}

@media screen
and (max-width: 1280px) {
    .footer .l-foot .wrap .col-3 {
        font-size: 1.1rem;
        width: 75%;
    }

    .footer .l-foot .wrap .col-3 ul {
        width: 21%;
    }
}

/* Top - FirstView */
#top {
    position: relative;
}

#top .hero {
    background: none;
    height: 130vh;
    overflow: hidden;
    width: 100%;
    background: url("../img/top/top-background-fuji.jpeg") center/cover no-repeat;
}

#top video {
    min-height: 100%;
    min-width: 100%;
    position: absolute;
        left: 0;
        top: 0;
}

#top .hero h1.New-Top-pc {
    color: #FFF;
    display: block;
    font-size: 36px;
    font-weight: lighter;
    font-family: "Roboto", sans-serif;
    line-height: 1.2;
    margin: 0;
    text-shadow: 1px 1px 6px #000;
    width: auto;
    max-width: 1280px;
}
.New-Top-pc-span-big {
    font-size: 34px;
}
.New-Top-pc-span-small {
    font-size: 24px;
    line-height: 1.8;
    display: inline-block;
}
@media screen and (max-width:1480px){
    .New-Top-pc-span-big {
        font-size: 24px;
    }
    .New-Top-pc-span-small {
        font-size: 18px;
    }
    .New-Top-pc {
        font-size: 28px !important;
    }
    #top .hero {
        height: 100vh;
    }
    #top .hero .hero-content {
        top: 24%;
    }
}
#top .hero h1.New-Top-sp {
    display: none;
}

#top .hero .hero-content {
    color: #FFF;
    position: absolute;
        bottom: auto;
        top: 25%;
    transform: translate(0, -50%);
}
.New-Top-pc-AIapp {
    position: absolute;
    transform: translateX(-50%);
    left: 50%;
    top: 68%;
    max-width: 1280px;
    width: 100%;
}
.New-Top-pc-AIapp h1 {
    text-align: center;
    font-size: 28px;
    color: #fff;
    line-height: 0.5;
}
.AIapp-container {
    display: flex;
    justify-content: space-between;
}
.AIapp-content {
    width: 175px;
    margin: 20px auto;
    display: flex;
    position: relative;
}
.AIapp-content p {
    position: absolute;
    bottom: 0%;
    background-color: rgba(255,255,255,0.6);
    color: #172b41;
    text-align: center;
    width: 100%;
    font-size: 14px;
    line-height: 1;
    padding: 5px 0;
    font-weight: 600;
}
@media screen and (max-width: 1280px) {
    #top .hero .hero-content {
        left: 5%;
        top: 25%;
    }
    #top .hero {
        height: 100vh;
    }
}

@media screen and (max-width: 768px) {
    #top .hero h1.New-Top-pc {
        display: none;
    }

    #top .hero h1.New-Top-sp {
        color: #FFF;
        display: block;
        font-size: 38px;
        font-weight: normal;
        font-family: "Roboto", sans-serif;
        line-height: 1.2;
        margin: 0;
        text-shadow: 1px 1px 6px #000;
        width: auto;
    }
    
    #top .hero .hero-content {
        left: 40px;
    }
}

/* Top - Concept */
.New-concept {
    background-color: #6A85B2;
    padding-bottom: 800px;
}

.wrap-New-concept {
    position: relative;
}

.New-concept_block {
    position: absolute;
        top: -100px;
        right: 0;
}

.New-concept_element {
    background-color: #131F2D;
    margin: 0 0 0 auto;
    padding: 40px 40px 90px 40px;
    position: relative;
    width: 770px;
}

.New-concept_title {
    color: #fff;
    display: block;
    font-size: 38px;
    font-weight: bold;
    line-height: 1.8;
    margin-bottom: 30px;
}

.New-concept_break {
    display: none;
}

.New-concept_Slider {
    background-color: #131F2D;
    margin-bottom: 50px;
    padding-left: 20px;
    position: absolute;
        right: 415px;
        top: 33.5%;
}

.New-concept_Slider .js-top-slider {
    position: relative;
    display: none;
}

.New-concept_Slider .js-top-slider.slick-initialized{
    display: block;
}

.New-concept_Slider .js-top-slider .slick-disabled {
    display: none !important;
}

.New-concept_Slider .slick-slider {
    margin: 0 auto;
    padding: 0;
    width: 845px;
}

.New-concept_Slider .slick-slider .item img {
    width: 100%;
    height: 100%;
}

.New-concept_Slider .slick-slider .item p {
    color: #fff;
}

.New-concept_Slider .slick-dots {
    margin: 10px auto;
}

.New-concept_Slider .slick-dots li button {
    display: block;
    width: 8px;
    height: 8px;
    margin: 0;
    border: solid 1px #cfd9e9;
    border-radius: 0;
    font-size: 0;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
    cursor: pointer;
}

.slick-dots li.slick-active button {
    width: 12px;
    height: 12px;
    background: #fff;
    border: solid 1px #172b41;
}

.New-concept_Text {
    color: #fff;
    margin: 0 0 0 auto;
    padding-left: 60px;
    width: 375px;
}

@media screen and (max-width: 1280px) {
    .New-concept {
        padding-bottom: 120px;
    }

    .wrap-New-concept {
        margin: 0 auto;
    }

    .New-concept_block {
        margin-top: -150px;
        position: unset;
        width: 100%;
    }

    .New-concept_element {
        padding: 40px;
        width: 100%;
    }

    .New-concept_Slider {
        padding-left: 0;
        position: unset;
    }

    .New-concept_Slider .slick-slider {
        width: 100%;
    }

    .New-concept_Text {
        padding-left: 0;
        width: 100%;
    }   
}

@media screen and (max-width: 960px) { /*ここからスマホ版に表示が切り替わる*/
    .New-concept_title {
        font-size: 32px;
    }    
}

@media screen and (max-width: 768px) {
    .New-concept {
        padding-bottom: 60px;
    }

    .New-concept_element {
        padding: 20px;
    }
}

@media screen and (max-width: 640px) {
    .New-concept_break {
        display: block;
    }
}

/* Top - Service */
.New-service {
    background-color: #EFF3F7;
    padding: 100px 0 380px;
}

.New-service .wrap {
    padding: 0;
}

.New-service .l-unit2 {
    justify-content: center;
}

.New-service_List {
    display: block;
    margin: 0 20px 40px;
    width: 310px;
}

.New-service_List:hover {
    background-color: #1c3959;
    color: #fff;
}

.New-service_List:hover .New-service_List_more {
    color: #fff;
}

.New-service_List_block {
    padding: 30px;
}

.New-service_List_block img {
    margin-bottom: 20px;
    text-align: center;
    width: 100%;
}

.New-service_List_block h3 {
    display: block;
    font-size: 20px;
    font-weight: bold;
    height: 60px;
    line-height: 1.4;
    margin-bottom: 20px;
    position: relative;
    text-align: center;
    width: 100%;
}

.New-service_List_block h3::before,
.New-service_List_block h3::after {
    content: '';
    padding: 32px 5px;
    position: absolute;
        top: 50%;
    transform: translate(0, -50%);
}

.New-service_List_block h3::before {
    background: url(../img/top/top-service-left-01.svg) 0 0 no-repeat;
        left: 0;
}

.New-service_List_block h3::after {
    background: url(../img/top/top-service-right-01.svg) 0 0 no-repeat;
        right: 0;
}

.New-service_List:hover .New-service_List_block h3::before {
    background: url(../img/top/top-service-left-02.svg) 0 0 no-repeat;
        left: 0;
}

.New-service_List:hover .New-service_List_block h3::after {
    background: url(../img/top/top-service-right-02.svg) 0 0 no-repeat;
        right: 0;
}

.New-service_List_block h3 span {
    display: block;
    position: absolute;
        left: 50%;
        top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

.New-service_List_more {
    color: #00EEFF;
    font-weight: bold;
    margin-top: 10px;
}

@media screen and (max-width: 960px) { /*ここからスマホ版に表示が切り替わる*/
    .New-service_List {
        width: 360px;
    }
}

@media screen and (max-width: 768px) {
    .New-service {
        padding: 60px 0 260px;
    }
}

/* Top - Platform */
.New-platform {
    background: url(../img/top/top-platform-bg.png) 0 100% / contain no-repeat;
    padding-bottom: 100px;
    position: relative;
}

.wrap-New-platform-pc {
    display: block;
    position: relative;
}

.wrap-New-platform-sp {
    display: none;
}

.New-platform_block {
    background-color: #131F2D;
    margin: 0 0 0 auto;
    padding: 30px 30px 300px 30px;
    position: absolute;
        left: 0;
    top: -280px;
    width: 885px;
}

.New-platform h2 {
    color: #fff;
    display: block;
    font-size: 38px;
    font-weight: bold;
    margin-bottom: 30px;
}

.New-platform_break {
    display: none;
}

.New-platform .New-platform_text {
    color: #fff;
    margin: 0 auto 15px 0;
    width: 270px;
}

.New-platform .New-platform_image {
    position: absolute;
        right: 0;
        top: -150px;
    width: 945px;
}

.New-platform .New-platform_image img {
    width: 100%;
}

.New-platform_function {
    margin: 0 auto;
    padding-top: 100px;
    width: 1160px;
}

.New-platform_function h2 {
    color: #131f2d;
    margin-bottom: 30px;
    text-align: center;
}

.New-platform_function h2 span {
    border-bottom: 3px solid #131f2d;
    padding-bottom: 15px;
}

.New-platform_function-text {
    margin-bottom: 20px;
    text-align: center;
}

.New-platform_structure {
    background-color: rgb(23 43 65 / 0.05);
    margin: 0 auto;
    padding: 60px;
    width: 960px;
}

.New-platform_structure img {
    width: 100%;
}

.New-platform_function_list {
    margin: 40px auto 0;
    width: 800px;
}

.New-platform_function_list dl {
    border-bottom: 1px dotted #131f2d;
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
    padding-bottom: 30px;
}

.New-platform_function_list dl:last-of-type {
    margin-bottom: 0;
}

.New-platform_function_list dt {
    color: #597098;
    flex-basis: 28%;
    font-size: 18px;
    font-weight: bold;
}

.New-platform_function_list dd {
    flex-basis: 68%;
    font-size: 18px;
}

@media screen and (max-width: 1280px) {
    .wrap-New-platform-pc {
        display: none;
    }
    
    .wrap-New-platform-sp {
        display: block;
        margin: 0 auto;
        position: relative;
    }

    .New-platform_block {
        margin-top: -260px;
        padding: 30px 30px 60px 30px;
        position: unset;
        width: 100%;
    }

    .New-platform .New-platform_text {
        width: 100%;
        margin-bottom: 15px;
    }
    
    .New-platform .New-platform_image {
        position: unset;
        width: 100%;
    }

    .New-platform_function {
        padding-top: 100px;
        width: 100%;
    }
    
    .New-platform_function_list dl {
        margin-top: 40px;
    }
}

@media screen and (max-width: 960px) { /*ここからスマホ版に表示が切り替わる*/
    .New-platform h2 {
        font-size: 32px;
    }

    .New-platform_structure {
        padding: 20px;
        width: 100%;
    }

    .New-platform_function_list {
        width: 100%;
        margin: 40px auto 0;
    }

    .New-platform_function_list dl {
        display: block;
    }
}

@media screen and (max-width: 768px) {
    .New-platform {
        padding-bottom: 60px;
    }

    .New-platform_block {
        margin-top: -260px;
        padding: 20px 20px 60px 20px;
        position: unset;
        width: 100%;
    }

    .New-platform h2 {
        color: #fff;
        font-size: 32px;
        font-weight: bold;
        margin-bottom: 30px;
    }

    .New-platform_function h2 {
        color: #131f2d;
        margin-bottom: 30px;
        text-align: center;
    }
    
    .New-platform_function h2 span {
        border-bottom: 3px solid #131f2d;
        padding-bottom: 15px;
    }    

    .New-platform_function_list {
        display: block;
    }

    .New-platform_function_list dd {
        font-size: 100%;
        margin-left: 20px;
    }
    .New-platform_function_list dt {
        margin-left: 20px;
    }    
}

@media screen and (max-width: 640px) {
    .New-platform_break {
        display: block;
    }

    .New-platform h2 {
        font-size: 26px;
    }

    .New-platform_function h2 {
        font-size: 22px;
    }
}


/*2021年3月 追加 end*/


/*2021年3月 製品サポート追加 start*/
#box .l-head2,
#box-english .l-head2 {
    padding: 44px 0;
    background-color: #f2f2f2;
}

#box .l-head2 .wrap .mdl .footer-contact-ttl__main,
#box-english .l-head2 .wrap .mdl .footer-contact-ttl__main {
    font-size: 2rem;
    font-family: 'HiraKakuPro-W6';
	color: #1C3959;
}

/*2021年3月 製品サポート追加 end*/

/*2021年4月 追加 start*/
.header-inner .gnav {
    margin-left: 100px;
}
.header-language-sw {
    line-height: 80px;
}
.header-language-sw li a {
    color: #ffffff;
    font-size: 0.8em;
    margin: auto;
    padding: 30px;
    font-weight: normal;
}

@media screen and (max-width: 640px) {
    .header-language-sw li a {
        padding-left: 0;
    }
}
/*2021年4月 追加 end*/

/*2021年9月 追加(TOPのセミカスタムソリューション) start*/
.semicustomsolution {
    margin: 80px auto 40px;
    position: relative;
}
.semicustomsolution h4 {
    background-color: #EFF3F7;
    text-align: center;
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 400px;
    z-index: 1;
}
.semicustomsolution h4 span {
    background-color: #eff3f7;
    color: #131f2d;
    display: block;
    font-size: 28px;
    font-weight: 700;
}
.package {
    margin: 80px auto 40px;
    position: relative;
}
.package-title{
    background-color: #EFF3F7;
    text-align: center;
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 290px;
    z-index: 1;
}
#package-title-solution {
    position: relative;
    top: 25px;
    width: 500px;
}
.package-span {
    background-color: #eff3f7;
    color: #131f2d;
    display: block;
    font-size: 28px;
    font-weight: 700;
}
.semicustomsolution-flex {
    display: flex;
    flex-wrap: wrap;
    padding: 80px 0 40px;
    justify-content: center;
    margin: 0 auto;
    position: relative;
    width: 1240px;
}
.semicustomsolution-flex::before {
    border-top: 4px solid #00eeff;
    border-right: 2px solid #00eeff;
    border-left: 2px solid #00eeff;
    box-sizing: border-box;
    content: '';
    height: 20px;
    position: absolute;
        top: 0;
        left: 50%;
    transform: translate(-50%, 0);
    width: 1000px;
}
/*.semicustomsolution-flex::after {
    border-bottom: 4px solid #00eeff;
    border-right: 2px solid #00eeff;
    border-left: 2px solid #00eeff;
    box-sizing: border-box;
    content: '';
    height: 20px;
    position: absolute;
        bottom: 0;
        left: 50%;
    transform: translate(-50%, 0);
    width: 1000px;
}*/
.package-flex {
    display: flex;
    flex-wrap: wrap;
    padding: 80px 0 20px;
    justify-content: center;
    margin: 0 auto;
    position: relative;
    width: 1280px;
}
.package-flex::before {
    border-top: 4px solid #00eeff;
    border-right: 2px solid #00eeff;
    border-left: 2px solid #00eeff;
    box-sizing: border-box;
    content: '';
    height: 20px;
    position: absolute;
        top: 0;
        left: 50%;
    transform: translate(-50%, 0);
    width: 1200px;
}
/*.package-flex::after {
    border-bottom: 4px solid #00eeff;
    border-right: 2px solid #00eeff;
    border-left: 2px solid #00eeff;
    box-sizing: border-box;
    content: '';
    height: 20px;
    position: absolute;
        bottom: 0;
        left: 50%;
    transform: translate(-50%, 0);
    width: 1220px;
}*/
.package-center {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto;
    position: relative;
    width: 1240px;
}
.package-center .semicustomsolution-flex {
    display: flex;
    flex-wrap: wrap;
    padding: 0px;
    justify-content: center;
    margin: 0 auto;
    position: relative;
    width: 1240px;
}
.package-center .semicustomsolution-flex::before {
    display: none;
}
.semicustomsolution-flex-element {
    background-color: #fff;
    border: 2px solid #6a85b2;
    cursor: pointer;
    display: flex;
    margin: 0 20px 40px;
    transition: .3s;
    width: 580px;
}
.semicustomsolution-flex-element:hover {
    opacity: 0.6;
}
.semicustomsolution-image {
    background: url(../img/top/top-semi-01.png) center / cover no-repeat;
    width: 200px;
}
.crimeprevention-image {
    background: url(../img/top/banner_crimeprevention.jpg) center / cover no-repeat;
    width: 200px;
}
.reservoirmonitoring-image {
    background: url(../img/top/banner_reservoirmonitoring.jpg) center / cover no-repeat;
    width: 200px;
}
.congestionguidance-image {
    background: url(../img/top/banner_congestionguidance.jpg) center / cover no-repeat;
    width: 200px;
}
.semicustomsolution-text {
    padding: 15px 20px;
    width: 380px;
}
.semicustomsolution-text h5 {
    position: relative;
    height: 60px;
    line-height: 1.4;
    margin-bottom: 15px;
}
.semicustomsolution-text h5 span {
    color: #131f2d;
    font-size: 24px;
    font-weight: 700;
    position: absolute;
        top: 50%;
        left: 0;
    transform: translate(0, -50%);
}
.semicustomsolution-text p {
    color: #131f2d;
    font-size: 14px;
}
.semicustomsolution-more {
    color: #00eeff;
    display: flex;
    font-weight: 700;
    justify-content: flex-end;
    line-height: 1;
    text-align: right;
    margin-bottom: 15px;
}
.semicustomsolution-more img {
    margin-right: 10px;
    width: 14px;
}

@media screen and (max-width: 1280px) {
    .semicustomsolution {
        margin: 140px auto 80px;
    }
    .package {
        margin: 140px auto 80px;
    }
    .package-center {
        margin: 0px auto 0px;
        width: 100%;
    }
    .semicustomsolution-flex {
        display: block;
        padding: 40px 0 20px;
        width: 100%;
    }
    .semicustomsolution-flex::before {
        top: -50px;
        width: 80%;
    }
    /*.semicustomsolution-flex::after {
        bottom: -25px;
        width: 80%;
    }*/
    .package-flex {
        padding: 40px 0 0px;
        width: 100%;
    }
    .package-flex::before {
        top: -50px;
        width: 98%;
    }
    /*.package-flex::after {
        bottom: -25px;
        width: 98%;
    }*/
    .package-center .semicustomsolution-flex {
        display: block;
        width: 100%;
    }
    .semicustomsolution h4 {
        top: -75px;
    }
    .package-title{
        top: -75px;
    }
    .semicustomsolution-flex-element {
        margin: 0 auto 40px;
    }
}
@media screen and (max-width: 1160px) {
    .package-flex::before {
        width: 80%;
    }
}
@media screen and (max-width: 768px) {
    .semicustomsolution {
        margin: 140px auto;
    }
    .package {
        margin: 140px auto;
    }
    .package-center {
        margin: 0 auto;
    }
    .semicustomsolution-flex::before {
        width: calc(100% - 64px);
    }
    .package-flex::before {
        width: calc(100% - 64px);
    }
    .semicustomsolution-flex-element {
        width: 80%;
    }
    .semicustomsolution-image {
        width: 150px;
    }
    .crimeprevention-image {
        width: 150px;
    }
    .reservoirmonitoring-image {
        width: 150px;
    }
    .congestionguidance-image {
        width: 150px;
    }
    .semicustomsolution-text {
        width: calc(100% - 150px);
    }
    .semicustomsolution-text h5 {
        height: 50px;
        margin-bottom: 5px;
    }
    .semicustomsolution-text h5 span {
        font-size: 18px;
    }
    .semicustomsolution-text p {
        font-size: 12px;
        margin-bottom: 10px;
    }
}

@media screen and (max-width: 640px) {
    .semicustomsolution {
        margin: 80px auto 120px;
    }
    .package {
        margin: 80px auto 120px;
    }
    .package-center {
        margin: 0 auto;
    }
    .semicustomsolution h4 {
        top: -45px;
        width: 65%;
    }
    .package-title{
        top: -45px;
        width: 65%;
    }
    #package-title-solution {
        width: 75%;
    }
    .semicustomsolution-flex::before {
        width: calc(100% - 30px);
    }
    .semicustomsolution-flex::before {
        top: -30px;
    }
    .semicustomsolution-flex::after {
        bottom: 0;
    }
    .package-flex::before {
        width: calc(100% - 30px);
    }
    .package-flex::before {
        top: -30px;
    }
    .package-flex::after {
        bottom: 0;
    }
    .semicustomsolution h4 span {
        font-size: 20px;
    }
    .package-span {
        font-size: 20px;
    }
    .semicustomsolution-image {
        width: 35%;
    }
    .crimeprevention-image {
        width: 35%;
    }
    .reservoirmonitoring-image {
        width: 35%;
    }
    .congestionguidance-image {
        width: 35%;
    }
    .semicustomsolution-text {
        width: 65%;
    }
}

@media screen and (max-width: 420px) {
    .semicustomsolution-flex::before {
        top: -20px;
    }
    .semicustomsolution-flex::after {
        bottom: -15px;
    }
    .package-flex::before {
        top: -20px;
    }
    .package-flex::after {
        bottom: -15px;
    }
    .semicustomsolution h4 {
        top: -35px;
        width: 80%;
    }
    .semicustomsolution h4 span {
        font-size: 18px;
    }
    .package-title{
        top: -35px;
        width: 80%;
    }
    #package-title-solution {
        width: 80%;
    }
    .package-span {
        font-size: 18px;
    }
    .semicustomsolution-flex-element {
        display: block;
    }
    .semicustomsolution-image {
        height: 100px;
        width: 100%;
    }
    .crimeprevention-image {
        height: 100px;
        width: 100%;
    }
    .reservoirmonitoring-image {
        height: 100px;
        width: 100%;
    }
    .congestionguidance-image {
        height: 100px;
        width: 100%;
    }
    .semicustomsolution-text {
        width: 100%;
    }
    .semicustomsolution-text h5 {
        height: auto;
    }
    .semicustomsolution-text h5 span {
        position: inherit;
    }       
}
/*2021年9月 追加 end*/

/*2021年12月 追加 start*/
.about-panorama {
    height: 100vh;
    width: 100%;
    overflow: hidden;
}
.about-panorama-contents {
    height: 100%;
    width: 100%;
}
.about-btn {
    display: flex;
    justify-content: center;
    max-width: 900px;
    margin: 0 auto 80px;
    padding: 0 40px;
}
.about-btn a {
    display: block;
    width: 100%;
    max-width: 340px;
    height: 64px;
    margin: 0 auto;
    background-color: #172b41;
    border-radius: 32px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    line-height: 64px;
    font-family: "Roboto", sans-serif;
}
.about-btn a:hover {
    opacity: 1;
    background-color: #ded9db;
    color: #172b41;
}
@media screen and (max-width: 960px) {
    .about-btn {
        display: block;
        margin: 0 auto 80px;
        padding: 0 40px;
    }
    .about-btn a:first-child {
        margin-bottom: 40px;
    }
}
/*2021年12月 追加 end*/

/*2022年1月 追加 start*/
/*↓↓↓ヘッダーメニュー用の設定↓↓↓*/
@media screen and (max-width: 1140px) {
    .header .header-inner .header-contact a {
        font-size: 1.3rem;
        width: 120px;
    }
    .menu-header-menu-container li a,
    .menu-header-menu-english-container li a {
        padding: 30px 18px;
    }
    .menu li.outer-link a:after {
        right: 0;
    }
    .header-language-sw li a {
        padding: 30px 18px;
    }
}

/*↓↓↓サポートページ用の設定↓↓↓*/
.lower-page #productsupport .hero::before,
.lower-page #faq .hero::before,
.lower-page #archive .hero.support::before,
.lower-page #single .hero.support::before {
    background-image: url("../img/support/hero-bg.jpg");
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    .lower-page #productsupport .hero::before,
    .lower-page #faq .hero::before,
    .lower-page #archive .hero.support::before,
    .lower-page #single .hero.support::before {
        background-image: url("../img/support/hero-bg@2x.jpg");
    }
}

@media screen and (max-width: 960px) {
    .lower-page #productsupport .hero::before,
    .lower-page #faq .hero::before,
    .lower-page #archive .hero.support::before,
    .lower-page #single .hero.support::before {
        background-image: url("../img/support/sp-hero-bg.jpg");
    }
}

@media screen and (max-width: 960px) and (-webkit-min-device-pixel-ratio: 2), screen and (max-width: 960px) and (min-resolution: 2dppx) {
    .lower-page #productsupport .hero::before,
    .lower-page #faq .hero::before,
    .lower-page #archive .hero.support::before,
    .lower-page #single .hero.support::before {
        background-image: url("../img/support/sp-hero-bg@2x.jpg");
    }
}

.support__local {
    display: block;
    margin-bottom: 80px;
}
.support__local-inner {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
}
.support__local-link {
    display: flex;
}
.support__local-link li {
    flex-basis: 33.3333%;
    font-size: 15px;
    font-weight: bold;
    text-align: center;
}
.support__local-link li a {
    border-bottom: solid 2px #C7C7C7;
    color: #74808D;
    display: block;
    line-height: 40px;
}
.support__local-link li a:hover {
    border-bottom: solid 2px #000;
    color: #182B41;
}
.support__local-link li.current a {
    border-bottom: solid 2px #000;
    color: #182B41;
}
.support__pagelink {
    display: flex;
    justify-content: center;
}
.support__pagelink li {
    border-right: solid 1px #000;
}
.support__pagelink li:last-child {
    border-right: 0;
}
.support__pagelink li a {
    color: #182B41;
    font-size: 16px;
    font-weight: bold;
    margin: 0 30px;
}
.support__pagelink li:last-child a {
    margin-right: 0;
    margin-left: 30px;
}
.support__pagelink li a:hover {
    opacity: 0.5;
}
.support__usersmanual {
    display: block;
}
.support__usersmanual-block {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding-top: 100px;
}
.support__usersmanual-block h3 {
    padding: 5px 0;
    background: #ded9db;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 50px;
    text-align: center;
}
.support__usersmanual-block h4 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 30px;
    padding-left: 30px;
    position: relative;
}
.support__usersmanual-block h4::before {
    background-color: #14202e;
    content: '';
    height: 18px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(0, -50%);
    width: 18px;
}
.support__usersmanual-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 30px;
    width: 1000px;
}
.support__usersmanual-list:last-of-type {
    margin-bottom: 0;
}
.support__usersmanual-product {
    align-items: center;
    display: flex;
    flex-basis: 30%;
    margin-bottom: 35px;
}
.support__usersmanual-product:hover {
    opacity: 0.5;
}
.support__usersmanual-product img {
    margin-right: 15px;
    max-width: 75px;
    width: 100%;
}
.support__usersmanual-product div {
    color: #182B41;
    font-size: 14px;
    font-weight: bold;
}
.support__product-support {
    display: block;
    padding-top: 100px;
}
.support__product-support h3 {
    padding: 5px 0;
    background: #ded9db;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 50px;
    text-align: center;
}
.support__service-block {
    display: flex;
    justify-content: center;
    margin-top: 70px;
}
.support__warranty-block {
    display: flex;
    justify-content: space-between;
    margin-top: 70px;
}
.support__jetpack-block {
    align-items: center;
    display: flex;
    justify-content: center;
}
.support__jetpack-list {
    padding-right: 20px;
}
.support__jetpack-list li {
    font-size: 16px;
    font-weight: bold;
}
.support__jetpack-list li::before {
    content: '・';
}
.support__jetpack-link {
    text-align: center;
}
.support__jetpack-link a {
    display: inline-block;
    font-size: 14px;
    margin-top: 40px;
    position: relative;
}
.support__jetpack-link a:hover {
    opacity: 0.6;
}
.support__jetpack-link a .arrow {
    position: absolute;
    top: 50%;
    width: 24px;
    height: 24px;
    background: #131f2d;
    border: solid 1px #131f2d;
    border-radius: 12px;
    transform: translateY(-50%);
    transition: background .3s ease-out;
}
.support__jetpack-link a .ico-arrow {
    width: 5px;
    height: 8px;
    fill: #fff;
    transition: .3s ease-out;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    left: 50%;
}
.support__button {
    border: 2px solid #14202e;
    border-radius: 100px;
    display: block;
    font-size: 16px;
    font-weight: bold;
    line-height: 50px;
    max-height: 54px;
    text-align: center;
    position: relative;
    transition: .3s;
    width: 47%;
}
.support__button:hover {
    opacity: 0.6;
}
.support__button .arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 30px;
    width: 24px;
    height: 24px;
    background: #131f2d;
    border: solid 1px #131f2d;
    border-radius: 12px;
    transform: translateY(-50%);
    transition: background .3s ease-out;
}
.support__button .ico-arrow {
    width: 5px;
    height: 8px;
    fill: #fff;
    transition: .3s ease-out;
}
.support__faq {
    background: #ded9db;
    padding: 80px;
    text-align: center;
}
.support__faq div:first-child {
    color: #182B41;
    font-size: 24px;
    font-weight: bold;
}
.support__faq div:last-child {
    color: #fff;
    font-size: 18px;
    font-weight: bold;
}
.contact-banner {
    border: 1px solid #d0dae8;
    margin-top: 100px;
}
.contact-banner-block {
    align-items: center;
    display: flex;
    height: 150px;
    justify-content: space-between;
    margin: 0 auto;
    padding: 0 70px;
}
.contact-banner-title {
    font-family: "Roboto";
    font-size: 30px;
    font-weight: bold;
}
.contact-banner-title span {
    font-size: 18px;
    margin-left: 25px;
}
.contact-banner-btn {
    border: 2px solid #14202d;
    display: block;
    font-size: 18px;
    font-weight: bold;
    line-height: 60px;
    padding: 0 108px 0 60px;
    position: relative;
    transition: .3s;
}
.contact-banner-btn:hover {
    opacity: 0.6;
}
.contact-banner-btn .mail {
    position: relative;
}
.contact-banner-btn .ico-mail {
    position: absolute;
    top: 50%;
    left: -24px;
    width: 16px;
    height: 11px;
    fill: #131f2d;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}
.contact-banner-btn .arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 50%;
    right: 60px;
    width: 24px;
    height: 24px;
    background: #131f2d;
    border: solid 1px #131f2d;
    border-radius: 12px;
    transform: translateY(-50%);
    transition: background .3s ease-out;
}
.contact-banner-btn .ico-arrow {
    width: 5px;
    height: 8px;
    fill: #fff;
    transition: .3s ease-out;
}

@media screen and (max-width: 1200px) {
    .support__usersmanual-list {
        width: 95%;
    }
    .support__usersmanual-product div {
        font-size: 16px;
    }
}

@media screen and (max-width: 960px) {
    .support__local {
        margin-bottom: 30px;
    }
    .support__local-inner {
        padding: 0 15px;
    }
    .support__local-link li {
        font-size: 12px;
    }
    .support__local-link li:nth-child(1) {
        flex-basis: 30%;
    }
    .support__local-link li:nth-child(2) {
        flex-basis: 46%;
    }
    .support__local-link li:nth-child(3) {
        flex-basis: 24%;
    }
    .support__local-link li a {
        line-height: 30px;
    }
    .support__pagelink {
        flex-wrap: wrap;
        position: relative;
        text-align: center;
    }
    .support__pagelink::before {
        background-color: #fff;
        content: '';
        height: 30px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 30px;
    }
    .support__pagelink li {
        border-right: 0;
        line-height: 40px;
        width: 50%;
    }
    .support__pagelink li:first-child {
        border-right: solid 1px #ded9db;
        border-bottom: solid 1px #ded9db;
    }
    .support__pagelink li:nth-child(2) {
        border-bottom: solid 1px #ded9db;
        border-left: solid 1px #ded9db;
    }
    .support__pagelink li:nth-child(3) {
        border-top: solid 1px #ded9db;
        border-right: solid 1px #ded9db;
    }
    .support__pagelink li:last-child {
        border-top: solid 1px #ded9db;
        border-left: solid 1px #ded9db;
    }
    .support__pagelink li a {
        font-size: 14px;
        margin: 0;
    }
    .support__pagelink li:last-child a {
        margin-left: 0;
    }
    .support__usersmanual-block {
        padding-top: 80px;
    }    
    .support__usersmanual-block h3 {
        font-size: 16px;
        padding: 5px 5px 5px 15px;
    }
    .support__usersmanual-list {
        justify-content: space-between;
    }
    .support__usersmanual-product {
        display: block;
        flex-basis: 50%;
        text-align: center;
    }
    .support__usersmanual-product img {
        margin: 0 auto 10px;
    }
    .support__usersmanual-product div {
        font-size: 15px;
    }
    .support__warranty-block {
        display: block;
    }
    .support__warranty-block > a {
        margin-bottom: 40px;
    }
    .support__jetpack-block {
        display: block;
    }
    .support__jetpack-list {
        margin: 40px auto;
        padding: 0;
        width: 100%;
    }
    .support__jetpack-link {
        text-align: left;
        width: 80%;
    }
    .support__jetpack-link a .arrow {
        left: unset;
        right: -15%;
    }
    .support__jetpack-link a .ico-arrow {
        width: 24px;
    }
    .support__button {
        width: 100%;
    }
    .support__button .arrow {
        left: 15px;
    }
    .support__faq div:first-child {
        font-size: 20px;
    }

    .contact-banner {
        border: 0;
        text-align: center;
    }
    .contact-banner-block {
        display: block;
        height: auto;
        padding: 0;
        max-width: 375px;
    }
    .contact-banner-title {
        font-size: 36px;
        margin-bottom: 35px;
    }
    .contact-banner-title span {
        display: block;
        font-size: 16px;
        margin-left: 0;
    }
    .contact-banner-btn {
        font-size: 14px;
        line-height: 60px;
        padding: 0;
    }
    .contact-banner-btn .arrow {
        right: 20px;
    }
}
/*2022年1月 追加 end*/

/*2022年3月 追加 start*/
.current-menu-item {
    background-color: #1c3959;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}
.current-menu-item:hover {
    background-color: rgb(28 57 89 / 50%);
}
.lower-support.header .header-inner .gnav--right li:nth-last-child(2) {
    background-color: #1c3959;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out;
}
.lower-support.header .header-inner .gnav--right li:nth-last-child(2):hover {
    background-color: rgb(28 57 89 / 50%);
}
@media screen and (max-width: 960px) {
    .lower-support .drawer-content .menu li:nth-last-child(2) {
        background-color: #1c3959;
        -webkit-transition: .3s ease-out;
        transition: .3s ease-out;
    }
    .lower-support .drawer-content .menu li:nth-last-child(2):hover {
        background-color: rgb(28 57 89 / 50%);
    }
}
/*2022年3月 追加 end*/
/*2022年7月 追加 start*/
@media screen and (max-width: 960px) {
	.support__button.sp {
		font-size: 10.5px;
	}
}
/*2022年7月 追加 end*/

/* Solution */
.solution-top {
	width: 100%;
	height: 1400px;
	position: relative;
    overflow: hidden;
  }
  .solution-bg-img {
	width: 100%;
	height: 100%;
    animation: zoom 30s;
    -webkit-animation: zoom 30s;
  }
  .solution-title {
	display: flex;
	flex-direction: column;
	position: relative;
	z-index: 3;
	color: #fff;
	bottom: 89%;
	margin: 0 auto;
	text-align: center;
  }
  .solution-title h3 {
	font-size: 48px;
    font-weight: 600;
  }
  .solution-title-jp {
	margin-bottom: 10px;
  }
  .solution-title-jp h3 span {
	opacity: 0;
  }
  .solution-title-en {
	margin-bottom: 10px;
  }
  .solution-title-en p span {
	opacity: 0;
  }
  .solution-title-desc {
	margin-top: 40px;
	line-height: 2;
  }
  .solution-title-desc p span {
	opacity: 0;
	font-size: 24px;
}
  .solution-title-jp.on, .solution-title-en.on, .solution-title-desc.on {
	opacity: 1;
  }
  
    /* jp animate */

  .animate-jp:nth-child(1) {
	animation: text_animation 0.8s 0.1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(2) {
	animation: text_animation 0.8s 0.1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(3) {
	animation: text_animation 0.8s 0.15s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(4) {
	animation: text_animation 0.8s 0.15s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(5) {
	animation: text_animation 0.8s 0.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(6) {
	animation: text_animation 0.8s 0.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(7) {
	animation: text_animation 0.8s 0.25s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(8) {
	animation: text_animation 0.8s 0.25s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(9) {
	animation: text_animation 0.8s 0.3s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(10) {
	animation: text_animation 0.8s 0.3s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(11) {
	animation: text_animation 0.8s 0.35s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(12) {
	animation: text_animation 0.8s 0.35s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(13) {
	animation: text_animation 0.8s 0.4s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(14) {
	animation: text_animation 0.8s 0.4s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(15) {
	animation: text_animation 0.8s 0.45s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(16) {
	animation: text_animation 0.8s 0.45s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(17) {
	animation: text_animation 0.8s 0.5s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(18) {
	animation: text_animation 0.8s 0.5s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(19) {
	animation: text_animation 0.8s 0.55s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(20) {
	animation: text_animation 0.8s 0.55s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(21) {
	animation: text_animation 0.8s 0.6s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(22) {
	animation: text_animation 0.8s 0.6s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(23) {
	animation: text_animation 0.8s 0.65s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(24) {
	animation: text_animation 0.8s 0.65s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(25) {
	animation: text_animation 0.8s 0.7s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(26) {
	animation: text_animation 0.8s 0.7s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(27) {
	animation: text_animation 0.8s 0.75s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(28) {
	animation: text_animation 0.8s 0.75s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(29) {
	animation: text_animation 0.8s 0.8s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(30) {
	animation: text_animation 0.8s 0.8s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(31) {
	animation: text_animation 0.8s 0.85s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(32) {
	animation: text_animation 0.8s 0.85s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(33) {
	animation: text_animation 0.8s 0.9s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(34) {
	animation: text_animation 0.8s 0.9s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(35) {
	animation: text_animation 0.8s 0.95s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(36) {
	animation: text_animation 0.8s 0.95s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(37) {
	animation: text_animation 0.8s 1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(38) {
	animation: text_animation 0.8s 1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(39) {
	animation: text_animation 0.8s 1.05s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-jp:nth-child(40) {
	animation: text_animation 0.8s 1.05s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }

  /* en animate */

  .animate-en:nth-child(1) {
	animation: text_animation 0.8s 0.1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(2) {
	animation: text_animation 0.8s 0.1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(3) {
	animation: text_animation 0.8s 0.15s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(4) {
	animation: text_animation 0.8s 0.15s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(5) {
	animation: text_animation 0.8s 0.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(6) {
	animation: text_animation 0.8s 0.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(7) {
	animation: text_animation 0.8s 0.25s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(8) {
	animation: text_animation 0.8s 0.25s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(9) {
	animation: text_animation 0.8s 0.3s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(10) {
	animation: text_animation 0.8s 0.3s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(11) {
	animation: text_animation 0.8s 0.35s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(12) {
	animation: text_animation 0.8s 0.35s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(13) {
	animation: text_animation 0.8s 0.4s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(14) {
	animation: text_animation 0.8s 0.4s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(15) {
	animation: text_animation 0.8s 0.45s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(16) {
	animation: text_animation 0.8s 0.45s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(17) {
	animation: text_animation 0.8s 0.5s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-en:nth-child(18) {
	animation: text_animation 0.8s 0.5s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }

/* desc animate */

  .animate-desc:nth-child(1) {
	animation: text_animation 0.8s 0.1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(2) {
	animation: text_animation 0.8s 0.1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(3) {
	animation: text_animation 0.8s 0.15s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(4) {
	animation: text_animation 0.8s 0.15s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(5) {
	animation: text_animation 0.8s 0.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(6) {
	animation: text_animation 0.8s 0.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(7) {
	animation: text_animation 0.8s 0.25s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(8) {
	animation: text_animation 0.8s 0.25s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(9) {
	animation: text_animation 0.8s 0.3s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(10) {
	animation: text_animation 0.8s 0.3s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(11) {
	animation: text_animation 0.8s 0.35s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(12) {
	animation: text_animation 0.8s 0.35s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(13) {
	animation: text_animation 0.8s 0.40s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(14) {
	animation: text_animation 0.8s 0.40s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(15) {
	animation: text_animation 0.8s 0.45s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(16) {
	animation: text_animation 0.8s 0.45s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(17) {
	animation: text_animation 0.8s 0.5s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(18) {
	animation: text_animation 0.8s 0.5s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(19) {
	animation: text_animation 0.8s 0.55s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(20) {
	animation: text_animation 0.8s 0.55s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(21) {
	animation: text_animation 0.8s 0.6s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(22) {
	animation: text_animation 0.8s 0.6s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(23) {
	animation: text_animation 0.8s 0.65s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(24) {
	animation: text_animation 0.8s 0.65s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(25) {
	animation: text_animation 0.8s 0.7s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(26) {
	animation: text_animation 0.8s 0.7s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(27) {
	animation: text_animation 0.8s 0.75s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(28) {
	animation: text_animation 0.8s 0.75s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(29) {
	animation: text_animation 0.8s 0.8s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(30) {
	animation: text_animation 0.8s 0.8s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(31) {
	animation: text_animation 0.8s 0.85s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(32) {
	animation: text_animation 0.8s 0.85s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(33) {
	animation: text_animation 0.8s 0.9s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(34) {
	animation: text_animation 0.8s 0.9s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(35) {
	animation: text_animation 0.8s 0.95s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(36) {
	animation: text_animation 0.8s 0.95s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(37) {
	animation: text_animation 0.8s 1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(38) {
	animation: text_animation 0.8s 1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(39) {
	animation: text_animation 0.8s 1.05s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(40) {
	animation: text_animation 0.8s 1.05s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(41) {
	animation: text_animation 0.8s 1.1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(42) {
	animation: text_animation 0.8s 1.1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(43) {
	animation: text_animation 0.8s 1.15s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(44) {
	animation: text_animation 0.8s 1.15s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(45) {
	animation: text_animation 0.8s 1.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(46) {
	animation: text_animation 0.8s 1.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(47) {
	animation: text_animation 0.8s 1.25s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(48) {
	animation: text_animation 0.8s 1.25s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(49) {
	animation: text_animation 0.8s 1.3s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(50) {
	animation: text_animation 0.8s 1.3s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(51) {
	animation: text_animation 0.8s 1.35s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .animate-desc:nth-child(52) {
	animation: text_animation 0.8s 1.35s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(1) {
    animation: text_animation 0.8s 1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(2) {
    animation: text_animation 0.8s 1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(3) {
    animation: text_animation 0.8s 1.05s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(4) {
    animation: text_animation 0.8s 1.05s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(5) {
    animation: text_animation 0.8s 1.1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(6) {
    animation: text_animation 0.8s 1.1s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(7) {
    animation: text_animation 0.8s 1.15s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(8) {
    animation: text_animation 0.8s 1.15s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(9) {
    animation: text_animation 0.8s 1.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(10) {
    animation: text_animation 0.8s 1.2s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(11) {
    animation: text_animation 0.8s 1.25s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(12) {
    animation: text_animation 0.8s 1.25s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(13) {
    animation: text_animation 0.8s 1.3s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(14) {
    animation: text_animation 0.8s 1.3s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(15) {
    animation: text_animation 0.8s 1.35s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(16) {
    animation: text_animation 0.8s 1.35s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(17) {
    animation: text_animation 0.8s 1.4s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(18) {
    animation: text_animation 0.8s 1.4s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(19) {
    animation: text_animation 0.8s 1.5s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(20) {
    animation: text_animation 0.8s 1.5s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(21) {
    animation: text_animation 0.8s 1.55s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(22) {
    animation: text_animation 0.8s 1.55s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(23) {
    animation: text_animation 0.8s 1.6s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(24) {
    animation: text_animation 0.8s 1.6s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(25) {
    animation: text_animation 0.8s 1.65s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(26) {
    animation: text_animation 0.8s 1.65s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(27) {
    animation: text_animation 0.8s 1.7s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(28) {
    animation: text_animation 0.8s 1.7s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(29) {
    animation: text_animation 0.8s 1.75s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(30) {
    animation: text_animation 0.8s 1.75s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(31) {
    animation: text_animation 0.8s 1.8s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(32) {
    animation: text_animation 0.8s 1.8s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }
  .breadcrumb-span:nth-child(33) {
    animation: text_animation 0.8s 1.85s forwards cubic-bezier(0.11, 0, 0.5, 0);
  }

  @keyframes text_animation {
	100% { opacity:1; }
  }
  @keyframes zoom {
	0% {
	  transform: scale(1.2);
	}
	100% {
	 transform: scale(1);
	}
  }
  @keyframes slide_in {
    0% {
        transform: translateX(-100px);
    }
    100% {
        transform: translateX(0px);
    }
  } 
  .solution-circles {
	position: relative;
	z-index: 3;
	bottom: 80%;
	display: flex;
	justify-content: space-between;
	max-width: 900px;
	margin: 0 auto;
  }
  .solution-circles-2 {
	position: relative;
	z-index: 3;
	bottom: 80%;
	display: flex;
	justify-content: space-between;
	max-width: 710px;
	margin: 45px auto;
  }
  .solution-circles-3 {
	position: relative;
	z-index: 3;
	bottom: 80%;
	display: flex;
	justify-content: space-between;
	max-width: 900px;
	margin: 0 auto;
  }
  .solution-circles-sp, .solution-circles-2-sp, .solution-circles-3-sp, .solution-circles-4-sp {
	display: none;
  }
  .solution-circles-5-sp {
	display: none;
  }
  .circle {
	width: 140px;
	height: 140px;
	background: url('../img/solution/icon_bg_off.png') no-repeat center top;
	background-size: cover;
	transition-duration: .25s;
  }
  .circle-sp {
	width: 110px;
	height: 110px;
	background: url('../img/solution/icon_bg_off.png') no-repeat center top;
	background-size: cover;
	transition-duration: .25s;
    margin: 30px auto;
  }
  .BluePoint {
	text-align: center;
	margin-top: -39px;
  }
  .solution-icon {
	position: relative;
	display: flex;
	flex-direction: column;
  }
  .solution-icon img {
	position: absolute;
	z-index: 4;
	user-select: none;
	-webkit-user-drag: none;
	text-align: center;
	margin: 5px auto 0px auto;
	left: 0;
	right: 0;
  }
  .icon-desc { 
	font-size: 12px;
	color: #fff;
	margin: 65px 0 0 0;
	text-align: center;
	line-height: 1.2;
  }
  .circle:hover {
	transform: translateY(-5px);
	background: url('../img/solution/icon_bg_on.png') no-repeat center top;
	background-size: cover;
  }
  .circle:hover .icon-dot {
	opacity: 1;
  }
  .icon-dot {
	font-size: 12px;
	color: #00ffff;
	margin: 6px auto 0 auto;
	opacity: 0;
	transition: 0.25s ease;
  }
  .solution-desc {
	max-width: 1050px;
	height: 200px;
	position: fixed;
	z-index: 4;
	bottom: 0%;
    left: 0;
    right: 0;
	background-color: rgba(0, 0, 0, .85);
	margin: 0 auto;
	transition: 0.25s ease;
	display: none;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transform: translateX(-50%);
  	transition: transform 0.5s, opacity 0.5s;
    pointer-events: none;
  }
  .solution-desc p {
	position: relative;
	z-index: 5;
	color: #fff;
	align-self: center;
  }
  .solution-desc span {
    font-weight: 500;
  }
  .desc-left {
	display: flex;
	text-align: center;
	align-self: center;
	width: 48%;
  }
  .desc-img {
	width: 155px;
	height: 155px;
	border: #00ffff 1px solid;
	background-color: #000;
    margin-left: 25px;
  }
  .desc-left img {
	margin: 0 auto;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
  }
  .desc-left p {
	margin: 0 auto;
	width: 70%;
    font-size: 24px;
	font-weight: 600;
  }
  .desc-right {
	align-self: center;
	width: 42%;
	border-left: 1.5px solid #fff;
	display: flex;
	height: 150px;
    font-size: 16px;
  }
  .desc-right p {
	margin-left: 38px;
    font-size: 16px;
    text-align: justify;

  }
  .solution-desc-sp {
	height: 500px;
	position: fixed;
	z-index: 4;
	background-color: rgba(0, 0, 0, .85);
	margin: 0 auto;
	transition: 0.25s ease;
	display: none;
	flex-direction: column;
	align-items: center;
	justify-content: space-evenly;
	opacity: 0;
	transform: translateX(-50%);
  	transition: transform 0.5s, opacity 0.5s;
    bottom: 0%;
  }
  /*#desc1-sp, #desc2-sp, #desc3-sp {
	bottom: 133%;
  }
  #desc4-sp, #desc5-sp, #desc6-sp {
	bottom: 123%;
  }
  #desc7-sp, #desc8-sp, #desc9-sp {
	bottom: 115%;
  }
  #desc10-sp, #desc11-sp, #desc12-sp {
	bottom: 106%;
  }
  #desc13-sp, #desc14-sp {
	bottom: 96%;
  }*/
  .close {
	position: absolute;
	top: 2%;
	left: 87%;
	width: 30px;
  	height: 30px;
  }
  .close::before, .close::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 1px; /* 棒の幅（太さ） */
	height: 30px; /* 棒の高さ */
	background: #fff;
  }
  .close::before {
	transform: translate(-50%,-50%) rotate(45deg);
  }
   
  .close::after {
	transform: translate(-50%,-50%) rotate(-45deg);
  }
  .solution-desc-sp p {
	position: relative;
	z-index: 5;
	color: #fff;
	align-self: center;
	text-align: center;
	font-size: 24px;
    font-weight: 600;
  }
  .solution-desc-sp p:last-child {
    font-weight: 500;
  }
  .solution-desc span, .solution-desc-sp span {
    font-weight: 500;
  }
  .desc-img-sp{
	width: 145px;
	height: 145px;
	border: #00ffff 1px solid;
	background-color: #000;
	text-align: center;
  }
  .desc-img-sp img {
	margin: 0 auto;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
  }
  .desc-bottom-sp p{
	text-align: justify;
	width: 80%;
	font-size: 16px;
    margin: 0 auto;
  }
  .more-sp {
	position: relative;
	z-index: 5;
	color: #000;
	background-color: #00ffff;
	padding: 5px 0px;
	text-align: center;
    width: 145px;
  }
  .solution-context {
	background-color: #131F2D;
	width: 100%;
	height: 1200px;
  }
  .solution-context-container {
	display: flex;
	max-width: 1050px;
	margin: 0 auto;
	align-items: center;
	padding-top: 100px;
    transition: 0.5s ease-in-out;
	opacity: 0;
	transform: translateX(-100px);
  }
  .solution-context-container.on {
	transform: translateX(0);
	opacity: 1;
  }
  .solution-context-container1 {
	display: flex;
	max-width: 1050px;
	margin: 0 auto;
	align-items: center;
	padding-top: 100px;
	transition: 0.5s ease-in-out;
	opacity: 0;
	transform: translateX(100px);
  }
  .solution-context-container1.on {
	transform: translateX(0);
	opacity: 1;
  }
  .container-catch {
	color: #B4CDFF;
	font-size: 20px;
    font-weight: 600;
	margin-bottom: 30px;
  }
  .container-desc {
	font-size: 16px;
	color: #fff;
    letter-spacing: 1.5px;
    text-align: justify;
  }
  .container-left1 {
	margin-right: 40px;
  }
  .container-right {
	margin-left: 40px;
  }
  .solright {
	background: url('../img/solution/solution-context1.jpg') no-repeat center top;
	background-size: cover;
	width: 280px;
	height: 280px;
	background-color: #000;
	outline: none;
  }
  .solright2 {
	background: url('../img/solution/solution-context3.png') no-repeat center top;
	background-size: cover;
	width: 280px;
	height: 280px;
	background-color: #000;
  }
  .solleft {
	background: url('../img/solution/solution-context2.png') no-repeat center top;
	background-size: cover;
	width: 280px;
	height: 280px;
	background-color: #000;
  }
  .solution-context2 {
	max-width: 100%;
	height: 100%;
  }
  .solution-context-container2 {
	margin: 0 auto;
  }
  .semicustom-title {
    background-color: #F1EDEC;
  }
  .semicustom-title h3{
	text-align: center;
	font-size: 32px;
    font-weight: 600;
	color: #4D6690;
	padding: 6px;
	margin: 50px auto 50px auto;
    opacity: 0;
	transform: translateX(-100px);
	transition: 0.5s ease-in-out;
  }
  .semicustom-title h3.on {
    opacity: 1;
    transform: translate(0);
  }
  .fullcustom-title h3 {
    background-color: #F1EDEC;
    text-align: center;
	font-size: 32px;
    font-weight: 600;
	color: #4D6690;
	padding: 6px;
	margin: 50px auto 50px auto;
    opacity: 0;
	transform: translateX(-100px);
	transition: 0.5s ease-in-out;
  }
  .fullcustom-title h3.on{
    opacity: 1;
    transform: translate(0);
  }
  .semicustom-container {
	display: flex;
	padding-top: 20px;
	vertical-align: middle;
    margin: 0 auto;
    max-width: 1050px;
  }
  .semicustom-left {
	width: 48%;
	margin-top: 20px;
    line-height: 2.9;
    letter-spacing: 1.5px;
    text-align: justify;
    opacity: 0;
	transform: translateX(-100px);
	transition: 0.5s ease-in-out;
  }
  .semicustom-left.on {
	opacity: 1;
	transform: translateX(0);
  }
  .semicustom-right {
	width: 48%;
	display: flex;
	flex-direction: column;
    opacity: 0;
	transform: translateX(-100px);
	transition: 0.5s ease-in-out;
    transition-delay: 0.5s;
  }
  .semicustom-right.on {
	opacity: 1;
	transform: translateX(0);
  }
  .semicustom-right a {
	color: #4D6690;
	margin: 20px 0px 0px 25px;
	font-size: 18px;
    font-weight: 600;
  }
  .semicustom-right a::before {
	display: inline-block;
	content: "";
	height: 25px;
	width: 8px;
	background-color: #325E84;
	vertical-align: middle;
	margin-right: 10px;
  }
  .semicustom-right a:hover {
    color: rgba(77,102,144, 50%);
  }
  .semicustom-right p {
	margin: 35px 0px 20px 40px;
  }
  .semicustom-border {
	width: 1px;
	background-color: #707070;
	margin: 0px 0px 0px 25px;
    opacity: 0;
    transition: 0.5s ease-in-out;
  }
  .semicustom-border.on {
    opacity: 1;
  }
  .semicustom_img {
	margin: 90px auto 90px auto;
	text-align: center;
    max-width: 95%;
  }
  .fullcustom-catch h4 {
	text-align: center;
	font-size: 20px;
	font-weight: 600;
	padding: 30px 0px 30px 0px;
	border: 1.5px solid #707070;
    width: 90%;
    max-width: 1050px;
	margin: 0 auto;
    opacity: 0;
	transform: translateX(-100px);
	transition: 0.5s ease-in-out;
  }
  .fullcustom-catch h4.on {
	opacity: 1;
	transform: translateX(0);
  }
  .fullcustom-container {
	margin: 80px auto;
    max-width: 1050px;
  }
  .fullcustom-left, .fullcustom-right {
	display: flex;
	flex-direction: column;
	width: 65%;
	margin: 0 auto 40px auto;
  }
  .fullcustom-left {
	opacity: 0;
	transform: translateX(100px);
	transition: 0.5s ease-in-out;
  }
  .fullcustom-left.on {
	opacity: 1;
	transform: translateX(0);
  }
  .fullcustom-right {
    margin-left: 300px;
	opacity: 0;
	transform: translateX(-100px);
	transition: 0.5s ease-in-out;
  }
  .fullcustom-right.on {
	opacity: 1;
	transform: translateX(0);
  }
  .fullcustom-left h1, .fullcustom-right h1 {
	color: #323E47;
	font-size: 19px;
	font-weight: 600;
	border-bottom: 2px solid #E7E9F7;
  }
  .fullcustom-left h1::after, .fullcustom-right h1::after {
	content: "";
	position: absolute;
	display: block;
	border-bottom: 2px solid #0062AD;
	overflow: hidden;
	width: 16%;
	line-height: 0;
  }
  .fullcustom-left p, .fullcustom-right p {
	color: #323E47;
	font-size: 16px;
	margin-top: 10px;
  }
  .fullcustom-left h1:nth-child(1):before {
	content: "1.";
	display: inline-block;
	font-size: 40px;
	margin-left: -40px;
	color: #7A8CB0;
	position: relative;
	top: 8px;
    font-weight: 600;
  }
  .fullcustom-right h1:nth-child(1):before {
	content: "2.";
	display: inline-block;
	font-size: 40px;
	margin-left: -40px;
	color: #7A8CB0;
	position: relative;
	top: 8px;
    font-weight: 600;
  }
  .fullcustom-left:nth-child(3) h1:before {
	content: "3.";
	display: inline-block;
	font-size: 40px;
	margin-left: -40px;
	color: #7A8CB0;
	position: relative;
	top: 8px;
    font-weight: 600;
  }
  .fullcustom-right:nth-child(4) h1:before {
	content: "4.";
	display: inline-block;
	font-size: 40px;
	margin-left: -40px;
	color: #7A8CB0;
	position: relative;
	top: 8px;
    font-weight: 600;
  }
  .fullcustom-left:nth-child(5) h1:before {
	content: "5.";
	display: inline-block;
	font-size: 40px;
	margin-left: -40px;
	color: #7A8CB0;
	position: relative;
	top: 8px;
    font-weight: 600;
  }
  .New-platform_block:hover {
    background-color: #1c3959;
  }
  .solution_arrow {
    color: #00ffff;
  }
  @media screen and (max-width: 1280px) {
    .New-service {
        margin-top: 0px !important;
    }
    .package-flex:nth-of-type(even)::before {
        top: 0px !important;
    }
  }
  @media screen and (max-width: 960px) {
    .solution-circles, .solution-circles-2, .solution-circles-3 {
        display: none;
    }
	.solution-circles-sp, .solution-circles-2-sp, .solution-circles-3-sp, .solution-circles-4-sp {
		position: relative;
		z-index: 3;
		bottom: 95%;
		display: flex;
		justify-content: space-between;
		max-width: 95%;
		margin: 0 auto;
	}
	.solution-circles-5-sp {
		position: relative;
		z-index: 3;
		bottom: 95%;
		display: flex;
		max-width: 65%;
		margin: 0 auto;
	}
	.solution-title-desc br {
		display: none;
	}
	.solution-title {
		max-width: 95%;
        bottom: 97%;
	}
	.solution-title h3 {
		font-size: 42px;
	}
	.solution-context {
		height: 2400px;
	}
	.solution-context-container {
		flex-direction: column-reverse;
		padding-top: 30px;
		max-width: 340px;
	}
	.solution-context-container1 {
		flex-direction: column;
		padding-top: 30px;
		max-width: 340px;
	}
	.container-right {
		margin-left: 0px ;
        width: 100%;
        text-align: center;
	}
	.container-left1 {
		margin-right: 0px;
        width: 100%;
        text-align: center;
	}
	.solright, .solleft, .solright2 {
		width: 340px;
        height: 340px;
        margin: 0 auto;
	}
	.container-catch {
		margin-top: 20px;
		margin-bottom: 20px;
	}
	.container-desc {
		padding-bottom: 20px;
		border-bottom: 1px solid;
	}
	.semicustom-title h3 {
		padding: 30px 0px;
		margin: 0px;
	}
	.semicustom-container {
		flex-direction: column;
	}
	.semicustom-left {
		width: 340px;
		margin: 0 auto;
		border-bottom: 1.5px solid #707070;
		padding-bottom: 30px;
	}
	.semicustom-right {
		width: 340px;
		border-left: none;
		margin:  30px auto 0px auto;
        transition-delay: 0s;
	}
	.semicustom-right p br {
		display: none;
	}
	.semicustom-left a {
		margin-left: 0px;
	}
	.semicustom-right p, .semicustom-right a {
		margin: 20px 0 0 0;
	}
    .semicustom-right a {
        font-size: 14px;
    }
	.semicustom_img {
		margin: 45px auto 45px auto;
	}
	.fullcustom-catch {
		width: 340px;
		margin:  0 auto;
	}
	.fullcustom-catch h4 {
		margin: 40px auto;
		line-height: 1.8;
		padding: 30px 15px;
	}
	.fullcustom-catch h4 br {
		display: none;
	}
	.fullcustom-container {
		margin: 0 auto 0 30px;
		width: 340px;
	}
	.fullcustom-left, .fullcustom-right {
		width: 85%;
		margin: 0 auto;
        text-align: justify;
	}
    .fullcustom-left h1, .fullcustom-right h1 {
		line-height: 1.3;
	}
	.fullcustom-left h1::after, .fullcustom-right h1::after {
		width: 26%;
	}
    .solution-bg-img {
		background: url('../img/solution/solution_top_smartcity_sp.jpg') no-repeat right top !important;
		background-size: cover !important;
	}
    .semicustom-border {
        display: none;
    }
}
.solution_building_sp {
    display: none;
}
.h1-solution {
  color: #fff;
  font-size: 4rem;
  font-weight: 900;
  text-align: center;
}
.h2-solution {
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
}
.h3-solution {
  border-bottom: .1rem solid #014c86;
  color: #305E80;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 2.5;
  margin: 60px auto 3.5rem;
  text-align: center;
  position: relative;
  width: 76.5rem;
}
.h3-solution::before {
  background-color: #1b2950;
  content: '';
  height: .4rem;
  position: absolute;
  bottom: -.25rem;
  left: 50%;
  transform: translate(-50%, 0);
  width: 7rem;
  }
.first-view {
  width: 100%;
}
 .office-first-view__block {
  background: url('../img/solution/Smart_Office_banner.jpg') no-repeat center bottom;
  background-size: cover;
  height: 35rem;
  position: relative;
}
.hospital-first-view__block {
  background: url('../img/solution/Smart_Hospital_banner.jpg') no-repeat center center;
  background-size: cover;
  height: 35rem;
  position: relative;
}
.building-first-view__block {
    background: url('../img/solution/Smart_Building_banner.jpg') no-repeat center bottom;
    background-size: cover;
    height: 35rem;
    position: relative;
  }
.parking-first-view__block {
  background: url('../img/solution/Smart_Parking_banner.jpg') no-repeat center center;
  background-size: cover;
  height: 35rem;
  position: relative;
}
.first-view__text {
  position: absolute;
  top: 50%;
  left: 50%;
  text-align: center;
  transform: translate(-50%, -50%);
  width: 100%;
}
.first-view__text p {
  color: #fff;
  font-size: 2.3rem;
  font-weight: 700;
  margin-top: 2.5rem;
}
.first-view__text span {
  background-color: #1B2950;
  padding: 0.5rem 1.5rem;
}

/* concept */
.concept {
  padding: 7rem;
}
.concept__subtext {
  margin-top: 2.5rem;
  font-size: 1.6rem;
  text-align: center;
}
.concept__flex {
  display: flex;
  justify-content: space-between;
  margin: 5rem auto 0;
  width: 100rem;
}
.concept__flex-element {
  text-align: center;
  width: 32rem;
}
.concept__flex-element img {
  width: 100%;
}
.concept__flex-element p {
  color: #1b2950;
  font-size: 2rem;
  font-weight: 500;
  margin-top: 2rem;
}

/* system */
.system {
  padding: 7rem;
}
.system__block {
  margin: 0 auto;
  width: 100rem;
}
.system__image {
  margin: 6rem auto 0;
  width: 98rem;
}
.system__image img {
  width: 100%;
}
.system__box {
  margin: 10rem auto 0;
  text-align: center;
  width: 100rem;
}
.system__box p {
  margin-bottom: 4.5rem;
  text-align: center;
}
.system__box img {
  width: 64rem;
  display: initial;
}
.system aside:nth-of-type(2) .system__box {
  position: relative;
}
.system aside:nth-of-type(2) img:last-child {
  position: absolute;
    bottom: -3rem;
    left: 0;
  width: 36.1rem;
}

/* usecase */
.usecase {
  background-color: #f7f7f7;
  padding: 7rem 0 12rem;
}
.usecase__block {
  margin: 0 auto;
  width: 128rem;
}
.usecase__subtext {
  margin-top: 2.5rem;
  font-size: 1.6rem;
  text-align: center;
}
.usecase__flex {
  display: flex;
  justify-content: space-between;
  margin: 5rem auto 0;
  width: 100rem;
}
.usecase__flex-element {
  text-align: center;
  width: 32rem;
}
.usecase__flex-element img {
  width: 100%;
}
.usecase__flex-element p {
  color: #1b2950;
  font-size: 2rem;
  font-weight: 700;
  margin-top: 2rem;
}
.solution_pan {
    color: #000;
    display: block;
    padding: 0 32px 0 0;
    font-size: 1.0rem;
    margin: 5px 0;
}
.solution_building_pc {
    max-width: 1210px !important;
    margin: 0 auto;
}
.hospital-banner-text {
    display: flex;
    flex-direction: column;
    position: absolute;
    text-align: center;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    color: #fff;
    height: 90%;
}
.hospital-banner-text h3 {
    font-size: 48px;
    margin: 15px 0 15px 0;
    font-weight: 600;
    letter-spacing: 1.2px;
    animation: text_animation 0.8s 1s forwards cubic-bezier(0.11, 0, 0.5, 0);
    opacity: 0;
}
.hospital-banner-text p {
    line-height: 1.8;
    font-size: 18px;
}
.hospital-banner-text p:last-child {
    font-size: 20px;
}
.hospital-banner-text span {
    opacity: 0;
}
.hospital-banner-text img {
    margin: 0 auto;
}
.solution-banner-container, .solution-lower, .dx-img {
    max-width: 1280px;
    margin: 0 auto;
}
.solution-banner-breadcrumb {
    display: flex;
    flex-direction: column;
    color: #fff;
    background-color: #172b41;
    padding: 15px 50px;
    max-width: 475px;
    clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%);
    animation: slide_in 0.8s ease-in-out;
}
.solution-banner-breadcrumb p span {
    opacity: 0;
}
.hospital-link {
    display: block;
    border-bottom: 1px solid #D9D9D9;
}
.hospital-link:hover, .dx-link:hover {
    opacity: 0.3;
}
.dx-link {
    display: block;
    width: 1000px;
    margin: 0 auto;
}
.a-eyes {
    display: block;
    margin: 0 auto 30px auto;
}
.bg-banner {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #172b41;
    max-width: 350px;
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 15px 0px;
    animation: slide_in 0.8s ease-in-out;
}
.building-catch {
    text-align: center;
    line-height: 3.2;
    font-weight: 600;
    font-size: 20px;
    margin: 60px auto;    
}
.building-content {
    background-color: #172b41;
    color: #fff;
    width: 1100px;
    margin: 60px auto 120px auto;
    padding: 0px 60px;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    height: 650px;
}
.building-content-title {
    font-size: 20px;
    font-weight: 600;
}
.building-content-p {
    line-height: 3.2;
}
.dx-core {
    border: 1px solid;
    width: 1000px;
    margin: 120px auto;
    padding: 40px 0px;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}
.dx-core p:nth-child(1) {
    font-size: 24px;
}
.dx-core span, .dx-core p:nth-child(1){
    font-weight: 600;
}
.dx-core p:last-child::after {
    content: ">>";
    position: absolute;
    margin-top: 30px;
    margin-left: 70px;
    font-weight: 600;
}
.smart-building {
    border-top: 2px solid #D9D9D9;
    text-align: center;
    font-size: 42px;
    font-weight: 600;
    padding: 60px 0;
    letter-spacing: 3px;
}
.h2-solution-building, .h2-solution-hospital, .smarthospital_features_123 {
    display: none;
}
.on-prem {
    max-width: 1000px;
    margin: 0 auto;
}
.hospital-catch, .parking-catch {
    text-align: center;
    line-height: 2.5;
    font-weight: 600;
}
.hospital-flex-content span {
    color: #FF3000;
}
.hospital-catch {
    font-size: 22px;
    max-width: 1080px;
    margin: 0 auto;
}
.hospital-catch:last-child {
    font-size: 30px;
    margin: 30px auto 60px auto;
}
#hospital-catch-lower {
    margin-bottom: 80px;
}
.hospital-flex {
    display: flex;
    margin: 60px auto 30px auto;
    max-width: 980px;
}
.hospital-flex-content p{
    font-size: 20px;
    font-weight: 600;
    width: 75%;
    margin: 20px auto 60px auto;
}

.hospital-flex-content p, .hospital-alert, .hospital-toilet-h3, .hospital-toilet-p {
    text-align: center;
}
.hospital-flex-content:nth-child(2) span {
    color: #FF3000;
}
.hospital-system {
    background-color: #f7f7f7;
    padding: 60px 60px;
    max-width: 100%;
    margin: 0 auto 30px auto;
}
.parking-system {
    background-color: #f7f7f7;
    padding: 60px 60px;
    max-width: 100%;
    margin: 0 auto 30px auto;
}
.hospital-system img {
    padding: 60px 0px;
    max-width: 1080px;
    margin: 0 auto;
}
.parking-system img {
    padding: 60px 0px;
    width: 80rem;
    margin: 0 auto;
}
.hospital-system-title {
    font-weight: 600;
    text-align: center;
    font-size: 30px;
}
.hospital-img-flex {
    display: flex;
    flex-direction: row;
    max-width: 880px;
    margin: 100px auto;
    justify-content: center;
}
.hospital-img-flex img:nth-child(1) {
    width: 70%;
    height: auto;
}
.hospital-img-flex img:nth-child(2) {
    width: 30%;
    height: auto;
    margin-left: 40px;
}
.hospital-ul {
    width: 940px;
    margin: 0 auto 3.5rem auto;
    list-style-type: initial;
    list-style-position: inside;
    font-size: 16px;
    line-height: 2.2;
}
.hospital-toilet-h3 {
    background-color: #172b41;
    color: #fff;
    width: fit-content;
    margin: 0 auto 20px auto;
    padding: 10px 20px;
    font-size: 20px;
}
.hospital-toilet-p {
    font-weight: 600;
    font-size: 20px;
}
.hospital-toilet-p::after {
    content: url('../img/solution/hospital_arrow.png');
    display: flex;
    justify-content: center;
    margin-top: 10px;
    zoom: 50%;
}
.parking-content {
    background-color: #fff;
    margin: 60px auto;
    padding-bottom: 60px;
    max-width: 100rem;
}
.parking-content-p {
    margin: 5px auto 0 auto;
    font-weight: 600;
    background-color: #f7f7f7;
    text-align: center;
    line-height: 2.6;
    width: 800px;
}
.parking-content-p::after {
    content: url('../img/solution/hospital_arrow.png');
    display: flex;
    justify-content: center;
    background-color: #fff;
    padding-top: 20px ;
    zoom: 50%;
}
.parking-content-p:last-child::after, #hospital-toilet-last::after {
    content: none;    
}
#hospital-toilet-last {
    margin-bottom: 30px;
}
.parking-content-p span {
    display: block;
    padding: 15px 0px;
}
.parking-catch {
    margin: 60px 0;
}
.parking-img-top {
    width: 64rem; 
    margin: 60px auto;
}
.system-structure-sp {
    display: none;
}
.a-eyes-top {
    margin: 40px auto;
}
.hospital-alert {
    margin: 20px auto 100px auto;
}
.realtime-parking {
    max-width: 64rem;
    margin: 0 auto 80px auto;     
}
@media screen and (max-width: 960px) {
    .solution_building_sp, .smarthospital_features_123 {
        display: block;
    }
    .solution_building_pc {
        display: none !important;
    }
    .dx-img, .bg-banner {
        display: none;
    }
    .office-first-view__block, .building-first-view__block, .hospital-first-view__block, .parking-first-view__block {
        height: 25rem;
    }
    .hospital-banner-text {
        top: 60%;
        width: 100%;
        justify-content: center;
    }
    .hospital-banner-text h3 {
        font-size: 34px;
        margin: 10px 0;
    }
    .hospital-banner-text p {
        font-size: 12px;
    }
    .concept, .hospital-catch, .h2-solution-hospital, .parking-catch {
        margin: 0 auto;
    }
    .concept__flex {
        flex-direction: column;
    }
    .concept__flex ,.concept__flex-element, .usecase__flex {
        width: initial;
    }
    .concept__flex {
        margin-top: 2rem;
    }
    .concept , .system, .usecase, .building-content {
        padding: initial;
    }
    .system aside:nth-of-type(2) img:last-child {
        width: 14rem;
        margin: 0 0 20px 10px;
    }
    .hospital-banner-text, .concept , .h2-solution, .usecase__block, .building-catch, .building-content-title, .building-content-p, .dx-core, .hospital-catch, .parking-catch, .h2-solution-hospital {
        max-width: 340px;
    }
    .usecase {
        margin-bottom: 20px;
        padding-bottom: 30px;
    }
    .usecase__flex-element {
        width: initial;
        display: flex;
        flex-direction: column;
        margin: 3rem auto 0;
    }
    .usecase__flex-element p {
        margin: 5px auto 0.5rem auto;
        font-size: 0.9rem;
    }
    .usecase__flex-element img {
        width: 90%;
        margin: 0 auto;
    }
    .building-content {
        max-width: 100%;
        height: 580px;
        padding: 10px 0px 0px;
        margin: 30px auto;
    }
    .building-catch {
        text-align: justify;
        margin: 0 auto;
        padding: 20px 0px;
        font-size: 14px;
        font-weight: 500;
        line-height: 2.2;
    }
    .building-content-title {
        width: 340px;
        text-align: left;
        margin: 0 auto;
    }
    .building-content-p {
        text-align: justify;
        margin: 0 auto;
    }
    .h2-solution-building, .h2-solution-hospital {
        font-size: 20px;
        font-weight: 600;
        text-align: justify;
        display: block;
        max-width: 340px;
        margin: 20px auto;
      }
      .h2-solution {
        font-size: 21px;
        margin: 2.5rem auto;
        max-width: 340px;
      }
    .dx-core {
        flex-direction: column;
        padding: 40px 20px;
        text-align: justify;
        margin: 30px auto;
    }
    .dx-core br, .building-catch br:nth-child(2), .building-catch br:nth-child(3), .dx-core p:last-child::after, .h2-solution-building br, .h2-solution-hospital br, #building-header-p, #hospital-header-p, #parking-header-p, #office-header-p, .building-catch br, .hospital-catch br, .parking-content-p br, .concept__subtext br, .concept__flex-element p br, .system__box p br, .building-content-p br {
        display: none;
    }
    .dx-core p:nth-child(1) {
        font-size: 22px;
        padding-bottom: 30px;
    }
    .dx-core p:last-child {
        line-height: 2.8;
    }
    .on-prem {
        margin-top: 20px;
    }
    .hospital-ul {
        width: fit-content;
        padding: 0px 15px;
    }
    .hospital-ul li {
        margin-bottom: 20px;
    }
    .hospital-flex, .hospital-img-flex {
        flex-direction: column;
    }
    .hospital-img-flex {
        margin: 70px auto;
    }
    .hospital-flex {
        margin: 20px auto 0 auto;
    }
    .hospital-flex-content {
        display: none;
    }
    .hospital-catch {
        margin: 20px auto;
        line-height: 2.4;
        font-size: 16px;
    }
    .hospital-catch:nth-child(2) {
        line-height: 1.6;
        margin: 40px auto;
    }
    #hospital-catch-lower {
        margin-bottom: 40px;
    }
    .hospital-toilet-h3 {
        width: 85%;
        padding: 5px 0;
        font-size: 18px;
    }
    .hospital-toilet-p {
        font-size: 16px;
    }
    .hospital-system-title {
        font-size: 2rem;
    }

    .hospital-img-flex img:nth-child(1) {
        width: 100%;
        height: auto;
        margin: 0 auto 70px auto;
    }
    .hospital-img-flex img:nth-child(2) {
        width: 50%;
        height: auto;
        margin: 20px auto 0 auto;
    }
    .hospital-system, .parking-system {
        padding: 20px 30px;
        margin: 0 auto;
    }
    .hospital-system img {
        padding: 20px 0px;
        max-width: 100%;
    }
    .parking-system img {
        padding: 30px 20px;
        width: 90rem;
        margin: 0 auto;
    }
    .h3-solution {
        font-size: 1.7rem;
        max-width: 100%;
        padding: 10px 10px;
        line-height: 1.3;
    }
    .hospital-alert {
        text-align: right;
        margin: 0px 30px 0px 0px;
    }
    .a-eyes {
        margin: 40px auto;
        transform: scale(3.4);
    }
    .a-eyes-top {
        overflow: hidden;
        margin: 25px auto 0 auto;
    }
    .a-eyes-top img {
        transform: scale(3.4);
        margin: 30px 0;
    }
    .a-eyes-bottom {
        overflow: hidden;
    }
    .parking-catch {
        margin-bottom: 30px;
        text-align: justify;
    }
    .parking-catch br {
        display: none;
    }
    .parking-content-p {
        max-width: 300px;
        text-align: justify;
    }
    .system-structure-pc {
        display: none;
    }
    .system-structure-sp {
        display: block;
    }
    .system__box {
        margin: 5rem auto 0;
    }
    .system__box p {
        text-align: justify;
        margin: 0 auto 1.5rem auto;
        max-width: 340px;
        line-height: 2.4;
    }
    .parking-img-top {
        max-width: 340px;
        margin: 30px auto;
    }
    .parking-content {
        margin: 20px 0;
    }
    .parking-content-p span {
        padding: 15px 10px;
    }
    .smart-building {
        font-size: 36px;
        padding: 30px 0;
    }
    .h2-solution-building {
        font-size: 18px;
        text-align: center;
    }
    .solution-banner-breadcrumb {
        padding: 5px 30px;
        max-width: 290px;
        font-size: 10px;
    }
    .smart_building_logo {
        width: 45px;
    }
    .dx-link {
        width: fit-content;
    }
    .dx-core span {
        text-decoration: underline;
    }
    .concept__subtext {
        font-size: 12px;
        text-align: justify;
        line-height: 2.4;
    } 
    .concept__flex-element  {
        width: 70%;
        margin: 0 auto;
    }
    .concept__flex-element p {
        margin: 0;
        font-size: 14px;
        font-weight: 600;
    }
    .system_head_img {
        width: 80rem;
    }
    .system__box img {
        width: 26rem;
    }
    .system_multi_img {
        width: 46rem;
    }
    .usecase .usecase__block h2 {
        font-size: 20px;
        padding-top: 40px;
    }
    #hospital-title, #parking-title, #office-title, #building-title {
        text-align: center;
    }
    .smartparking_03 {
        width: 36rem !important;
        margin: 40px auto 20px auto !important;
    }
    .realtime-parking {
        max-width: 36rem;
        margin: 0 auto 40px auto;
    }
    .system__block, .system__box, .system__image {
        max-width: 100%;
    }
}

/* AI BOX EX */
.aiboxex-first-view__block {
    background: url('../../src/img/boxEX/aiboxEXbanner.jpg') no-repeat center bottom;
    background-size: cover;
    height: 45rem;
    position: relative;
}
.aiboxex-banner-text {
    display: flex;
    flex-direction: column;
    position: absolute;
    text-align: left;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    color: #fff;
    height: 80%;
    width: 100%;
    justify-content: space-between;
    max-width: 1050px;
    margin: 0 auto;
}
.aiboxex-banner-text span {
    opacity: 0;
}
.aiboxex-banner-text span h1 {
    font-size: 28px;
}
.aiboxex-banner-text span h2 {
    font-size: 21px;
}
.aiboxex-banner-text span p, .aiboxex-schedule p {
    font-size: 14px;
}
.aiboxex-flex {
    display: flex;
    max-width: 1280px;
    margin: 0 auto;
    padding: 24px 48px;
    justify-content: space-between;
    align-items: baseline;
}
.aiboxex-flex-element {
    display: flex;
    flex-direction: column;
}
.aiboxex-flex-element span {
    font-weight: 600;
}
.aiboxex-flex-element br {
    display: block;
}
.aiboxFlex-img1, .aiboxFlex-img2, .aiboxFlex-img3 {
    max-width: 365px;
    margin: 0 auto 24px auto;
}
.aiboxex-schedule {
    padding: 24px 0;
    margin: 0 auto;
    text-align: center;
    color: #1c4587;
}
.aiboxex-schedule h1 {
    font-size: 32px;
    font-weight: 700;
}
.aiboxex-schedule p:last-of-type {
    font-size: 16px;
    font-weight: 600;
}
.aiboxex-schedule br {
    display: none;
}
.aiboxex-slide {
    background-color: #f7f7f7;
    padding: 24px 0 0 0;
    height: 700px;
}
.s-wrap {
    width: 100%;
    height: 100%;
    max-width: 1080px;
    margin: 0 auto 50px auto;
    position: relative;
    overflow: hidden;
  }
  .s-wrap > input {
    display: none;
  }
  .s-wrap .s-content {
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 500%;
    height: 100%;
    font-size: 0;
    list-style: none;
    transition: transform 1s;
  }
  .s-wrap .s-item {
    display: inline-block;
    width: 20%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: contain;
  }
  .s-wrap .s-item-1 {
    background-image: url('../../src/img/boxEX/aiboxEXslide1.png');
  }
  .s-wrap .s-item-2 {
    background-image: url('../../src/img/boxEX/aiboxEXslide2.png');
  }
  .s-wrap .s-item-3 {
    background-image: url('../../src/img/boxEX/aiboxEXslide3.png');
  }
  .s-wrap .s-item-4 {
    background-image: url('../../src/img/boxEX/aiboxEXslide4.png');
  }
  .s-type-1 .s-control {
    position: absolute;
    bottom: 10%;
    left: 50%;
    text-align: center;
    transform: translateX(-50%);
    transition-timing-function: ease-out;
  }
  .s-type-1 .s-control > label[class^="s-c-"] {
    display: inline-block;
    width: 12px;
    height: 12px;
    margin-right: 10px;
    border-radius: 50%;
    border: 1px solid #999;
    background-color: #efefe8;
    cursor: pointer;
  }
  .s-type-1 .s-nav label {
    display: none;
    position: absolute;
    top: 39%;
    padding: 5px 10px;
    transform: translateY(-50%);
    cursor: pointer;
  }
  .s-type-1 .s-nav label::before, .s-type-1 .s-nav label::after {
    content: "";
    display: block;
    width: 8px;
    height: 24px;
    background-color: #fff;
  }
  .s-type-1 .s-nav label::before {
    margin-bottom: -12px;
  }
  .s-type-1 .s-nav label.slide-left {
    left: 20px;
  }
  .s-type-1 .s-nav label.slide-left::before {
    transform: rotate(45deg);
  }
  .s-type-1 .s-nav label.slide-left::after {
    transform: rotate(-45deg);
  }
  .s-type-1 .s-nav label.slide-right {
    right: 20px;
  }
  .s-type-1 .s-nav label.slide-right::before {
    transform: rotate(-45deg);
  }
  .s-type-1 .s-nav label.slide-right::after {
    transform: rotate(45deg);
  }
  .s-type-1 #s-1:checked ~ .s-content {
    transform: translateX(0%);
  }
  .s-type-1 #s-1:checked ~ .s-control .s-c-1 {
    background-color: #333;
  }
  .s-type-1 #s-1:checked ~ .s-nav .s-nav-1 {
    display: block;
  }
  .s-type-1 #s-2:checked ~ .s-content {
    transform: translateX(-20%);
  }
  .s-type-1 #s-2:checked ~ .s-control .s-c-2 {
    background-color: #333;
  }
  .s-type-1 #s-2:checked ~ .s-nav .s-nav-2 {
    display: block;
  }
  .s-type-1 #s-3:checked ~ .s-content {
    transform: translateX(-40%);
  }
  .s-type-1 #s-3:checked ~ .s-control .s-c-3 {
    background-color: #333;
  }
  .s-type-1 #s-3:checked ~ .s-nav .s-nav-3 {
    display: block;
  }
  .s-type-1 #s-4:checked ~ .s-content {
    transform: translateX(-60%);
  }
  .s-type-1 #s-4:checked ~ .s-control .s-c-4 {
    background-color: #333;
  }
  .s-type-1 #s-4:checked ~ .s-nav .s-nav-4 {
    display: block;
  }
  .s-control p br{
    display: none;
  }
  @keyframes slider-animation {
    0%, 7% {
      transform: translateX(0%);
    }
    12.5%, 19.5% {
      transform: translateX(-20%);
    }
    25%, 32% {
      transform: translateX(-40%);
    }
    37.5%, 44.5% {
      transform: translateX(-60%);
    }
    50%, 57% {
      transform: translateX(-80%);
    }
    62.5%, 69.5% {
      transform: translateX(-60%);
    }
    75%, 82% {
      transform: translateX(-40%);
    }
    87.5%, 94.5% {
      transform: translateX(-20%);
    }
  }
  .aiboxEX-table {
    table-layout: fixed;
    zoom: 90%;
    margin: 0 auto;
  }
  .aiboxEX-table td {
    border: 1px SOLID #97b7ce;
    vertical-align: middle;
    font-size: 13px;
    white-space: nowrap;
    padding: 2px 3px;
  }
  .aiboxEX-table-top {
    background-color: #1b4e6d;
    text-align: center;
    vertical-align: middle;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    border: 1px solid #fff !important;
  }
  .aiboxEX-table-category {
    background-color: #f3f3f3;
    text-align: center;
    padding: 2px 3px;
  }
  .aiboxEX-table-category2 {
    text-align: center;
    padding: 2px 3px;
  }
  .aiboxEX-table-content {
    background-color: #f3f3f3;
    padding: 2px 3px;
  }
  .aiboxEX-table-content2 {
    padding: 2px 3px;
  }
  .aiboxEX-email {
    text-align: center;
    font-size: 21px;
    font-weight: 600;
    margin: 40px auto 0px auto;
    padding: 40px 0px;
    background-color: #1b2950;
    color: #fff;
    line-height: normal;
  }
  .aiboxEX-email span {
    font-weight: 500;
    text-decoration: underline;
  }
  #icon1, #icon2, #icon3, #icon4 {
    position: relative;
  }
  #icon1::after {
    content: url('../../src/img/boxEX/nvidia.png');
    position: absolute;
    right: 8%;
    top: 50%;
    transform: translateY(-50%) scale(0.25);
  }
  #icon2::after {
    content: url('../../src/img/boxEX/5g.png');
    position: absolute;
    top: 50%;
    transform: translateY(-50%) scale(0.3);
    left: 74%;
  }
  #icon3::after {
    content: url('../../src/img/boxEX/24x365.png');
    position: absolute;
    right: 14%;
    top: 50%;
    transform: translateY(-50%) scale(0.28);
  }
  #icon4::after {
    content: url('../../src/img/boxEX/nvme.png');
    position: absolute;
    right: 31%;
    top: 50%;
    transform: translateY(-50%) scale(0.25);
  }
  .table-sp {
    display: none;
  }
  .email-button {
        display: inline-block;
        padding: 10px 30px;
        background-color: #1c4587;
        color: #fff;
        text-decoration: none;
        border-radius: 5px;
        font-size: 21px;
        font-weight: bold;
        margin-top: 10px;
  }
   .email-button:hover {
        background-color: #0097dd;
        color: #fff;
  }
  .aiboxEX-lowerbannertext {
    font-size: 16px;
    text-align: center;
  }
  .AIapp-container-sp {
    display: none;
  }
  .aiboxArmm {
    color: #1c4587;
    margin: 60px auto;
    max-width: 900px;
    font-size: 18px;
    font-weight: 700;
  }
  .aiboxArmm p {
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    color: #000;
  }
  .aiboxArmm h1, .aiboxInterface {
    font-size: 32px;
    font-weight: 700;
    text-align: center;
    color: #1c4587;
  }
  .aiboxArmm h3 {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
  }
  .armmgroup {
    margin: 0.75em 0;
    padding: 0 1em;
    list-style: none;
    color: #000;
    font-size: 18px;
  }
  .armmgroup li {
    margin-left: 16px;
    font-weight: 500;
    font-size: 16px;
  }
  .armmgroup li::before {
    content: "";
    border-color: transparent #1c4587;
    border-style: solid;
    border-width: 0.35em 0 0.35em 0.45em;
    display: block;
    height: 0;
    width: 0;
    left: -1em;
    top: 0.9em;
    position: relative;
  }
  .armmgroup li:marker {
    content: "▶";
  }
  .armmgroup span {
    font-weight: 700;
  }
  .armmgroup:marker {
    content: "▶";
  }
  .aibox-link {
    color: #559AC8;
    text-decoration: underline;
  }
  @media screen and (max-width: 960px) {
    .aiboxex-flex {
        flex-direction: column;
        padding: 0px;
        max-width: 340px;
        font-size: 15px;
        margin: 12px auto;
    }
    .aiboxex-first-view__block {
        height: 75rem;
    }
    .aiboxex-banner-text {
        max-width: 340px;
        height: 95%;
    }
    .aiboxex-banner-text span h1 {
        font-size: 20px;
    }
    .aiboxex-banner-text span h2 {
        font-size: 16px;
    }
    .aiboxex-banner-text span p, .aiboxex-schedule p {
        margin-top: 5px;
    }
    .aiboxex-flex-element {
        width: 340px;
        max-width: 340px;
        margin: 12px auto;
    }
    .aiboxex-flex-element br {
        display: none;
    }
    .aiboxex-slide {
        height: 350px;
    }
    .s-type-1 .s-nav label.slide-left {
        left: 10px;
    }
    .s-type-1 .s-nav label.slide-right {
        right: 10px;
    }
    .s-type-1 .s-nav label {
        top: 28%;
    }
    .aiboxex-schedule {
        max-width: 340px;
    }
    .aiboxex-schedule p {
        margin-top: 10px;
        text-align: left;
    }
    .aiboxex-schedule br {
        display: block;
    }
    .aiboxex-schedule h1, .aiboxArmm h1, .aiboxInterface {
        font-size: 24px;
    }
    .s-control p br{
        display: block;
    }
    .s-control p {
        font-size: 14px;
        width: 340px;
    }
    .aiboxEX-email {
        font-size: 16px;
    }
    .aiboxFlex-img1 {
        max-width: 260px;
        margin: 0 auto 12px auto;
    }
    .aiboxFlex-img3 { 
        max-width: 240px;
        margin: 0 auto 24px auto;
    }
    .aiboxFlex-img2 {
        max-width: 270px;
        margin: 0 auto 24px auto;
    }
    .aiboxArmm h3 {
        margin: 30px 0px 20px 0px;
    }
    .aiboxArmm p {
        font-size: 14px;
    }
    .table-sp {
        display: block;
        font-size: 18px;
        font-weight: 700;
        background-color: #0097dd;
        color: #fff;
        margin: 24px auto;
        text-align: center;
        padding: 6px 0px;
        max-width: 300px;
    }
    .table-pc {
        display: none;
    }
    #icon1::after, #icon2::after, #icon3::after, #icon4::after {
        display: none;
    }
    .aiboxEX-lowerbannertext {
        font-size: 14px;
        max-width: 340px;
        margin: 0 auto;
        text-align: justify;
    }
    .aibox-banner {
        max-width: 340px;
        flex-direction: column;
    }
    .aibox-banner img {
        display: none;
    }
    .aibox-bannerinfo {
        margin: 20px auto;
    }
    .aibox-bannersend {
        margin: 0 auto 20px auto !important;
    }
    .AIapp-container {
        display: none;
    }
    .AIapp-container-sp {
        display: flex;
    }
    #top .hero {
        height: 95vh;
    }
    #top .hero .hero-content {
        top: 20%;
    }
    .New-Top-pc-AIapp {
        top: 35%;
    }
    .New-Top-pc-AIapp h1 {
        line-height: inherit;
        font-size: 24px;
        max-width: 340px;
        margin: 0 auto;
    }
  }
  @media screen and (max-height: 750px) {
    #top .hero {
        height: 125vh;
    }
  }
  .solution-jigyou {
    width: fit-content;
    display: block;
    margin: 0 auto;
}
.aibox-banner-link {
    display: block;
    width: 100%;
    background-color: #cae2f6;
}
.aibox-banner {
    display: flex;
    max-width: 1280px;
    align-items: center;
    margin: 0 auto;
}
.aibox-banner-img1 {
    max-width: 280px;
    margin-top: 30px;
}
.aibox-banner-img2 {
    max-width: 180px;
}
.aibox-banner-img3 {
    max-width: 250px;
    margin: 10px 20px 0 20px;
}
.aibox-bannerinfo {
    font-size: 18px;
    color: #333333;
}
.aibox-bannerinfo span {
    font-size: 22px;
    font-weight: 600;
}
.aibox-bannersend {
    margin-left: 40px;
    text-decoration: underline;
    background-color: #1c4587;
    color: #fff;
    padding: 10px 30px;
    border-radius: 5px;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 2px;

}