/*  -----------------------------------

    NXCL Style since 2023 
    - Top Style

    ---------------------------------- */

#at-casestudy .fdUT a {
  text-decoration: none;
}
/* max-width: 1279px 
   1279px 以下 ================== */
@media screen and (max-width:1279px) {
    .container {
        padding: 0;
    }
}
/* max-width: 768px 
   768px 以下 ================== */
@media screen and (max-width:768px) {
    .container h2 img {
        height: 25px;
    }
}
/* max-width: 519px 
   519px 以下 ================== */
@media screen and (max-width:519px) {
    .container h2 {
        margin-bottom: 9.63vw; /* 519px: 50px */
    }
    .container h2,
    .container h2 span {
        font-size: 1.4rem;
    }
    .container h2 img {
        height: 4.82vw; /* 519px:25px*/
        margin-bottom: 2.89vw;
    }
}


/*  video area Style ---------------------- */
#main-visual {
    margin-top: 198px;
    min-height: 54.69vw;
    position: relative;
}
#main-visual .deco-line.fdR.scfdRT {
    position: absolute;
    content: "";
    top: -0.78vw;/* -15px */
    right: -89.06vw;/* -1710px */
    width: 107.29vw;/* 2060px */
    height: 6.51vw;/* 125px */
    background: url(/common/images/deco-line.svg) no-repeat left top;
    background-size: 100%;
    z-index: -1;
    transform: scale(-1,1);
}
#catch {
    display: flex;
    justify-content: center;
    margin: 0 0 120px;
}
#catch h2 {
    text-align: center;
}
#catch h2 img{
    width: 575px;
}
#catch-en {
    text-align: center;
    display: flex;
    overflow: hidden;
    margin-left: 30px;
}
#video-area {
    z-index: -3;
    position: relative;
    width: 100vw;
    height: 43.23vw;
    margin-top: -55px;
    overflow: hidden;
}
#video {
    /*天地中央配置*/
    position: absolute;
    z-index: -3;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 110%;
    min-width: 100%;
    filter: brightness(0.7) contrast(110%);
}
/* max-width: 1024px 
   1024px 以下 ================== */
@media screen and (max-width:1024px) {
    #catch h2 img {
        width: 76.4vw;
    }
    #main-visual {
        padding: 0;
        min-height: 85.54vw;
    }
    #main-visual .deco-line.fdRT.scfdRT {
        top: inherit;
        bottom: 7.13vw;/* -73px */
        right: -89.06vw;/* -1710px */
        width: 107.81vw;
        height: 6.54vw;
    }
    #catch {
        margin-bottom: 90px;
    }
    #catch-en img {
        width: 450.52vw;
    }
}

/* max-width: 889px 
   889px 以下 ================== */
@media screen and (max-width:889px) {
    #catch {
        margin-bottom: 12vw;
    }
    #catch h2 img {
        width: 80vw;
    }
    #catch-en img {
        width: 449.33vw;
    }
    #main-visual .deco-line.fdRT.scfdRT {
        top: inherit;
        bottom: -16.76vw;/* -149px */
        right: -227.22vw;/* -2020px */
        width: 278.07vw;
        height: 16.87vw;
    }
    #main-visual {
        margin-top: 19.47vw;
        width: 100vw;
        min-height: inherit;
    }
    #video-area {
        z-index: -3;
        position: relative;
        width: 100vw;
        padding-top: 99.666667vw;
        margin-top: -6.2vw;
        overflow: hidden;
    }
    #video {
        /*天地中央配置*/
        position: absolute;
        z-index: -3;
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        transform: translate(-50%, -50%);
        min-height: 100%;
        min-width: 100%;
    }
}

/*  Cash Logistics Style ---------------------- */
#at-cashlogi {
    position: relative;
    padding-top: 100px;
    z-index: 10;
}
#at-cashlogi::before {
    position: absolute;
    content: "";
    top: 24.58vw;
    left: -38.02vw;
    width: 52.08vw;
    height: 9.11vw;
    background: url(/common/images/deco-line2.svg) no-repeat left top;
    background-size: 100%;
    z-index: -1;
}
#at-cashlogi::after {
    position: absolute;
    content: "";
    top: 30.21vw;
    right: 6.25vw;
    width: 9.38vw;
    height: 9.38vw;
    background: url(/common/images/deco-cube.svg) no-repeat left top;
    background-size: 100%;
    transform: rotate(90deg);
    z-index: -1;
}
#at-cashlogi section::after {
    position: absolute;
    content: "";
    top: 41.67vw;
    left: -10.68vw;
    width: 107.29vw;
    height: 6.51vw;
    background: url(/common/images/deco-line.svg) no-repeat left top;
    background-size: 100%;
    z-index: -1;
}
#at-cashlogi h2 {
    display: flex;
    justify-content: center;
    margin-bottom: 40px;
}

#at-cashlogi h2 img {
    height: 37px;
}
#at-cashlogi h2 img:first-child {
    margin-right: 32px;
}

#at-cashlogi h2 + p {
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 50px;
}

#at-cashlogi section {
    padding-bottom: 120px;
    text-align: center;
}

#at-cashlogi section p {
    font-size: 1.8rem;
    text-align: center;
    line-height: 3.3rem;
    margin-bottom: 30px;
}

#at-cashlogi section .cashlogi__inner {
    padding-bottom: 10px;
    width: 63.54vw;
    margin: auto;
}
#at-cashlogi section .cashlogi__inner + p {
    margin-bottom: 100px;
}
#at-cashlogi .img-cashlogi {
    display: flex;
    width: 63.54vw;
    margin: 0 auto;
    gap: 0 40px;
    justify-content: space-around;
    align-items: flex-start;
}
#at-cashlogi .img-cashlogi img {
    width: 19.79vw;
}
#at-cashlogi .img-cashlogi_mng {
    margin-top: -76px;
}
#at-cashlogi .img-cashlogi_spt {
    margin-top: 86px;
}
/* max-width: 1550px 
   1550px 以下 ================== */
@media screen and (max-width:1550px) {
    #at-cashlogi::before {
        top: 36.58vw;
    }
    #at-cashlogi::after {
        top: 45vw;
    }
    #at-cashlogi section::after {
        top: 55.67vw;
    }
}
/* max-width: 1280px 
   1280px 以下 ================== */
@media screen and (max-width:1280px) {
    #at-cashlogi::before {
        top: 52vw;
    }
    #at-cashlogi::after {
        top: 63vw;
    }
    #at-cashlogi section::after {
        top: 75vw;
    }
    #at-cashlogi::before {
        left: -39.06vw;
        width: 52.66vw;
        height: 9.22vw;
    }
    #at-cashlogi::after {
        right: 6.25vw;
        width: 9.38vw;
        height: 9.38vw;
    }
    #at-cashlogi section::after {
        left: -10.68vw;
        width: 108.13vw;
        height: 6.56vw;
    }
}
/* max-width: 1024px 
   1024px 以下 ================== */
@media screen and (max-width:1024px) {
    #at-cashlogi {
        padding-top: 6.41vw;
        margin-top: 7.14vw;
    }
    #at-cashlogi h2 {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 5.33vw 0;
        margin-bottom: 5.87vw;
    }
    #at-cashlogi h2 img:first-child {
        margin-right: 0;
    }
    #at-cashlogi h2 + p {
        margin-bottom: 62px;
    }
    #at-cashlogi .pc-none{display: inherit;}
    #at-cashlogi::before {
        left: -39.36vw;
        width: 53.03vw;
        height: 9.28vw;
    }
    #at-cashlogi::after {
        right: 6.25vw;
        width: 9.47vw;
        height: 9.47vw;
    }
    #at-cashlogi section::after {
        left: -10.94vw;
        width: 107.81vw;
        height: 6.54vw;
    }
}
/* max-width: 889px 
   889px 以下 ================== */
@media screen and (max-width:889px) {
    #at-cashlogi {
        padding-top: 16.4vw;
        margin-top: 18.27vw;
        margin-bottom: 22.5vw; /* 889px: 200px */
    }
    #at-cashlogi h2 + p {
        margin-bottom: 5.33vw;
    }
    #at-cashlogi section {
        padding-bottom:  152.98vw; /* 889px: 1360px */
    }
    #at-cashlogi::before {
        top: inherit;
        bottom: 122.53vw;
        left: -100.34vw;
        width: 133.63vw;
        height: 23.62vw;
    }
    #at-cashlogi::after {
        content: inherit;
    }
    #at-cashlogi section::after {
        top: inherit;
        bottom: 86.61vw;
        width: 278.07vw;
        height: 16.87vw;
    }
    #at-cashlogi section .cashlogi__inner + p {
        margin-bottom: 10.67vw;
    }
    #at-cashlogi .img-cashlogi {
        position: absolute;
        left: 0;
        right: 0;
        height: 0;
        flex-wrap: wrap;
        width: 100vw;
    }
    #at-cashlogi .img-cashlogi img {
        width: 65.24vw;
    }
    #at-cashlogi .img-cashlogi .img-cashlogi_mng {
        margin: 0 auto 10.93vw 0;
    }
    #at-cashlogi .img-cashlogi .img-cashlogi_dgt {
        margin-left: auto;
        margin-right: 4vw;
        margin-bottom: 10.93vw;
    }
    #at-cashlogi .img-cashlogi .img-cashlogi_spt {
        margin: 0 auto;
    }
}
/* max-width: 519px 
   519px 以下 ================== */
@media screen and (max-width:519px) {
    #at-cashlogi section .cashlogi__inner {
        width: auto;
        margin: 0 5.33vw;
        padding: 0;
    }
    #at-cashlogi h2 img {
        height: 4.82vw; /* 519px:25px*/
    }
    #at-cashlogi h2 + p {
        font-size: 1.4rem;
    }
    #at-cashlogi section p {
        font-size: 1.4rem;
        line-height: 2.3rem;
    }
    #at-cashlogi section p:last-child {
        margin-bottom: 25px;
    }
}
/*  Service & Solution Style ---------------------- */
#at-solution {
    margin-bottom: 153px;
}
#at-solution h2 img {
    display: inline;
}
#at-solution h2 img:first-child {
    margin-right: 27px;
}
#at-solution h2 span {
    display: block;
}
#at-solution section > div {
    position: relative;
    width: 1220px;
    margin: 0 auto;
    background-color: #fff;
}
#at-solution section > div::before {
    position: absolute;
    content: "";
    display: block;
    top: 0;
    left: 0;
    width: 10px;
    padding: 30px;
}
#at-solution section h3 {
    font-size: 2.4rem;
    line-height: 4rem;
    letter-spacing: 0.2rem;
    margin-bottom: 18px;
}
#at-solution section p {
    font-size: 1.8rem;
    line-height: 3.3rem;
    margin-bottom: 30px;
}
#at-solution section .img-solution {
    position: absolute;
}
#at-solution section .img-solution img {
    width: 540px;
    height: 440px;
}
/* max-width: 1279px 
   1279px 以下 ================== */
@media screen and (max-width:1279px) {
    #at-solution {
        padding: 0 3vw;
    }
    #at-solution section > div {
        width: auto;
    }
}
/* max-width: 1024px 
   1024px 以下 ================== */
@media screen and (max-width:1024px) {
    #at-solution h2 { gap: 0 4.93vw; }
    #at-solution h2 img:first-child {margin-right: 100vw;}
}
/* max-width: 889px 
   889px 以下 ================== */
@media screen and (max-width:889px) {
    #at-solution {padding: 0; margin-bottom: 28.12vw; }
    #at-solution .container,
    #at-solution section { padding: 0 4vw;}
    #at-solution h2 img {display: block;}
    #at-solution h2 img:first-child {margin-bottom: 5.33vw;}
    #at-solution section .img-solution {
        position: static;
        margin-top: -8.8vw;
    }
    #at-solution section .img-solution img { width: 72vw;}
    #at-solution section .btn_cnt { text-align: center;}
}
/* max-width: 519px 
   519px 以下 ================== */
   @media screen and (max-width:519px) {
    #at-solution h2 img:first-child {margin-bottom: 3.47vw;}
    #at-solution section h3 { font-size: 1.7rem;line-height: 2.7rem;}
    #at-solution section p { font-size: 1.4rem; line-height: 2.3rem; } 
    #at-solution section .img-solution { margin-top: -11vw; }
}
/* max-width: 425px
   425px 以下 ================== */
@media screen and (max-width:425px) {
    #at-solution section > div::before { padding: 24px; }
    #at-solution section .img-solution { margin-top: -15vw; }
}

/* solution financial ///////// */
#solution_fnc {
    background: linear-gradient( to right, #fff 50% , rgba(0, 0, 0, 0) 50%);
    margin-bottom: 50px;
}
#solution_fnc .solution_fnc__inner {
    padding: 70px 730px 80px 100px;
}
#solution_fnc .solution_fnc__inner::before {
    height: 255px;
    background: url(/images/deco-financial.svg) no-repeat bottom center / 10px 225px;
    border-left: #000 1px solid;
}

#solution_fnc .img-solution {
    top: -40px;
    right: 80px ;
}
/* solution general ///////// */
#solution_gnl {
    background: linear-gradient( to right, rgba(0, 0, 0, 0) 50% , #fff 50%);
    position: relative;
}
#solution_gnl .deco-line.fdLT {
    position: absolute;
    top: 8.44vw;/* 162px */
    left: -57.29vw;/* -1100px */
    width: 107.29vw;/* 2060px */
    height: 6.51vw;/* 125px */
    background: url(/common/images/deco-line.svg) no-repeat left top;
    background-size: 100%;
    z-index: -1;
}
#solution_gnl .deco-line2 {
    position: absolute;
    content: "";
    top: 17.71vw;/* 340px */
    left: -57.29vw;/* -1100px */
    width: 107.29vw;/* 2060px */
    height: 6.51vw;/* 125px */
    background: url(/common/images/deco-line.svg) no-repeat left top;
    background-size: 100%;
    transform: scale(-1 , 1);
    z-index: -1;
}
#solution_gnl .solution_gnl__inner {
    padding: 70px 420px 80px 100px;
}
#solution_gnl .solution_gnl__inner::before {
    height: 274px;
    background: url(/images/deco-general.svg) no-repeat center center / 10px 214px;
}
#solution_gnl ul {
    display: flex;
    width: 700px;
    margin-bottom: 40px;
    list-style: none;
    gap: 20px;
    flex-wrap: wrap;
}
#solution_gnl ul li {
    position: relative;
    height: 80px;
    flex-basis: 220px;
}
#solution_gnl ul li a {
    position: relative;
    display: flex;
    height: 100%;
    padding: 0 25px 0 20px;
    border: var(--main-color) solid 1px;
    border-radius: 5px;
    background-color: #fff;
    justify-content: space-around;
    align-items: center;
    color: var(--main-color);
    font-weight: bold;
    font-feature-settings: "palt";
    text-align: center;
    line-height: 1.5rem;
    letter-spacing: 0.2rem;
    z-index: 1;
}
/* マウスオーバー =========================　*/

#solution_gnl ul li a:hover {
    opacity: 1;
    background-color: #dddae4;
    text-decoration: none;
}
#solution_gnl ul li a img.on {
    display: none;
}
/* ============================================== */
#solution_gnl ul li a::before {
    content: "";
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center;
    width: 25px;
    height: 25px;
}
#solution_gnl ul li a::after {
    content: "";
    position: absolute;
    right: 17px;
    margin: auto;
    vertical-align: middle;
    width: 9px;
    height: 9px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
#solution_gnl ul li::after {
    content: '';
    display: block;
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 5px;

    background-color: rgb(0, 0, 0);
    filter: blur(10px);
    transform: translateY(10px) scale(1);
    mix-blend-mode: multiply;
    opacity: 10%;
}

#solution_gnl ul li a span {
    flex: 1 1 auto;
}
/* gnl-proceeds 売上金管理 */
#solution_gnl ul li.gnl-proceeds {
    flex-basis: 100%;
    height: 100px;
}
#solution_gnl ul li.gnl-proceeds a {
    font-size: 2rem;
}
#solution_gnl ul li.gnl-proceeds a::before {
    width: 46px!important;
    height: 46px!important;
}
/* gnl-csd オンライン入出金機 */
#solution_gnl ul li.gnl-csd {
    flex-basis: 340px;
    height: 100px;
}
#solution_gnl ul li.gnl-csd a::before {
    width: 40px!important;
    height: 41px!important;
}
/* gnl-bag バッグ集配金 */
#solution_gnl ul li.gnl-bag {
    flex-basis: 340px;
    height: 100px;
}
#solution_gnl ul li.gnl-bag a::before {
    width: 40px!important;
    height: 40px!important;
}
/* gnl-change 両替金配達 /
   gnl-eos 集金配金オーダー */
#solution_gnl ul li.gnl-change a::before,
#solution_gnl ul li.gnl-eos a::before {
    width: 30px!important;
    height: 37px!important;
}
/* gnl-event イベント等売上金回収 */
#solution_gnl ul li.gnl-event a::before {
    width: 36px!important;
    height: 37px!important;
}
/* gnl-voucher 金券類管理 */
#solution_gnl ul li.gnl-voucher a::before {
    width: 40px!important;
    height: 26px!important;
}
/* gnl-valuables 貴重品輸送 */
#solution_gnl ul li.gnl-valuables a::before {
    width: 40px!important;
    height: 34px!important;
}
/* gnl-valuables 試験問題輸送 */
#solution_gnl ul li.gnl-exam a::before {
    width: 33px!important;
    height: 36px!important;
}

#solution_gnl .img-solution  {
    top: 236px;
    right: -350px;
}
#at-solution #solution_gnl .img-solution img {
    width: 710px;
    height: 550px;
}

/* max-width: 1279px 
   1279px 以下 ================== */
@media screen and (max-width:1279px) {
    #solution_fnc  {
        margin-left: -3vw;
    }
    #solution_fnc .solution_fnc__inner {
        padding-left: 9vw;
    }
    #solution_fnc .solution_fnc__inner::before {
        left: 3vw;
    }
    #at-solution section#solution_fnc .img-solution img {
        width: 100%;
        height: initial;
    }
    #solution_fnc .solution_fnc__inner {
        padding-right: 53vw;
        padding-bottom: 2.5vw;
    }
    #solution_fnc .img-solution {
        top: -2.5vw;
        right: 4.25vw;
        width: 45vw;
    }
    #solution_gnl {
        margin-right: -3vw;
    }
    #solution_gnl .solution_gnl__inner {
        padding-bottom: 2.5vw;
    }

    #solution_gnl .deco-line.fdLT {
        top: 8.44vw;/* 162px */
        left: -58.13vw;/* -744px */
        width: 108.13vw;/* 1384px */
        height: 6.56vw;/* 84px */
    }
    #solution_gnl .deco-line2 {
        top: 17.71vw;/* 340px */
        left: -58.13vw;/* -744px */
        width: 108.13vw;/* 1384px */
        height: 6.56vw;/* 84px */
    }
}
/* max-width: 889px 
   889px 以下 ================== */
@media screen and (max-width:889px) {
    #solution_fnc {
        margin-bottom: 10.67vw;
        z-index: 1;
    }
    #solution_fnc .solution_fnc__inner {
        width: 100%;
        padding: 9.33vw 11.33vw 10.67vw 13.33vw;
    }
    #solution_fnc .solution_fnc__inner::before {
        padding: 4vw;
        background-size: auto;
    }
    #solution_fnc .img-solution {
        width: 100%;
    }
    #solution_gnl .deco-line.fdLT {
        top: -10.24vw;/* -91px */
        left: -212.47vw;/* -1908px */
        width: 278.07vw;/* 2472px */
        height: 16.87vw;/* 150px */
    }
    #solution_gnl .deco-line2 {
        top: 14.62vw;/* 130px */
        left: -212.47vw;/* -1908px */
        width: 278.07vw;/* 2472px */
        height: 16.87vw;/* 150px */
    }
    #solution_gnl .solution_gnl__inner {
        position: relative;
        width: 86.67vw;
        padding: 9.33vw 2.67vw 10.67vw 10.67vw;
        z-index: 1;
    }
    #at-solution section#solution_gnl .btn_cnt {
        z-index: 3;
    }
    #at-solution section#solution_gnl .img-solution {
        top: inherit;
        right: 0;
        margin-left: 0;
        z-index: -1;
    }
    #at-solution section#solution_gnl .img-solution img {
        width: 84vw;
        height: 66.27vw;
    }
    #solution_gnl p { padding-right: 0; }
    #solution_gnl ul { width:  100%; gap: 10px 4%;}
    #solution_gnl ul li {
        flex-basis: 47.5%;
    }
    #solution_gnl ul li a::before {
        right: 3.33vw;
    }
    #solution_gnl ul li.gnl-proceeds a::before {
        width: 6.4vw!important;
        height: 6.4vw!important;
    }
    /* gnl-proceeds 売上金管理 */
    #solution_gnl ul li.gnl-proceeds {
        flex-basis: 100%;
    }
    /* gnl-csd オンライン入出金機 */
    #solution_gnl ul li.gnl-csd {
        flex-basis: 76vw;
    }
    #solution_gnl ul li.gnl-csd a::before {
        width: 6.67vw!important;
        height: 6.67vw!important;
    }
    /* gnl-bag バッグ集配金 */
    #solution_gnl ul li.gnl-bag {
        flex-basis: 76vw;
    }
    #solution_gnl ul li.gnl-bag a::before {
        width: 6.67vw!important;
        height: 6.67vw!important;
    }
    /* gnl-change 両替金配達 /
       gnl-eos 集金配金オーダー */
    #solution_gnl ul li.gnl-change a::before,
    #solution_gnl ul li.gnl-eos a::before {
        width: 4.4vw!important;
        height: 5.33vw!important;
    }
    /* gnl-event イベント等売上金回収 */
    #solution_gnl ul li.gnl-event a::before {
        width: 4.8vw!important;
        height: 4.93vw!important;
    }
    /* gnl-voucher 金券類管理 */
    #solution_gnl ul li.gnl-voucher a::before {
        width: 5.07vw!important;
        height: 3.2vw!important;
    }
    /* gnl-valuables 貴重品輸送 */
    #solution_gnl ul li.gnl-valuables a::before {
        width: 5.33vw!important;
        height: 4.53vw!important;
    }
    /* gnl-valuables 試験問題輸送 */
    #solution_gnl ul li.gnl-exam a::before {
        width: 4.4vw!important;
        height: 4.8vw!important;
    }
}

/* max-width: 519px 
   519px 以下 ================== */
@media screen and (max-width:519px) {
    #solution_fnc .solution_fnc__inner::before {
        width: 10px;
        height:130px;
        background-size: 5px 124px;
        background-position: 15px 10px;
    }
    #solution_gnl .solution_gnl__inner::before {
        width: 10px;
        height:120px;
        background-size: 5px 106px;
        background-position: 15px 10px;
    }
    #solution_gnl ul li.gnl-csd,
    #solution_gnl ul li.gnl-bag,
    #solution_gnl ul li {
        height: 12.52vw;
    }
    /* gnl-proceeds 売上金管理 */
    #solution_gnl ul li.gnl-proceeds {
        height: 15.41vw;
    }
    #solution_gnl ul li a {
        padding: 0 3.33vw 0 2.4vw;
    }
    #at-solution #solution_gnl ul li a {
        font-size: 1.3rem;
        line-height: 1.7rem;
        letter-spacing: 0.16rem;
    }
    #at-solution #solution_gnl ul li.gnl-proceeds a {
        font-size: 1.5rem;
        line-height: 2.3rem;
    }
    #solution_gnl ul li a::after {
        right: 2.31vw;
        width: 1.16vw;
        height: 1.16vw;
    }
}
/* max-width: 425px
   425px 以下 ================== */
@media screen and (max-width:425px) {
    #solution_gnl .solution_gnl__inner {
        padding: 32px 0 44px 46px;
    }
}
/* max-width: 390px
   390px 以下 ================== */
@media screen and (max-width:390px) {
    #solution_gnl .solution_gnl__inner {
        width: 91.03vw;/* 355px */
    }
    #solution_gnl ul li.gnl-csd,
    #solution_gnl ul li.gnl-bag {
        flex-basis: 100%;
    }
    #solution_gnl ul li.gnl-csd,
    #solution_gnl ul li.gnl-bag,
    #solution_gnl ul li {
        height: 16.67vw;/* 65px*/
    }
    /* gnl-proceeds 売上金管理 */
    #solution_gnl ul li.gnl-proceeds {
        height: 20.51vw;/* 80px*/
    }
    #solution_gnl ul li a {
        padding: 0 5.64vw 0 2.56vw;
    }
    #solution_gnl ul li.gnl-proceeds a,
    #solution_gnl ul li.gnl-csd a,
    #solution_gnl ul li.gnl-bag a {
        padding-left: 5.13vw;
    }
    #solution_gnl ul li a::after {
        right: 10px;
        width: 6px;
        height: 6px;
    }
    #solution_gnl ul li a::before {
        right: 3.33vw;
    }
}

/*  CASE LIST Style ---------------------- */
#at-casestudy {
    padding-top: 48px;
    position: relative;
}
#at-casestudy .deco-line.fdRT.scfdRT {
    position: absolute;
    content: "";
    top: 0;
    right: -31.25vw;/* -600px */
    width: 52.08vw;/* 1000px */
    height: 9.11vw;/* 175px */
    background: url(/common/images/deco-line2.svg) no-repeat left top;
    background-size: 100%;
    transform: scale(-1, 1);
    z-index: -1;
}
/* solution general ///////// */
#at-casestudy {
    margin-bottom: 200px;
}
#casestudy {
    width: 1220px;
    margin: 0 auto;
}
#at-casestudy .swiper {
    overflow: visible;
}
#at-casestudy .card ul {
    display: flex;
    gap: 0 40px;
    z-index: 2;
    width: 100%;
    height: 100%;
}
#at-casestudy .card li {
    list-style: none;
    height: auto;
    width: 380px;
    flex-shrink: 0;
}
#at-casestudy .card li a:hover {
    opacity: 70%;
}
#at-casestudy .card .card-img {
    overflow: hidden;
    box-shadow: 0 10px 20px rgba(0,0,0,0.06) ;
}
#at-casestudy .card img {
    width: 380px;
    height: 380px;
    transition: all 0.5s;
}
#at-casestudy .card a:hover img {
    transform: scale(1.1);
}
#at-casestudy .card li h2 {
    padding: 29px 0 26px;
    margin: 0;
    font-size: 1.4rem;
}
#at-casestudy .card li h2::after {
    width: 20px;
    height: 1px;
    content: "";
    display: block;
    margin-top: 24px;
    background-color: #000;
}
#at-casestudy .card li p {
    line-height: 2.8rem;
    letter-spacing: 0.1rem;
}
#at-casestudy .card nav {
    display: flex;
    height: 100px;
    justify-content: center;
    align-items: center;
    margin-top: 30px;
}
.casestudy_controller {
    display: flex;
    position: absolute;
    gap: 10px;
    right: 0;
    align-items: center;
    justify-content: flex-end;
    margin-left: auto;
}
.casestudy_prev, .casestudy_next {
    display: flex;
    width: 60px;
    height: 60px;
    cursor: pointer;
    position: relative;
    flex-shrink: 0;
    margin: 0;
    border-radius: 50%;
    border: 1px solid #000;
    justify-content: center;
    align-items: center;
}
.casestudy_prev:hover, .casestudy_next:hover {
    opacity: 70%;
}

.casestudy_prev::before, 
.casestudy_next::before {
  position: absolute;
  content: '';
  width: 17px;
  height: 17px;
  background: url(/common/images/ico-back.svg) no-repeat center center / 100%;
}
.casestudy_next::before {
  background: url(/common/images/ico-arrow.svg) no-repeat center center / 100%;
}

/* max-width: 1279px 
   1279px 以下 ================== */
@media screen and (max-width:1279px) {
    #at-casestudy {
        padding: 0 3.3vw;
    }
    #at-casestudy .deco-line.fdRT.scfdRT {
        top: -2.66vw;/* 34px */
        right: -31.8vw;/* -407px */
        width: 52.66vw;/* 674px */
        height: 9.22vw;/* 118px */
    }
    #casestudy {
        width: 100%;
        margin: 0;
    }
    #at-casestudy .card li:last-child {width: 380px;}
}
/* max-width: 889px 
   889px 以下 ================== */
@media screen and (max-width:889px) {
    #at-casestudy {
        margin-bottom: 28.12vw;
    }
    #at-casestudy .deco-line.fdRT.scfdRT {
        right: -108vw;
        width: 133.33vw;
        height: 23.33vw;
    }
    #at-casestudy h2 {
        margin-bottom: 13.07vw;
    }
    #at-casestudy .card img {
        width: 100%;
        height: 100%;
    }
    #at-casestudy .swiper-wrapper::after {
        content: "";
        display: block;/*    width: 53.33vw;*/
    }
    #at-casestudy .card nav {
        width: 100%;
        gap: 8vw 0;
        flex-wrap: wrap-reverse;
        justify-content: center;
        height: inherit;
    }
    .casestudy_controller {
        position: inherit;
        flex-basis: 100%;
        justify-content: center;
        margin: 0;
        gap: 0 5.33vw;
    }
}
/* max-width: 519px 
   519px 以下 ================== */
@media screen and (max-width: 519px) {
    #at-casestudy .card ul {
        gap: 0 20px;
    }
    #at-casestudy .card li {
        width: 200px;
    }
    #at-casestudy .card li h2 {
        font-size: 1.2rem;
        padding: 3.85vw 0 3.85vw;/* 519px: 20px 0 20px */
    }
    #at-casestudy .card li h2::after {
        width: 15px;
        margin-top: 2.89vw;/* 519px: 15px */
    }
    #at-casestudy .card li p {
        line-height: 2.4rem;
    }
    #at-casestudy .card nav {
        gap: 5.78vw;/* 519px: 30px */
        margin-top: 3.47vw;/* 519px: 18px */
    }
    #at-casestudy .casestudy_controller {
      gap: 0 3.85vw;
    }
    #at-casestudy .casestudy_prev, 
    #at-casestudy .casestudy_next {
        width: 45px;
        height: 45px;
    }
    #at-casestudy .casestudy_prev::before, 
    #at-casestudy .casestudy_next::before {
        width: 12px;
    }
}
/*  NEWS Style ---------------------- */
#at-news {
    position: relative;
    min-height: 38.29vw;
}
#at-news .news__inner {
    display: flex;
    width: 1220px;
    margin: 0 auto 200px;
    justify-content: center;
}
#at-news::before {
    position: absolute;
    content: "";
    top: 13.91vw;/* 267px */
    left: 9.9vw;/* 190px */
    width: 9.38vw;/* 180px */
    height: 9.38vw;/* 180px */
    background: url(/common/images/deco-cube.svg) no-repeat left top;
    background-size: 100%;
    transform: rotate(90deg);
    z-index: -1;
}
#at-news .deco-line {
    position: absolute;
    top: 25.42vw;/* 488px */
    left: -84.38vw;/* -1620px */
    width: 107.29vw;/* 2060px */
    height: 6.51vw;/* 125px */
    background: url(/common/images/deco-line.svg) no-repeat left top;
    background-size: 100%;
    z-index: -1;
}
#at-news .container {
    flex-basis: 390px;
}
#at-news section {
    flex-basis: 830px;
}
#at-news section ul {
    list-style: none;
}
#at-news section li a {
    display: flex;
}
#at-news section ul {
    margin-bottom: 40px;
    list-style: none;
}
#at-news section li {
    border-top: #000 1px solid;
}
#at-news section li:last-child {
    border-bottom: #000 1px solid;
}
#at-news section li a {
    position: relative;
    display: flex;
    padding: 32px 40px 30px 10px;
    flex-wrap: wrap;
    gap: 13px 14px;
    align-items: center;
}
#at-news section li time {
    font-size: 1.4rem;
    font-family: var(--font-family-ttl);
    font-weight: bold;
}
#at-news section li .news-tag {
    display: inline-block;
    border-radius: 20px;
    padding: 5px 10px;
    min-width: 110px;
    font-size: 1.2rem;
    background-color: #fff;
}
#at-news section li .news-txt {
    font-size: 1.8rem;
    line-height: 3.3rem;
    flex-basis: 100%;
}

#at-news section li a:hover  {
    text-decoration: none;
}
#at-news section li a:hover .news-txt {
    text-decoration: underline;
}
#at-news section li a::after {
    position: absolute;
    right: 0;
    content: '';
    width: 17px;
    height: 17px;
    background: url(/common/images/ico-arrow.svg) no-repeat center center / 100%;
}

#at-news section ul + p {
    text-align: center;
}
/* max-width: 1279px 
   1279px 以下 ================== */
@media screen and (max-width:1279px) {
    #at-news {
        padding: 0 3vw;
    }
    #at-news .news__inner {
        width: inherit;
        justify-content: space-between;
    }
    #at-news::before {
        top: inherit;
        bottom: 16.88vw;/* 216px */
        left: 9.9vw;/* 190px */
        width: 9.38vw;/* 120px */
        height: 9.38vw;/* 120px */
    }
    #at-news .deco-line {
        top: inherit;
        bottom: 6.64vw;/* 85px */
        left: -85.16vw;/* -1090px */
        width: 108.13vw;/* 1384px */
        height: 6.56vw;/* 84px */
    }
}
/* max-width: 1023px 
   1023px 以下 ================== */
@media screen and (max-width:1023px) {
    #at-news::before {
        bottom: 20.7vw;
        left: 9.9vw;/* 190px */
        width: 9.47vw;/* 97px */
        height: 9.47vw;/* 97px */
    }
    #at-news .deco-line {
        bottom: 9.96vw;/* 100px */
        left: -84.86vw;/* -869px */
        width: 107.81vw;/* 1104px */
        height: 6.54vw;/* 67px */
    }
}
/* max-width: 889px 
   889px 以下 ================== */
@media screen and (max-width:889px) {
    #at-news {
        padding-bottom: 53.33vw;
        margin-bottom: 8vw;
    }
    #at-news .news__inner {
        display: inherit;
        margin-bottom: 0;
    }
    #at-news::before {
        bottom: 20.7vw;
        left: 32.62vw;/* 290px */
        width: 24vw;/* 180px */
        height: 24vw;/* 180px */
    }
    #at-news .deco-line {
        bottom: 0;
        left: -219.24vw;/* -1949px */
        width: 278.07vw;/* 2472px */
        height: 16.87vw;/* 150px */
    }
}
/* max-width: 519px 
   519px 以下 ================== */
@media screen and (max-width:519px) {
    #at-news section li a {
        padding: 3.66vw 3.66vw 4.62vw 1.35vw;/* 519px:19px 15px 24px 7px */
    }
    #at-news section li time {
        font-size: 1.2rem;
        line-height: 2.4rem;
    }
    #at-news section li .news-tag {
        font-size: 1rem;
        line-height: 2.4rem;
        padding: 0 7.5px;
        min-width: initial;
    }
    #at-news section li .news-txt {
        font-size: 1.4rem;
        line-height: 2.1rem;
    }
    #at-news section li a::after {
        width: 12px;
        height: 12px;
    }
}

/*  CONTACT US Style ---------------------- */
#at-contact {
    display: flex;
    width: 100%;
    height: 800px;
    background: no-repeat url(/images/img-contactus.jpg) center bottom / auto 100%;
    color: #fff;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
#at-contact .container {
    justify-content: center;
}
#at-contact  h2 {
    text-align: center;
    margin-bottom: 60px;
}
#at-contact  h2 img {
    display: inline-block;
    margin-right: 35px;
    height: 44px;
}
#at-contact  h2 span {
    display: block;
    margin: auto;
    font-size: 1.8rem;
}
#at-contact .container + p {
    margin-bottom: 56px;
    text-align: center;
    line-height: 2.8rem;
}
#at-contact .btn {
    display: flex;
    background-color: transparent;
    color: #000;
    width: 100%;
    height: 100%;
    min-width: auto;
    justify-content: center;
    align-items: center;
}
#at-contact .btn::before {
    border-color: #000;
}
#at-contact .btn:hover::before {
    border-color: #fff;
}
#at-contact .btn_cnt {
    position: relative;
    overflow: hidden;
    width: 350px;
    height: 80px;
    transition: ease .2s;
    z-index: 3;
}
#at-contact .btn_cnt::before,
#at-contact .btn_cnt::after { 
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
#at-contact .btn_cnt::before {
    background: #fff;
    transition: ease .2s;
    border-radius: 5px;
}
#at-contact .btn_cnt::after {
    border-radius: 5px;
    background-color: var(--main-color); 
    transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 1);
    transform-origin: right top;
}
#at-contact .btn_cnt a:hover {
    color: #fff;
    z-index: 3;
}
#at-contact .btn_cnt:hover::after {
	transform-origin:left top;
	transform:scale(1, 1);
}
/* min-width: 1920px 
   1920px 以下 ================== */
@media screen and (min-width:1920px) {
    #at-contact {
        background-size: 100% auto;
    }
}
/* max-width: 1199px 
   1199px 以下 ================== */
@media screen and (max-width:1199px) {
    #at-contact .container {
        width: 100%;
    }
}
/* max-width: 768px 
   768px 以下 ================== */
@media screen and (max-width:768px) {
    #at-contact {
        height: auto;
        min-height: 100vw;
        padding-bottom: 146.5px;
    }
    #at-contact .container {
        margin-top: 126px;
    }
    #at-contact h2 img {
        height: 3.65vw;
    }
}
/* max-width: 519px 
    519px 以下 ================== */
@media screen and (max-width:519px) {
    #at-contact {
        padding-bottom: 28.23vw;
    }
    #at-contact .container {
        margin-top: 24.47vw; /* 519px:127px */
    }
    #at-contact h2 {
        display: flex;
        flex-direction: column;
        align-items: center;
        font-size: 1.4rem;
        line-height: 1.6rem;
        margin-bottom: 7.71vw;/*519px:40px */
    }
    #at-contact h2 img {
        display: inherit;
        height: 28px;
        margin: 0;
        margin-bottom: 3.37vw;/*519px:17.5px */
    }
    #at-contact h2 img + img {
        margin-bottom: 4.82vw;/*519px:25px */
    }
    #at-contact h2 span {
        display: inherit;
    }
    #at-contact .container + p {
        font-size: 1.3rem;
        line-height: 2.4rem;
        margin-bottom: 7.71vw;/*519px:40px */
    }
    #at-contact .btn_cnt {
        width: 38.54vw;/*519px:200px */
        height: 9.63vw; /*519px:50px */
    }
    #at-contact .btn {
        font-size: 1.3rem;
        line-height: 1.4rem;
    }
    #at-contact .btn_cnt::before, 
    #at-contact .btn_cnt::after {
        width: 38.54vw;/*519px:200px */
        height: 9.63vw; /*519px:50px */
    }
    #at-contact .btn::before {
        border-top: 0.53vw solid var(--main-color);
        border-right: 0.53vw solid var(--main-color);
        width: 1.16vw;
        height: 1.16vw;
        right: 2.41vw;
    }
}
/* max-width: 390px 
    390px 以下 ================== */
@media screen and (max-width:390px) {
    #at-contact .btn_cnt {
        width: 51.28vw;/*390px:200px */
        height: 12.82vw; /*390px:50px */
    }
    #at-contact .btn_cnt::before, 
    #at-contact .btn_cnt::after {
        width: 51.28vw;/*390px:200px */
        height: 12.82vw; /*390px:50px */
    }
}