@charset "utf-8";

/* Home
--------------------------------------------------------- */
.span-ttl {
    display: inline-block;
    padding-bottom: 18px;
    color: #0c7e2b;
    text-transform: uppercase;
    word-spacing: 6px;
}

.mv-text p {
    line-height: 1.9;
    padding: 30px 139px 27px;
    color: #606060;
}

.sec-mainvisual {
    position: relative;
    padding: 140px 0 8px;
    background: url("../img/home/img_home_mv_bg.png") no-repeat top/cover;
    border-bottom: 1px solid #2dbb54;
}

.sec-mainvisual .span-ttl {
    margin-top: 137px;
}

.sec-mainvisual .sec-ttl,
.sec-home-pos-system .sec-ttl {
    font-family: "Poppins", sans-serif;
}

.sec-mainvisual .sec-ttl::after,
.sec-home-pos-system .sec-ttl::after {
    width: 104px;
    margin: 5px auto 0;
}

.sec-home-pos-system .sec-ttl::after {
    margin: 6px auto 0;
}

.sec-mainvisual .title-desc {
    position: absolute;
    top: 8%;
    right: 0;
    left: 0;
    margin: 0 auto;
}

.sec-mainvisual .mv-text img {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    max-width: 130px;
}

.sec-mainvisual .mv-text {
    position: relative;
    text-align: center;
    max-width: 1025px;
}

.sec-mainvisual .cmn-btn {
    margin-bottom: 25px;
}

.sec-mainvisual .slick-dots {
    margin-top: -22px;
}

.sec-mainvisual .slider-thumb .slick-slide {
    width: 23.6% !important;
    margin-top: 30px;
    margin-right: 1.6%;
}

.sec-mainvisual .slider-thumb .slick-slide:last-child {
    margin-right: 0;
}

.sec-mainvisual .slider-thumb .slick-slide a,
.sec-home-pos-system .slider-nav a {
    display: block;
    position: relative;
    padding: 18px 0;
    color: #2dbb54;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 500;
    text-align: center;
    transition: all 0.5s linear;
    opacity: 0.5;
}

.slider-thumb .slick-slide.slick-current a,
.slider-thumb .slick-slide a:hover {
    padding: 8px 0 20px;
    font-weight: 700;
    opacity: 1;
}

.slider-thumb .slick-slide a::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    content: "";
    transition: top 0.5s linear;
    border-top: 2px solid #2dbb54;
}

.slider-thumb .slick-slide.slick-current a::before,
.slider-thumb .slick-slide a:hover::before,
.sec-home-pos-system .slider-nav .slick-slide.slick-current a::before,
.sec-home-pos-system .slider-nav .slick-slide a:hover::before {
    top: -10px;
}

.slider-thumb .slick-slide a::after,
.sec-home-pos-system .slider-nav .slick-slide a:after {
    position: absolute;
    right: 0;
    bottom: -20px;
    left: 0;
    width: 20px;
    height: 8px;
    margin: 0 auto;
    background: url(../img/home/ico_slider_up_arrow.png) no-repeat;
    background-size: cover;
    content: "";
    transition: bottom 0.5s linear;
}

.slider-thumb .slick-slide.slick-current a::after,
.slider-thumb .slick-slide a:hover::after,
.slider-nav .slick-slide.slick-current a::after,
.slider-nav .slick-slide a:hover::after {
    bottom: 0;
}

.sec-mainvisual .slider .slick-prev {
    top: 50%;
    left: calc((100% - 1060px) / 2);
    background: url(../img/home/img_mvslider_left_arrow.png) no-repeat center /
        contain;
}

.sec-mainvisual .slider .slick-next {
    top: 50%;
    right: calc((100% - 1060px) / 2);
    background: url(../img/home/img_mvslider_right_arrow.png) no-repeat
        center/contain;
}

.sec-mainvisual .web-slider {
    background: url(../img/home/img_mvslider_webtxt.png) no-repeat top
        center/58%;
}

.sec-mainvisual .design-slider {
    background: url(../img/home/img_mvslider_designtxt.png) no-repeat top
        center/58%;
}

.sec-mainvisual .mobile-slider {
    background: url(../img/home/img_mvslider_mobiletxt.png) no-repeat top
        center/58%;
}

.sec-mainvisual .network-slider {
    background: url(../img/home/img_mvslider_networktxt.png) no-repeat top
        center/58%;
}

/* pos system
----------------------------------------------------------*/
.sec-home-pos-system {
    padding: 79px 0 16px;
}

.sec-home-pos-system .pos-img {
    width: 31%;
}

.sec-home-pos-system .pos-img img {
    box-shadow: rgba(45, 187, 84, 0.15) 2px 6px 30px;
    -webkit-box-shadow: rgba(45, 187, 84, 0.15) 2px 6px 30px;
    border-radius: 26px;
}

.sec-home-pos-system .pos-txt {
    width: 64%;
    margin: 40px 0 49px 3.5%;
}

.sec-home-pos-system .pos-txt .pos-content-ttl {
    position: relative;
}

.sec-home-pos-system .sec-ttl {
    display: inline-block;
    position: relative;
    z-index: 2;
    padding-top: 13.5px;
}

.sec-home-pos-system .pos-content {
    padding: 20px 5px 0 20px;
    max-width: 1060px;
    display: flex;
}

.sec-home-pos-system .pos-sub-ttl {
    position: absolute;
    top: -70px;
    left: -20px;
    max-width: 136px;
}

.sec-home-pos-system .pos-sub-myattl {
    position: absolute;
    top: -21%;
    right: 0;
    left: 0;
    margin: 0 auto;
    color: #0c7e2b;
    font-size: 16px;
    text-align: left;
}

.sec-ttl-ipad-sp {
    display: none;
}

.sec-ttl-pc {
    display: block;
}

.sec-home-pos-system .pos-desc {
    line-height: 1.9;
    margin-top: 29px;
    color: #606060;
}

.sec-home-pos-system .pos-desc-list {
    margin-top: 27px;
    display: grid;
    grid-template-columns: repeat( 2, 1fr);
    gap: 10px;
}

.sec-home-pos-system .pos-desc-list li {
    width: 100%;
    margin-bottom: 20px;
    color: #333333;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

@supports (-webkit-hyphens: none) {
    .sec-home-pos-system .pos-desc-list li {
        font-size: 13px;
    }
}

.sec-home-pos-system .pos-desc-list li span,
.sec-home-pos-system .pos-desc-list p {
    display: inline-block;
    vertical-align: middle;
}

.sec-home-pos-system .pos-desc-list p {
  min-width: fit-content;
}

.sec-home-pos-system .pos-desc-list li span {
    line-height: 1.5;
    padding-left: 10px;
}

.sec-home-pos-system .cmn-btn {
    width: 331px;
    margin: 9px 0 11px;
    padding: 12px 30px;
}

.sec-home-pos-system .cmn-btn::after,
.sec-home-pos-system .cmn-btn:hover::after {
    right: 22px;
}

.sec-home-pos-system .slider-nav {
    width: 100%;
    margin: 0 auto;
}

.sec-home-pos-system .slider-nav li {
    width: 249.8px;
    margin-top: 30px;
    margin-right: 20.8px;
    transition: all 0.3s;
}

.sec-home-pos-system .slider-nav a {
    padding: 18px 5px;
}

.sec-home-pos-system .slider-nav .slick-slide.slick-current a,
.sec-home-pos-system .slider-nav .slick-slide a:hover {
    padding: 8px 5px 20px;
    font-weight: 700;
    opacity: 1;
}

.sec-home-pos-system .slider-nav .slick-slide a::before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    width: 95%;
    height: 2px;
    margin: 0 auto;
    background-color: #2dbb54;
    content: "";
    transition: top 0.5s linear;
}

.sec-home-pos-system .slick-prev,
.sec-home-pos-system .slick-next {
    top: 70%;
    width: 7px;
}

.sec-home-pos-system .slick-prev {
    left: calc((100% - 1060px) / 2);
    background: url("../img/home/img_pos_left_slider.png") no-repeat
        center/contain;
}

.sec-home-pos-system .slick-next {
    right: calc((100% - 1060px) / 2);
    background: url("../img/home/img_pos_right_slider.png") no-repeat
        center/contain;
}

/* application 
----------------------------------------------------------*/
.sec-home-application {
    padding: 59px 0 96px;
    background-image: url(../img/home/img_application_bg.png),
        linear-gradient(-45deg, #46b565 30%, #b1eec1 100%);
    background-size: 100%, cover;
    background-position: center bottom -42px, center top;
    background-repeat: no-repeat;
}

.sec-home-application .app-ttl {
    position: relative;
}

.sec-home-application .app-img {
    width: 40.3%;
    margin-right: 5.7%;
    margin-left: 3.8%;
}

.sec-home-application .app-detail {
    width: 47%;
    margin-top: 111px;
}

.sec-home-application .app-content {
    width: 95%;
    max-width: 1025px;
    display: flex;
}

.sec-home-application .sec-ttl {
    width: 112px;
    color: #ffffff;
    text-align: center;
}

.sec-home-application .sec-ttl::after {
    display: block;
    position: absolute;
    left: 3px;
    width: 104px;
    height: 4px;
    margin: 6px auto 0;
    background: url(../img/home/img_header_line_white.png) no-repeat center/100%;
    content: "";
}

.sec-home-application .app-sub-ttl {
    position: absolute;
    top: -105%;
    left: 0;
    color: #0d7429;
}

.sec-home-application .app-detail-list {
    line-height: 1.8;
    margin-top: 42px;
}

.sec-home-application .app-detail-list li {
    position: relative;
    margin-bottom: 27px;
    padding-right: 46px;
    padding-left: 44px;
    color: #606060;
}

.sec-home-application .app-detail-list li:last-child {
    margin-bottom: 0;
}

.sec-home-application .app-detail-list li:before {
    position: absolute;
    top: 3px;
    left: 0;
    width: 26px;
    height: 22px;
    content: "";
}

.sec-home-application .app-school li:before {
    background: url("../img/home/ico_app_school.png") no-repeat center/contain;
}

.sec-home-application .app-shop li:before {
    background: url("../img/home/ico_app_shop.png") no-repeat center/contain;
}

.sec-home-application .app-trip li:before,
.sec-home-application .app-bib-job li:before {
    top: 5px;
    height: 31px;
    background: url("../img/home/ico_app_trip.png") no-repeat center/contain;
}

.sec-home-application .app-detail-btn {
    margin-top: 27px;
    display: flex;
}

.sec-home-application .app-detail-btn li {
    margin: 0 8px 0 2px;
    max-width: 177px;
}

.sec-home-application .slick-dots {
    margin-top: 48px;
}

.sec-home-application .slick-dots li button {
    width: 15px;
    height: 15px;
}

.slick-dots li button::before {
    border: 1px solid #e0f6ed;
    background-color: #e0f6ed;
}

/* Training
----------------------------------------------------------*/
.sec-training-course {
    padding: 80px 0;
    text-align: center;
}

.sec-training-course .training-list img {
    position: absolute;
    top: -31%;
    right: 0;
    left: 0;
    margin: auto;
    max-width: 111px;
}

.sec-training-course .training-list {
    position: relative;
    width: 326px;
    margin-top: 78px;
    margin-right: 40px;
    padding: 100px 0;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    background: url("../img/home/img_training_li_bg.png") no-repeat center/100%
        100%;
    color: rgba(0, 0, 0, 0.5);
    font-size: 25px;
    font-weight: 600;
    border-radius: 25px;
}

.sec-training-course .training-list:last-child {
    margin-right: 0;
}

.sec-training-course .training-list h3 {
    position: absolute;
    top: 54%;
    right: 0;
    left: 0;
    font-family: "Poppins", sans-serif;
    transform: translateY(-50%);
}

.sec-training-course .training-list::before {
    position: absolute;
    background: url("../img/home/ico_training.png") no-repeat;
}

.sec-training-course .cmn-btn {
    margin-top: 38px;
}

/* Job 
----------------------------------------------------------*/
.sec-job-agency {
    padding: 80px 0;
    background: #f3fcf7;
}

.sec-job-agency .job {
    padding: 42px 0px 48px;
    background: url("../img/home/img_job_agency.png") no-repeat center/100% 100%;
    text-align: center;
}

.sec-job-agency p {
    line-height: 1.7;
    padding: 24px 70px 30px;
    color: #606060;
}


/* new Common */
:lang(en) .i-pos {
    width: 170px;
}
:lang(en) .i-accounting {
    display: flex;
    gap: 5px;
}
.my-cmn-btn{
    width: 255px;
}

/* Ipad
-----------------------------------------------------------------*/
@media only screen and (min-width: 769px) and (max-width: 1024px) {
    :lang(en) .i-pos {
        width: 23vw;
        display: block;
        margin-left: -3.5vw;
    }
    :lang(my) .en-cmn-btn {
        width: 38%;
        font-size: 2.5vw;
    }
    :lang(en) .en-cmn-btn {
        width: 23vw;
        font-size: 2.5vw;
    }

    .span-ttl {
        padding-bottom: 1.758vw;
        word-spacing: 0.586vw;
    }

    .mv-text p {
        padding: 2.93vw 24.609vw 2.637vw;
    }

    .sec-mainvisual {
        padding: 16vw 0 0.781vw;
        background: url("../img/home/img_home_mv_bg_ipad.png") no-repeat
            top/cover;
        border-bottom: 0.098vw solid #2dbb54;
    }

    .sec-mainvisual .span-ttl {
        margin-top: 13.379vw;
    }

    .sec-mainvisual .mv-text {
        width: 100%;
        max-width: 125vw;
    }

    .sec-mainvisual .slider .slick-prev {
        left: calc((100% - 94.516vw) / 2);
    }

    .sec-mainvisual .slider .slick-next {
        right: calc((100% - 94.516vw) / 2);
    }

    .slick-prev,
    .slick-next {
        width: 8.691vw;
        height: 3.906vw;
    }

    .slick-prev,
    .slick-next {
        top: 38%;
    }

    .sec-mainvisual .mv-text img {
        max-width: 12.695vw;
    }

    .sec-ttl-ipad-sp {
        display: block;
    }

    .sec-ttl-pc {
        display: none;
    }

    .sec-mainvisual .sec-ttl::after,
    .sec-home-pos-system .sec-ttl::after {
        width: 10.156vw;
        margin: 0.488vw auto 0;
    }

    .sec-home-pos-system .sec-ttl::after {
        margin: 0.586vw auto 0;
    }

    .sec-mainvisual .cmn-btn {
        margin-bottom: 5.371vw;
    }

    .sec-mainvisual .slick-dots {
        margin-top: -2.148vw;
    }

    .sec-mainvisual .cycle-img {
        margin-right: 1.758vw;
    }

    .sec-mainvisual .cycle-img {
        margin-right: 1vw;
    }

    .sec-mainvisual .slider-thumb .slick-slide {
        width: 45% !important;
        margin-top: 2vw;
        margin-right: 4%;
        margin-left: 0.5%;
    }

    .sec-mainvisual .slider-thumb .slick-slide a,
    .sec-home-pos-system .slider-nav a,
    .slider-thumb .slick-slide.slick-current a,
    .slider-thumb .slick-slide a:hover {
        padding: 1.2vw 0 2vw;
        font-size: 2.083vw;
    }

    .slider-thumb li:nth-of-type(2n) {
        margin-right: 0;
    }

    .slider-thumb .slick-slide a::before,
    .slider-thumb .slick-slide.slick-current a::before,
    .slider-thumb .slick-slide a:hover::before,
    .sec-home-pos-system .slider-nav .slick-slide.slick-current a::before,
    .sec-home-pos-system .slider-nav .slick-slide a:hover::before {
        top: -0.977vw;
    }

    .slider-thumb .slick-slide a::before {
        border-top: 0.195vw solid #2dbb54;
    }

    .slider-thumb .slick-slide a::after {
        bottom: -13.813vw;
        width: 1.953vw;
        height: 0.781vw;
    }

    /* pos system
  ----------------------------------------------------------*/
    .sec-home-pos-system {
        padding: 5.715vw 0 1.563vw;
    }

    .sec-home-pos-system .pos-img {
        width: 31%;
        margin: 0 auto;
    }

    .sec-home-pos-system .pos-img img {
        border-radius: 2.539vw;
    }

    .sec-home-pos-system .pos-txt {
        width: 94%;
        margin: 3.906vw 0 4.785vw 3.5%;
        padding-bottom: 0;
    }

    .sec-home-pos-system .pos-content {
        padding: 0;
        max-width: 103.516vw;
        flex-direction: column;
        gap: 0;
    }

    .sec-home-pos-system .pos-desc {
        margin: 2.832vw auto 0;
        font-size: 2.083vw;
        max-width: 100vw;
    }

    .sec-home-pos-system .pos-desc-list {
        margin: 2.637vw auto 0;
        max-width: 100vw;
    }

    .sec-home-pos-system .pos-desc-list li {
        margin-bottom: 1.953vw;
        font-size: 1.8vw;
    }

    .sec-home-pos-system .pos-desc-list li p {
        max-width: 3.906vw;
        min-width: auto;
    }

    .sec-home-pos-system .pos-desc-list li span {
        padding-left: 1.172vw;
    }

    .sec-home-pos-system .pos-content-ttl {
        position: relative;
        margin-bottom: 3.906vw;
        text-align: center;
        max-width: 100vw;
    }

    .sec-home-pos-system .pos-sub-ttl {
        top: -20px;
        left: 50%;
        transform: translateX(-50%);
        max-width: 13.281vw;
    }

    .sec-home-pos-system .sec-ttl {
        padding-top: 5.918vw;
    }

    .sec-home-pos-system .pos-sub-myattl {
        top: 33%;
        font-size: 2.083vw;
        text-align: center;
    }

    .sec-home-pos-system .cmn-btn {
        width: 35vw;
        padding: 1.172vw 1.64vw;
    }

    .sec-home-pos-system .cmn-btn::after,
    .sec-home-pos-system .cmn-btn:hover::after {
        right: 1.2vw;
    }

    .sec-home-pos-system .slick-dots {
        margin-top: 0.781vw;
    }

    .sec-home-pos-system .slick-dots li button {
        width: 1.465vw;
        height: 1.465vw;
    }

    .sec-home-pos-system .slider-nav li {
        margin-top: 2.93vw;
        margin-right: 0.7vw;
        margin-left: 0.7vw;
        max-width: 46.1vw !important;
    }

    .sec-home-pos-system .slider-nav a {
        padding: 1.758vw 0.488vw;
    }

    .sec-home-pos-system .slider-nav .slick-slide.slick-current a,
    .sec-home-pos-system .slider-nav .slick-slide a:hover {
        padding: 0.781vw 0.488vw 1.953vw;
    }

    .sec-home-pos-system .slider-nav .slick-slide a::before {
        width: 80%;
        height: 0.195vw;
    }

    .sec-home-pos-system .slick-prev,
    .sec-home-pos-system .slick-next {
        width: 0.684vw;
    }

    .sec-home-pos-system .slick-prev {
        left: calc((100% - 94.516vw) / 2);
    }

    .sec-home-pos-system .slick-next {
        right: calc((100% - 94.516vw) / 2);
    }

    .sec-home-pos-system .slider-nav .slick-slide a:after {
        bottom: -0.781vw;
        width: 1.953vw;
        height: 0.781vw;
    }

    /* application
  ----------------------------------------------------------*/
    .sec-home-application {
        padding: 5.762vw 0 9.2vw;
        background-position: center bottom -4.102vw, center top;
    }

    .sec-home-application .app-img {
        margin: 8.008vw auto 0;
    }

    .sec-home-application .app-detail {
        width: 95%;
        margin: 0 auto;
    }

    .sec-home-application .app-content {
        width: 98.438vw;
        margin: 0 auto;
        flex-direction: column;
    }

    .sec-home-application .sec-ttl {
        width: 100%;
        padding-top: 3.906vw;
    }

    .sec-home-application .sec-ttl::after {
        width: 10.156vw;
        height: 0.391vw;
        margin: 0.586vw auto 0;
        left: 0;
        right: 0;
    }

    .sec-home-application .app-sub-ttl {
        top: 0.586vw;
        right: 0;
        left: 1.074vw;
        text-align: center;
    }

    .sec-home-application .app-detail-list {
        margin-top: 4.102vw;
    }

    .sec-home-application .app-detail-list li {
        margin-bottom: 2.637vw;
        padding-right: 4.492vw;
        padding-left: 4.297vw;
    }

    .sec-home-application .app-detail-list li:before {
        top: 0.293vw;
        width: 2.539vw;
        height: 2.148vw;
    }

    .sec-home-application .app-trip li:before {
        top: 0.488vw;
        height: 3.027vw;
    }

    .sec-home-application .app-bib-job li:before {
        top: 0vw;
        height: 3.027vw;
    }

    .sec-home-application .app-detail-btn {
        margin-top: 2.637vw;
    }

    .sec-home-application .app-detail-btn li {
        margin: 0 0.781vw 0 0.195vw;
        max-width: 17.285vw;
    }

    .sec-home-application .slick-dots {
        margin-top: 4.688vw;
        padding: 0.488vw 0px;
    }

    .sec-home-application .slick-dots li button {
        width: 1.465vw;
        height: 1.465vw;
    }

    .sec-home-application .app-shop-ttl,
    .sec-home-application .app-trip-ttl {
        margin-left: 3.125vw !important;
    }

    .sec-home-application .app-shop-img,
    .sec-home-application .app-trip-img {
        margin: 8.008vw auto 0 !important;
    }

    /* training
  ----------------------------------------------------------*/
    .sec-training-course {
        padding: 7.813vw 0;
    }

    .sec-training-course .training-list {
        margin: 7.617vw 1.71vw 0;
        padding: 13.021vw 0;
        box-shadow: 0 0 0.977vw rgba(0, 0, 0, 0.1);
        -webkit-box-shadow: 0 0 0.977vw rgba(0, 0, 0, 0.1);
        -moz-box-shadow: 0 0 0.977vw rgba(0, 0, 0, 0.1);
        font-size: 2.441vw;
        -webkit-border-radius: 1.953vw;
        -moz-border-radius: 1.953vw;
        border-radius: 1.953vw;
    }

    .sec-training-course .training-list img {
        max-width: 10.84vw;
    }

    .sec-job-agency .job {
        padding: 4.102vw 0px 4.688vw;
        border: 0.293vw solid #2dbb54;
        box-shadow: 0 0 0.977vw rgb(0, 0, 0, 0.15);
        background: url("../img/home/img_job_agency_ipad.png") repeat
            center/100% 100%;
    }

    .sec-job-agency {
        padding: 7.813vw 0;
    }

    .sec-job-agency p {
        padding: 4.344vw 6.836vw;
    }

    .sec-training-course .cmn-btn {
        margin-top: 3.711vw;
    }

    .training-slider .slick-prev,
    .training-slider .slick-next {
        width: 4.395vw;
        height: 4.395vw;
    }

    .training-slider .slick-prev {
        left: calc((100% - 96.316vw) / 2);
    }

    .training-slider .slick-next {
        right: calc((100% - 96.316vw) / 2);
    }
}

@media only screen and (max-width: 788px) {
    :lang(en) .i-pos {
        width: 27vw;
        display: block;
    }
    :lang(my) .my-cmn-btn {
        width: 50%;
        font-size: 3vw;
    }
    :lang(en) .en-cmn-btn {
        width: 33vw;
        font-size: 3vw;
    }
}

/* SP
-----------------------------------------------------------------*/
@media only screen and (max-width: 768px) {
    .sec-mainvisual {
        padding: 20.219vw 0 1.563vw;
        background: url(../img/home/img_home_mv_bg_sp.png) no-repeat top/100%
            100%;
        border-bottom: 0.156vw solid #2dbb54;
    }

    .sec-mainvisual .cycle-img {
        margin-right: 2vw;
    }

    .sec-mainvisual .mv-text {
        max-width: 100vw;
    }

    .sec-mainvisual .mv-img {
        top: 6%;
        right: -21vw;
        width: 100%;
        max-width: 68vw;
    }

    .sec-mainvisual .mv-text img {
        top: -0.938vw;
        max-width: 14.063vw;
    }

    .sec-mainvisual .sec-ttl::after {
        width: 13.281vw;
    }

    .sec-ttl-ipad-sp {
        display: block;
    }

    .sec-mainvisual .sec-ttl::after,
    .sec-home-pos-system .sec-ttl::after {
        margin: 1.1vw auto 0;
    }

    .sec-home-pos-system .sec-ttl::after {
        width: 16.25vw;
    }

    .sec-mainvisual .span-ttl {
        margin-top: 14.219vw;
    }

    .slick-dots li button:before {
        width: 2.344vw;
        height: 2.344vw;
    }

    .sec-mainvisual .mv-text p {
        line-height: 1.7;
        padding: 3.125vw 14.688vw 5.7vw;
        font-size: 3.5vw;
    }

    .sec-mainvisual .cmn-btn {
        margin-bottom: 4.063vw;
    }

    .sec-mainvisual .slider-thumb .slick-slide {
        width: 47% !important;
        margin-top: 1.5vw;
        margin-right: 3%;
    }

    .sec-mainvisual .slider-thumb .slick-slide a,
    .slider-thumb .slick-slide.slick-current a,
    .slider-thumb .slick-slide a:hover {
        padding: 1.2vw 0 2.188vw;
        font-size: 2.4vw;
    }

    .slider-thumb li:nth-of-type(2n) {
        margin-right: 0;
    }

    .slider-thumb .slick-slide a::before,
    .slider-thumb .slick-slide.slick-current a::before,
    .slider-thumb .slick-slide a:hover::before {
        top: 0;
    }

    .slider-thumb .slick-slide a::before {
        border-top: 0.195vw solid #2dbb54;
    }

    .sec-mainvisual .slider .slick-prev {
        top: 42%;
        left: calc((100% - 90.516vw) / 2);
    }

    .sec-mainvisual .slider .slick-next {
        top: 42%;
        right: calc((100% - 90.516vw) / 2);
    }

    .sec-mainvisual .slick-prev,
    .sec-mainvisual .slick-next {
        width: 9.375vw;
        height: 4.219vw;
    }

    .slider-thumb .slick-slide a::after {
        bottom: -8.813vw;
        width: 2.344vw;
        height: 0.781vw;
    }

    .slider-thumb .slick-slide.slick-current a:after {
        bottom: 0;
        width: 2.344vw;
        height: 0.781vw;
    }

    .sec-mainvisual .mv-text {
        background-size: 65.625vw;
    }

    .sec-mainvisual .slick-prev,
    .sec-mainvisual .slick-next {
        top: 43%;
    }

    /* pos system
  ----------------------------------------------------------*/
    .sec-home-pos-system {
        padding: 4.25vw 0 2.5vw;
    }

    .sec-home-pos-system .pos-img {
        width: 42.3%;
        margin: 0 auto;
    }

    .sec-home-pos-system .pos-img img {
        border-radius: 4.063vw;
    }

    .sec-home-pos-system .pos-txt {
        width: 90.5%;
        margin: 0 auto;
        padding-bottom: 4.6vw;
    }

    .sec-home-pos-system .pos-content-ttl {
        position: relative;
        margin-block: 7.781vw 10.844vw;
        text-align: center;
        max-width: 100vw;
    }

    .sec-ttl-pc {
        display: none;
    }

    .sec-home-pos-system .pos-content {
        width: 100%;
        padding: 0;
        max-width: 100vw;
        flex-direction: column;
        gap: 0;
    }

    .sec-home-pos-system .pos-sub-ttl {
        top: -33%;
        left: 50%;
        transform: translate(-50%, -50%);
        max-width: 16.406vw;
    }

    .sec-home-pos-system .sec-ttl {
        display: block;
        padding-top: 0.469vw;
    }

    .sec-home-pos-system .pos-sub-myattl {
        top: -53%;
        font-size: 2.5vw;
        text-align: center;
    }

    .sec-home-pos-system .pos-desc {
        line-height: 2;
        margin-top: 7.656vw;
        font-size: 3.5vw;
        text-align: left;
    }

    .sec-home-pos-system .pos-desc-list {
        grid-template-columns: repeat( 1, 1fr);
        margin-top: 4.063vw;
        gap: 10px;
    }

    .sec-home-pos-system .pos-desc-list li {
        width: 100%;
        font-size: 3.5vw;
    }

    .sec-home-pos-system .pos-desc-list li p {
        max-width: 6.25vw;
        min-width: auto;
    }

    .sec-home-pos-system .pos-desc-list li span {
        padding-top: 0.781vw;
        padding-left: 2vw;
        letter-spacing: 0;
    }

    .sec-home-pos-system .cmn-btn {
        width: 60.313vw;
        margin: 2vw 0;
        padding: 2.344vw 4.5vw;
    }

    .sec-home-pos-system .cmn-btn::after,
    .sec-home-pos-system .cmn-btn:hover::after {
        right: 2.6vw;
    }

    .sec-home-pos-system .slick-dots {
        left: 45%;
        margin-top: 2.25vw;
    }

    .sec-home-pos-system .slick-dots li button {
        width: 2.344vw;
        height: 2.344vw;
    }

    .span-ttl {
        padding-bottom: 2vw;
        font-size: 3.5vw;
        word-spacing: 0.938vw;
    }

    .sec-home-pos-system .slider-nav li {
        width: 9%;
        margin-top: 2.93vw;
        margin-right: 0.5%;
        margin-left: 0.5%;
    }

    .sec-home-pos-system .slider-nav a {
        padding: 2.813vw 0.781vw;
        font-size: 2.4vw;
    }

    .sec-home-pos-system .slider-nav .slick-slide.slick-current a,
    .sec-home-pos-system .slider-nav .slick-slide a:hover {
        padding: 1.25vw 0.781vw 3.125vw;
    }

    .sec-home-pos-system .slider-nav .slick-slide.slick-current a::before,
    .sec-home-pos-system .slider-nav .slick-slide a:hover::before {
        top: -1.563vw;
    }

    .sec-home-pos-system .slider-nav .slick-slide a::before {
        width: 100%;
        height: 0.313vw;
    }

    .sec-home-pos-system .slick-prev,
    .sec-home-pos-system .slick-next {
        width: 1.094vw;
    }

    .sec-home-pos-system .slick-prev {
        left: calc((100% - 92vw) / 2);
    }

    .sec-home-pos-system .slick-next {
        right: calc((100% - 92vw) / 2);
    }

    .sec-home-pos-system .slider-nav .slick-slide.slick-current a::after,
    .sec-home-pos-system .slider-nav .slick-slide a:after,
    .slider-nav .slick-slide a:hover::after {
        bottom: -3.594vw;
        width: 2.344vw;
        height: 0.781vw;
    }

    .sec-home-pos-system .slider-nav .slick-slide.slick-current a::after,
    .slider-nav .slick-slide a:hover::after {
        bottom: 0;
    }

    /* application 
----------------------------------------------------------*/
    .sec-home-application {
        padding: 4.762vw 0 8vw;
        background-position: center bottom -4.102vw, center top;
    }

    .sec-home-application .app-img {
        width: 50.5%;
        margin: 5.5vw auto 0;
    }

    .sec-home-application .app-detail {
        width: 92%;
        margin: 0 auto;
    }

    .sec-home-application .app-content {
        width: 98.438vw;
        margin: 0 auto;
        flex-direction: column;
    }

    .sec-home-application .sec-ttl {
        width: 100%;
        padding-top: 5.313vw;
    }

    .sec-home-application .sec-ttl::after {
        width: 16.25vw;
        height: 0.391vw;
        left: 0;
        right: 0;
        margin: 1.4vw auto 0;
    }

    .sec-home-application .app-sub-ttl {
        top: 1.025vw;
        right: 0;
        left: 1.074vw;
        font-size: 3.5vw;
        text-align: center;
    }

    .sec-home-application .app-detail-list {
        line-height: 2.1;
        margin-top: 2.2vw;
    }

    .sec-home-application .app-detail-list li {
        margin-bottom: 3.5vw;
        padding-right: 4.492vw;
        padding-left: 5.031vw;
        font-size: 3.5vw;
    }

    .sec-home-application .app-detail-list li:before {
        top: 1.691vw;
        width: 3.386vw;
        height: 2.865vw;
    }

    .sec-home-application .app-trip li:before,
    .sec-home-application .app-bib-job li:before {
        top: 1.951vw;
        height: 4.037vw;
    }

    .sec-home-application .app-detail-btn {
        margin-top: 4.125vw;
    }

    .sec-home-application .app-detail-btn li {
        margin: 0 1.25vw 0 0.313vw;
        max-width: 27.656vw;
    }

    .sec-home-application .slick-dots {
        margin-top: 6vw;
        padding: 0.781vw 0;
    }

    .sec-home-application .slick-dots li button {
        width: 1.465vw;
        height: 1.465vw;
    }

    .sec-home-application .app-shop-ttl,
    .sec-home-application .app-trip-ttl {
        margin-left: 3.125vw !important;
    }

    .sec-home-application .app-shop-img,
    .sec-home-application .app-trip-img {
        margin: 8.008vw auto 0 !important;
    }

    /* training 
----------------------------------------------------------*/
    .sec-training-course {
        padding: 12.5vw 0;
    }

    .sec-training-course .training-list {
        margin: 12.188vw 9.6vw 0;
        padding: 15.625vw 0;
        box-shadow: 0 0 1.563vw rgba(0, 0, 0, 0.1);
        -webkit-box-shadow: 0 0 1.563vw rgba(0, 0, 0, 0.1);
        -moz-box-shadow: 0 0 1.563vw rgba(0, 0, 0, 0.1);
        font-size: 3.906vw;
        -webkit-border-radius: 3.125vw;
        -moz-border-radius: 3.125vw;
        border-radius: 3.125vw;
    }

    .sec-training-course .training-list img {
        max-width: 17.344vw;
    }

    .sec-job-agency .l-inner {
        padding: 0 4.813vw;
    }

    .sec-job-agencyy .job {
        padding: 4.688vw 0 3.375vw;
        border: 3px solid #2dbb54;
        box-shadow: 0 0 10px rgb(0, 0, 0, 0.15);
        background: url("../img/home/img_job_agency_sp.png") no-repeat
            center/100% 100%;
    }

    .training-slider .slick-prev,
    .training-slider .slick-next {
        top: 66%;
        width: 7.031vw;
        height: 7.031vw;
    }

    .training-slider .slick-prev {
        left: calc((100% - 57.813vw) / 2);
    }

    .training-slider .slick-next {
        right: calc((100% - 57.813vw) / 2);
    }

    .sec-training-course ul {
        padding: 0 12.5vw 0 12.5vw;
    }

    .sec-job-agency .job {
        padding: 4.688vw 0;
        border: 0.469vw solid #2dbb54;
        box-shadow: 0 0 1.563vw rgb(0, 0, 0, 0.15);
        background: url("../img/home/img_job_agency_sp.png") no-repeat
            center/100% 100%;
    }

    .sec-job-agency p {
        padding: 4vw 5vw;
        font-size: 3.5vw;
    }

    .sec-job-agency {
        padding: 12.5vw 0;
    }
}
