@charset "UTF-8";

.page-title {
    background:
        url(../img/page/bg_page-title01.png) no-repeat left center,
        url(../img/page/bg_page-title02.png) no-repeat right center,
        url(../img/common/bg_pa01.png) repeat;
    background-size: 50px, 50px, 43px;
    padding: 30px 0px 1px;
    text-align: center;
}

.page-title h1 {
    font-size: 20px;
}

.page-title .eng-tit {
    margin: 5px 0px 20px;
}

.page-content {
    padding: 15px 0px 50px;
}

.page-content .pc-inner {
    padding: 0px 15px;
}

.page-content .blog-inner {
    padding: 15px 15px 30px;
    margin: 30px 0px 40px;
}

/*私たちの想い*/
#page-policy h2 {
    color: #27ad3a;
    text-align: center;
    margin: 40px 0px 20px;
    font-size: 20px;
    line-height: 30px;
}

#page-policy p {
    margin-bottom: 20px;
}
#page-policy .policy-intro01 {
}

#page-policy .policy-intro01::after {
    clear: both;
    display: block;
    content: "";
}

#page-policy .policy-intro01 .txt {
}

#page-policy .policy-intro01 .txt p {
    padding: 0;
    margin: 0 auto 1em;
}

#page-policy .policy-intro01 .photo {
    float: right;
    width: 40%;
}
/*faq*/
.list-faq-page {
    border-top: 1px solid #a6a6a6;
}

#page-faq .first-style {
    margin-top: 30px;
}

.list-faq-page:last-child {
    border-bottom: 1px solid #a6a6a6;
}

.list-faq-page dt:before,
.list-faq-page dd:before {
    display: inline-block;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    text-align: center;
    font-size: 16px;
    line-height: 30px;
    margin-right: 10px;
    position: absolute;
    left: 5px;
    color: #fff;
    font-weight: bold;
}

.list-faq-page dt {
    color: #0c891e;
    position: relative;
    font-weight: bold;
    padding: 15px 10px 15px 50px;
    border-bottom: 1px solid #a6a6a6;
}

.list-faq-page dt:before {
    content: "Q";
    background: #0c891e;
    top: 9px;
}

.list-faq-page dd {
    position: relative;
    padding: 15px 10px 15px 50px;
    margin: 1px 0px;
    background: #f5f5ed;
}

.list-faq-page dd:before {
    content: "A";
    background: #a64d00;
}

/*ご利用料金とご利用対象*/
.box-price {
    border-radius: 12px;
    overflow: hidden;
    margin-top: 20px;
}

.box-price h2 {
    padding: 10px 0px;
    text-align: center;
    font-weight: bold;
    color: #fff;
    background-image: url(../img/page/bg_price.png);
    background-repeat: repeat;
    font-size: 16px;
}

.box-price .txt {
    padding: 15px;
}

.price-type01 {
    border: 2px solid #009585;
}

.price-type01 h2 {
    background-color: #009585;
}

.price-type01 h3 {
    color: #009585;
    margin-bottom: 5px;
}

.price-type02 {
    border: 2px solid #a64d00;
}

.price-type02 h2 {
    background-color: #a64d00;
}

/*体験会・見学案内*/
#page-guide h2 {
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    line-height: 28px;
    margin: 20px auto;
}

#page-guide h3 {
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    line-height: 28px;
    margin: 40px auto 20px;
}

.tit-point {
    background:
        url(../img/page/ico_point01.png) no-repeat left center,
        url(../img/page/ico_point02.png) no-repeat right center;
    background-size: 30px;
}

.entry-voice {
    margin-bottom: 30px;
}

.entry-voice li {
    background: #f5f5ed;
    border-radius: 12px;
    display: block;
    margin: 10px auto;
    padding: 15px 25px 20px;
}

#page-guide .thumb {
    text-align: center;
    margin: 0px 0px 10px;
}

#page-guide .thumb img {
    width: 70px;
}

/*もっとできる就労までの３つの特徴*/
#page-advantage h2 {
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    line-height: 28px;
    margin: 20px auto;
}

.quality-point {
    background: url(../img/page/ico_quality.png) no-repeat top center;
    padding: 32px 20px 10px;
    background-size: 30px;
    margin: 30px auto 20px;
}

.quality-point p {
    border: 2px solid #27ad3a;
    border-radius: 4px;
    padding: 10px 0px;
    text-align: center;
    color: #27ad3a;
}

.ad-staff01,
.ad-staff02 {
    margin: 20px auto;
}

.ad-staff01 .photo,
.ad-staff02 .photo {
    line-height: 0;
    border-radius: 8px 8px 0px 0px;
    overflow: hidden;
}

.ad-staff01 .txt,
.ad-staff02 .txt {
    padding: 20px;
    border-radius: 0px 0px 8px 8px;
}

.ad-staff01 h3,
.ad-staff02 h3 {
    font-size: 16px;
    line-height: 26px;
    margin-bottom: 5px;
}

.ad-staff01 h3 {
    color: #0c891e;
}

.ad-staff01 .txt {
    background: #f5f5ed;
}

.ad-staff02 h3 {
    color: #ff9914;
}

.ad-staff02 .txt {
    background: #f5f5ed;
}

.bigtext {
    font-size: 50px;
}

.motto-point {
    background: url(../img/page/bg_motto-point.png) repeat;
    padding: 50px 15px 30px;
    margin: 80px auto 30px;
    border-radius: 8px;
    position: relative;
    font-size: 13px;
}

.motto01:after {
    content: " ";
    display: block;
    width: 90px;
    height: 94px;
    background: url(../img/page/ico_motto.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: -60px;
    left: 50%;
    margin-left: -30px;
}

.motto02:after {
    content: " ";
    display: block;
    width: 90px;
    height: 94px;
    background: url(../img/page/ico_motto02.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: -60px;
    left: 50%;
    margin-left: -30px;
}

.motto03:after {
    content: " ";
    display: block;
    width: 90px;
    height: 94px;
    background: url(../img/page/ico_motto03.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: -60px;
    left: 50%;
    margin-left: -30px;
}

.hotto01:after {
    content: " ";
    display: block;
    width: 90px;
    height: 94px;
    background: url(../img/page/ico_hotto01.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: -60px;
    left: 50%;
    margin-left: -30px;
}

.hotto02:after {
    content: " ";
    display: block;
    width: 90px;
    height: 94px;
    background: url(../img/page/ico_hotto02.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: -60px;
    left: 50%;
    margin-left: -30px;
}

.hotto03:after {
    content: " ";
    display: block;
    width: 90px;
    height: 94px;
    background: url(../img/page/ico_hotto03.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: -60px;
    left: 50%;
    margin-left: -30px;
}

.hotto04:after {
    content: " ";
    display: block;
    width: 90px;
    height: 94px;
    background: url(../img/page/ico_hotto04.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: -60px;
    left: 50%;
    margin-left: -30px;
}

.shikaku {
    border: 2px solid #0c891e;
    border-radius: 8px;
    margin: 40px 10px;
}

.shikaku h3 {
    background: #0c891e;
    border-radius: 6px 6px 0px 0px;
    text-align: center;
    color: #fff;
    font-size: 18px;
    padding: 10px 0px;
}

.shikaku p {
    margin: 20px;
    font-size: 14px;
    line-height: 28px;
}

.shikaku ul {
    margin: 20px;
}

.shikaku ul li {
    display: block;
    padding-left: 30px;
    margin-bottom: 15px;
    box-sizing: border-box;
    font-weight: bold;
}

.shikaku ul li span {
    background: linear-gradient(rgba(0, 0, 0, 0) 60%, #fff799 60%);
}

.shikaku .menjo {
    background: url(../img/common/ico_exp.png) no-repeat left center;
    background-size: 15px;
}

.shikaku .taisho {
    background: url(../img/page/ico_policy.png) no-repeat left center;
    background-size: 15px;
}

.shikaku ul li small {
    font-size: 10px;
}

.program-flow {
    margin: 0px;
    padding-bottom: 1px;
}

.program-flow table th,
.program-flow table td {
    border: 2px solid #fff;
}

.program-flow table th {
    padding: 10px 15px;
}

.program-flow table td {
    padding: 20px 20px 20px 20px;
}

.program-flow table .bg-green {
    background: #0c891e;
    color: #fff;
}

.program-flow table .bg-glay {
    background: #a0a0a0;
    color: #fff;
}

.program-flow table .bg-lglay {
    background: #f5f5f5;
}

.program-flow table .bg-brown {
    background: #a64d00;
    color: #fff;
}

.program-flow table .bg-lbrown {
    background: #f6ede5;
}

.program-flow table .t-strong {
    font-size: 16px;
}

.tit-ad-flow {
    text-align: center;
    font-size: 16px;
    line-height: 26px;
    margin: 50px auto 30px;
}

/*ほっとできる就労以降支援事業所*/
#page-service h2 {
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    line-height: 28px;
    margin: 20px auto;
}

.box-fukidashi {
}

.fukidashi-left {
    margin-right: 40%;
    position: relative;
}

.fukidashi-left:after {
    content: url(../img/page/img_fukidashi-smp.png);
    position: absolute;
    top: 15%;
    right: -70%;
}

.fukidashi-right {
    margin-left: 40%;
    position: relative;
}

.fukidashi-right:after {
    content: url(../img/page/img_fukidashi-smp.png);
    position: absolute;
    top: 15%;
    left: -70%;
}

.fukidashi01,
.fukidashi02,
.fukidashi03,
.fukidashi04 {
    background: #f5f5ed;
    border-radius: 12px;
    padding: 20px;
    box-sizing: border-box;
    position: relative;
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: bold;
}

.fukidashi01:after,
.fukidashi02:after,
.fukidashi03:after,
.fukidashi04:after {
    position: absolute;
}

.fukidashi01:after {
    content: url(../img/page/img_fuki01.png);
    top: 40%;
    right: -40px;
}

.fukidashi02:after {
    content: url(../img/page/img_fuki02.png);
    top: 40%;
    right: -40px;
}

.fukidashi03:after {
    content: url(../img/page/img_fuki04.png);
    top: 40%;
    left: -40px;
}

.fukidashi04:after {
    content: url(../img/page/img_fuki03.png);
    top: 40%;
    left: -40px;
}

.tit-fuan:before {
    content: url(../img/page/ico_huann-smp.png);
    display: block;
    margin: 30px auto 0px;
}

.service-step li {
    background: #f5f5ed;
    padding: 10px;
    margin-bottom: 10px;
    box-sizing: border-box;
    display: table;
}

.service-step li h3 {
    font-size: 16px;
}

.service-step .ico_step,
.service-step .txt_step {
    display: table-cell;
    vertical-align: top;
    padding: 10px;
}

.service-step .ico_step p {
    border-radius: 50%;
    font-size: 12px;
    background-image: url(../img/page/bg_price.png);
    background-repeat: repeat;
    width: 60px;
    height: 60px;
    text-align: center;
    color: #fff;
    font-weight: bold;
    line-height: 60px;
}

.service-step01 .ico_step p {
    background-color: #0e8a20;
}

.service-step01 h3 {
    color: #0e8a20;
}

.service-step02 .ico_step p {
    background-color: #009585;
}

.service-step02 h3 {
    color: #009585;
}

.service-step03 .ico_step p {
    background-color: #a74e02;
}

.service-step03 h3 {
    color: #a74e02;
}

.service-step04 .ico_step p {
    background-color: #25a702;
}

.service-step04 h3 {
    color: #25a702;
}

.service-step05 .ico_step p {
    background-color: #a60052;
}

.service-step05 h3 {
    color: #a60052;
}

.list-program-style li {
    position: relative;
    margin: 70px 10px 30px;
    background: #fff;
    border-radius: 12px;
    padding: 20px;
}

.list-program-style .thumb {
    width: 34%;
    margin: -70px auto 0px;
    text-align: center;
}

.list-program-style h3 {
    text-align: center;
    font-weight: bold;
    font-size: 22px;
    margin: 20px 0px;
}

.list-program-style li:nth-child(1) {
    border: 3px solid #0c891e;
}

.list-program-style li:nth-child(1) h3 {
    color: #0c891e;
}

.list-program-style li:nth-child(2) {
    border: 3px solid #009585;
}

.list-program-style li:nth-child(2) h3 {
    color: #009585;
}

.list-program-style li:nth-child(3) {
    border: 3px solid #a64d00;
}

.list-program-style li:nth-child(3) h3 {
    color: #a64d00;
}

.one-day {
    margin: 10px auto 20px;
}

/*事業所案内*/
#page-office h2 {
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    line-height: 28px;
    margin: 20px auto;
}

.page-takada .news .list-takadano {
    border: 2px solid #ff9914;
}

.news .list-oimachi .blog-list {
    border: 2px solid #ee4266;
}

.news .list-kobenagata .blog-list {
    border: 2px solid #009585;
}

.office-intro02 {
    margin: 20px 0px;
}

.office-intro02 h3 {
    color: #0c891e;
    font-size: 18px;
    margin-bottom: 10px;
    text-align: center;
}

.office-intro02 .shomei {
    text-align: right;
}

.office-intro02 .photo {
    width: 60%;
    margin: 10px auto;
}
.office-intro02 .photo img {
    border-radius: 12px;
}
.office-intro02 .txt {
    padding: 0 20px;
}
.office-intro02 .txt p {
    margin-bottom: 1em;
}
.office-intro02 .txt .list {
    background: #f5f5ed;
    padding: 10px 20px;
    margin: 20px auto;
    border-radius: 12px;
}
.office-intro02 .txt .list li {
    margin: 10px auto;
    padding-left: 24px;
    position: relative;
}
.office-intro02 .txt .list li::before {
    content: "";
    width: 0.8em;
    height: 0.8em;
    background: #0c891e;
    position: absolute;
    left: 0;
    border-radius: 50%;
    top: 0.4em;
}
.page-content .office-intro03 {
    padding: 5px 15px 20px;
}

.office-intro03 h2 span {
    font-size: 12px;
}

.office-intro04 ul {
    margin-bottom: 40px;
}

.office-intro04 ul li {
    display: inline-block;
    width: 48%;
    margin: 10px 0px;
    vertical-align: top;
}

.office-intro04 ul li:nth-child(2n) {
    margin-left: 2%;
}

.office-intro04 ul li img {
    border-radius: 8px;
    aspect-ratio: 480 / 350;
}

.office-intro05 li {
    margin-bottom: 20px;
}

.office-intro05 li .photo {
    height: 200px;
    overflow: hidden;
    border-radius: 8px;
}

.office-intro05 li .photo img {
    width: 100%;
}

.office-intro05 h3 {
    font-size: 16px;
    color: #0c891e;
    margin: 10px 0px;
}

.office-intro06 {
    margin-bottom: 40px;
}

.office-intro06 li {
    display: table;
    background: #f5f5ed;
    width: 100%;
    margin-bottom: 10px;
    padding: 10px;
    border-radius: 8px;
}

.office-intro06 li .photo,
.office-intro06 li .txt {
    display: table-cell;
    vertical-align: top;
}

.office-intro06 li .photo {
    width: 30%;
}

.office-intro06 li .photo img {
    border-radius: 10px;
    aspect-ratio: 180 / 200;
    object-fit: cover;
}

.office-intro06 li .txt {
    padding-left: 10px;
    font-size: 12px;
}

.office-intro06 li .txt .name {
    color: #0c891e;
    font-weight: bold;
    font-size: 16px;
    vertical-align: middle;
}

.office-intro06 li .txt .name span {
    font-size: 10px;
    color: #000;
    margin-left: 10px;
}
.office-intro06 li .txt .profile {
    display: block;
    margin: 5px 0;
    font-size: 0.8rem;
}

.office-intro06 li .txt .profile dt {
    display: inline-block;
    background: #fff;
    padding: 0 10px;
    margin: 5px 0;
    margin-right: 5px;
    color: #0c891e;
    border-radius: 5px;
    font-weight: bold;
}

.office-intro06 li .txt .profile dd {
    display: inline-block;
}
.office-intro07 {
    margin-bottom: 40px;
}

.office-intro07 dl {
    margin-bottom: 20px;
}

.office-intro07 dl dt {
    font-weight: bold;
    color: #0c891e;
}

.office-intro07 .map iframe {
    width: 100%;
    height: 240px;
}

.office-intro08 {
    margin-bottom: 40px;
}

.office-intro08 ol li {
    display: inline-block;
    vertical-align: top;
    position: relative;
    width: 48%;
    margin: 10px 0px 0px;
}

.office-intro08 ol li:before {
    display: block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    background: #0c891e;
    border-radius: 50%;
    color: #fff;
    font-weight: bold;
    margin-bottom: -15px;
    position: relative;
    z-index: 2;
    text-align: center;
}

.office-intro08 ol li:nth-child(1):before {
    content: "1";
}

.office-intro08 ol li:nth-child(2):before {
    content: "2";
}

.office-intro08 ol li:nth-child(3):before {
    content: "3";
}

.office-intro08 ol li:nth-child(4):before {
    content: "4";
}

.office-intro08 ol li:nth-child(5):before {
    content: "5";
}

.office-intro08 ol li:nth-child(6):before {
    content: "6";
}

.office-intro08 ol li:nth-child(2n) {
    margin-left: 2%;
}

.office-intro09 dl dt,
.office-intro09 dl dd {
    padding: 10px 10px 10px 20px;
}

.office-intro09 dl dt {
    background: #f5f5ed;
    color: #0c891e;
}

.office-intro09 .btn-exp {
    margin: 20px 0px 40px;
}

.wpcf7-not-valid-tip {
    color: #f00;
    font-weight: bold;
}

@media (min-width: 600px) {
    .office-intro06 li .txt {
        padding-right: 35px;
    }
}

@media (min-width: 768px) {
    .page-title {
        background: url(../img/page/bg_page-title.png) repeat-x;
        background-size: 346px;
        padding: 0px;
    }

    .page-title h1 {
        font-size: 36px;
        line-height: 46px;
    }

    .page-title .pc-inner {
        max-width: 1000px;
        margin: 0 auto;
        padding: 70px 0px 1px;
        background: url(../img/page/bg_page-title01-pc.png) no-repeat left center;
        height: 197px;
        box-sizing: border-box;
        position: relative;
    }

    .ico-before .pc-inner:before {
        content: url(../img/page/bg_page-title02-pc.png);
        display: block;
        position: absolute;
        right: -40px;
        bottom: -20px;
    }

    .page-content {
        padding: 15px 0px 100px;
    }

    .page-content .pc-inner {
        max-width: 1000px;
        margin: 0 auto;
    }

    .page-content .blog-inner {
        max-width: 1000px;
        padding: 30px 0px;
        margin: 50px auto 70px;
    }

    .w70 {
        width: 70%;
        margin-left: auto;
        margin-right: auto;
    }

    .w80 {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }

    .w90 {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

    .fs1 {
        font-size: 20px;
        line-height: 1.6em;
    }

    /*私たちの想い*/
    #page-policy h2 {
        margin: 80px 0px 20px;
        font-size: 36px;
        line-height: 46px;
    }

    #page-policy p {
        margin: 0px 100px 20px;
        font-size: 16px;
        line-height: 30px;
    }

    #page-policy .shomei {
        text-align: right;
    }
    #page-policy .policy-intro01 {
        margin: 0 100px;
    }

    #page-policy .policy-intro01::after {
        clear: both;
        display: block;
        content: "";
    }

    #page-policy .policy-intro01 .txt {
    }

    #page-policy .policy-intro01 .txt p {
        padding: 0;
        margin: 0 auto 20px;
    }

    #page-policy .policy-intro01 .photo {
        float: right;
        width: 40%;
    }
    /*faq*/
    #page-faq .first-style {
        margin-top: 40px;
    }

    .list-faq-page dt:before,
    .list-faq-page dd:before {
        width: 60px;
        height: 60px;
        font-size: 24px;
        line-height: 60px;
        left: 5px;
        top: 25%;
    }

    .list-faq-page dt {
        padding: 40px 10px 40px 120px;
        font-size: 18px;
    }

    .list-faq-page dt:before {
        margin-top: -8px;
    }

    .list-faq-page dd {
        padding: 40px 10px 40px 120px;
        font-size: 16px;
        line-height: 30px;
    }

    /*ご利用料金とご利用対象*/
    #page-price .first-style {
        margin-top: 60px;
    }

    .box-price {
        display: table;
    }

    .box-price h2,
    .box-price .txt {
        display: table-cell;
        vertical-align: middle;
    }

    .box-price h2 {
        width: 250px;
        font-size: 26px;
    }

    .box-price .txt {
        padding: 55px;
        font-size: 16px;
        line-height: 32px;
    }

    .box-price h3 {
        font-size: 26px;
    }

    /*体験会・見学案内*/
    #page-guide h2 {
        font-size: 36px;
        line-height: 56px;
        margin: 40px auto;
    }

    #page-guide h3 {
        font-size: 36px;
        line-height: 56px;
        margin: 60px auto 30px;
    }

    .tit-point {
        background-size: 60px;
    }

    .txt-guide {
        font-size: 16px;
        line-height: 30px;
    }

    .entry-voice {
        margin-bottom: 60px;
    }

    .entry-voice li {
        display: inline-block;
        vertical-align: top;
        box-sizing: border-box;
        padding: 20px 40px 30px;
    }

    #page-guide .thumb img {
        width: 120px;
    }

    /*もっとできる就労までの３つの特徴*/
    #page-advantage h2 {
        font-size: 36px;
        line-height: 56px;
        margin: 40px auto;
    }

    .quality-point {
        padding: 82px 20px 10px;
        margin-bottom: 80px;
        background-size: 74px;
        font-weight: bold;
        font-size: 24px;
        line-height: 34px;
    }

    .quality-point p {
        width: 540px;
        margin-left: auto;
        margin-right: auto;
        padding: 20px 0px;
        border-radius: 8px;
        border: 3px solid #27ad3a;
    }

    .motto-point {
        padding: 30px 250px 30px 50px;
        margin: 80px auto 30px;
        width: 100%;
        box-sizing: border-box;
        border-radius: 8px;
        position: relative;
        font-size: 16px;
        line-height: 30px;
        min-height: 150px;
    }

    .motto-point:after {
        width: 181px;
        height: 188px;
        top: -50px;
        left: 100%;
        margin-left: -181px;
    }

    #page-advantage .motto-point {
        margin-bottom: 160px;
    }

    #skilup {
        position: relative;
        margin-top: 200px;
    }

    #skilup:before {
        content: url(../img/top/img_top03.png);
        position: absolute;
        top: -50px;
        right: -20px;
    }

    .shikaku {
        margin-bottom: 100px;
        padding-bottom: 50px;
        position: relative;
        background: #fff;
    }

    .shikaku:after {
        content: url(../img/top/img_top04.png);
        position: absolute;
        top: 0;
        left: -100px;
        z-index: 1;
    }

    .shikaku h3 {
        position: relative;
        z-index: 2;
    }

    .shikaku p {
        padding: 40px 60px 20px 60px;
        margin: 0;
        font-size: 16px;
        line-height: 28px;
        background: #fff;
        position: relative;
        z-index: 2;
    }

    .shikaku ul {
        margin: 20px 30px 0px 60px;
    }

    .shikaku ul li {
        display: inline-block;
        width: 280px;
    }

    .txt-shiken {
        text-align: center;
        font-size: 16px;
        line-height: 28px;
    }

    .illust-flow {
        text-align: center;
        position: relative;
        margin: 50px 0px 20px;
    }

    .illust-flow:before {
        content: url(../img/top/img_office-il.png);
        position: absolute;
        top: -100px;
        right: -50px;
    }

    .illust-flow:after {
        content: url(../img/top/img_top03.png);
        position: absolute;
        bottom: 100px;
        right: -70px;
    }

    .program-flow {
        margin: 0px;
        padding-bottom: 1px;
        position: relative;
    }

    .program-flow:before {
        content: url(../img/page/img_eda01.png);
        position: absolute;
        top: 150px;
        left: -50px;
    }

    .program-flow table {
        font-size: 16px;
        line-height: 30px;
        width: 98%;
        margin: 0 auto 50px;
    }

    .program-flow table th,
    .program-flow table td {
        border: 2px solid #fff;
    }

    .program-flow table th {
        padding: 15px;
    }

    .program-flow table td {
        padding: 20px 20px 20px 50px;
    }

    .program-flow table .bg-green {
        text-align: left;
        vertical-align: middle;
    }

    .program-flow table .t-strong {
        font-size: 24px;
        line-height: 24px;
    }

    .tit-ad-flow {
        text-align: center;
        font-size: 30px;
        line-height: 36px;
        margin: 50px auto 30px;
    }

    .ad-illust01,
    .ad-illust02,
    .ad-illust03 {
        position: relative;
        z-index: 1;
    }

    .ad-illust01:before,
    .ad-illust02:before,
    .ad-illust03:before {
        position: absolute;
        z-index: 2;
    }

    .ad-illust01:before {
        content: url(../img/page/img_eda01.png);
        left: -20px;
        top: -100px;
    }

    .ad-illust02:before {
        content: url(../img/top/img_top03.png);
        right: -70px;
        top: -50px;
    }

    .ad-illust03:before {
        content: url(../img/top/img_top05.png);
        left: -100px;
        top: 120px;
    }

    /*ほっとできる就労以降支援事業所*/
    #page-service h2 {
        font-size: 36px;
        line-height: 50px;
        margin: 40px auto 40px;
    }

    .box-fukidashi {
        overflow: hidden;
    }

    .fukidashi-left {
        margin-right: 0%;
        float: left;
        width: 376px;
    }

    .fukidashi-left:after {
        content: url(../img/page/img_fukidashi.png);
        position: absolute;
        top: 15%;
        right: -47%;
    }

    .fukidashi-right {
        margin-left: 0%;
        float: right;
        width: 376px;
    }

    .fukidashi-right:after {
        content: url(../img/page/img_fukidashi.png);
        position: absolute;
        top: 15%;
        left: -47%;
    }

    .fukidashi01,
    .fukidashi02,
    .fukidashi03,
    .fukidashi04 {
        padding: 30px;
        margin-bottom: 20px;
        font-size: 16px;
        height: 100px;
    }

    .tit-fuan:before {
        content: url(../img/page/ico_huann.png);
    }

    .service-step li {
        padding: 20px;
    }

    .service-step li h3 {
        font-size: 26px;
        margin-bottom: 10px;
    }

    .service-step .ico_step,
    .service-step .txt_step {
        display: table-cell;
        vertical-align: top;
        padding: 10px;
    }

    .service-step .ico_step p {
        font-size: 18px;
        width: 100px;
        height: 100px;
        line-height: 100px;
    }

    .service-step .txt_step {
        font-size: 16px;
        line-height: 30px;
    }

    .list-program-style li {
        width: 30%;
        display: inline-block;
        vertical-align: top;
        padding: 20px 10px 30px;
    }

    .list-program-style li .thumb {
        width: 48%;
    }

    .list-program-style li h3 {
        margin: 20px 0px;
    }

    .list-program-style li p {
        line-height: 30px;
    }

    .img_big {
        display: none;
    }

    .txt-service {
        font-size: 16px;
        line-height: 30px;
    }

    /*事業所案内*/
    #page-office h2 {
        font-size: 36px;
        line-height: 50px;
        margin: 20px auto;
    }

    .office-intro01 {
        overflow: hidden;
        margin: 30px auto;
    }

    .office-intro01 .news {
        margin: 0 auto;
        width: 480px;
    }

    .office-intro01 .photo {
        margin: 0 auto;
        width: 480px;
    }

    .office-intro01 .pc-blog-list,
    .office-intro01 .blog-list {
        margin: 0;
    }

    .office-intro01 .blog-list .inner {
        padding-bottom: 30px;
    }

    .office-intro02 {
        margin: 40px 0px;
        overflow: hidden;
    }

    .office-intro02 h3 {
        font-size: 36px;
        line-height: 50px;
        margin: 30px auto;
    }
    .office-intro02 .txt {
        padding: 0;
    }
    .office-intro02 .txt p {
        margin-bottom: 1em;
        font-size: 16px;
        line-height: 30px;
    }

    .office-intro02 .txt .list {
        background: #f5f5ed;
        padding: 10px 30px;
        margin: 30px auto;
        border-radius: 12px;
        font-size: 16px;
    }
    .office-intro02 .txt .list li {
        margin: 20px auto;
        padding-left: 24px;
        position: relative;
    }
    .office-intro02 .txt .list li::before {
        content: "";
        width: 0.8em;
        height: 0.8em;
        background: #0c891e;
        position: absolute;
        left: 0;
        border-radius: 50%;
        top: 0.2em;
    }
    .office-intro02 .shomei {
        margin-top: 30px;
    }

    .office-intro02 .photo {
        width: 38%;
        margin: 0 0 0 20px;
        float: right;
    }
    .office-intro02 .photo img {
        border-radius: 12px;
    }
    .page-content .office-intro03 {
        padding: 5px 15px 20px;
    }

    .office-intro03 h2 span {
        font-size: 16px;
    }

    .office-intro03 .pc-blog-list {
        max-width: 1000px;
        margin: 0 auto;
    }

    .office-intro03 .pc-blog-list li.list-takada {
        width: 100%;
    }

    .office-intro03 .post-block {
        display: inline-block;
        width: 48%;
        box-sizing: border-box;
        vertical-align: top;
    }

    .office-intro03 .post-block:nth-child(2n) {
        border-left: 2px dotted #ddd;
        padding-left: 40px;
    }

    .office-intro03 .blog-list .inner {
        padding-bottom: 10px;
    }

    .office-intro04 {
        margin-top: 40px;
    }

    .office-intro04 ul {
        margin-bottom: 40px;
    }

    .office-intro04 ul li {
        margin: 20px 0px;
    }

    .office-intro05 {
        margin-bottom: 60px;
    }

    .office-intro05 li {
        margin-bottom: 20px;
        display: inline-block;
        vertical-align: top;
    }

    .office-intro05 li:nth-child(1),
    .office-intro05 li:nth-child(2) {
        width: 48%;
    }

    .office-intro05 li:nth-child(3),
    .office-intro05 li:nth-child(4),
    .office-intro05 li:nth-child(5) {
        width: 31%;
    }

    .office-intro05 li:nth-child(4) {
        margin-left: 2%;
        margin-right: 2%;
    }

    .office-intro05 li:nth-child(2) {
        margin-left: 2%;
    }

    .office-intro05 li:nth-child(1) .photo,
    .office-intro05 li:nth-child(2) .photo {
        height: 300px;
    }

    .office-intro05 h3 {
        font-size: 26px;
        line-height: 36px;
        margin: 20px 0px 10px;
    }

    .office-intro05 p {
        font-size: 16px;
        line-height: 30px;
    }

    .office-intro06 {
        margin-bottom: 60px;
    }

    .office-intro06 li {
        padding: 30px;
    }

    .office-intro06 li .photo {
        width: 180px;
    }

    .office-intro06 li .photo img {
        border-radius: 10px;
    }

    .office-intro06 li .txt {
        padding-left: 30px;
        font-size: 16px;
        line-height: 30px;
    }

    .office-intro06 li .txt .name {
        font-size: 26px;
        margin-bottom: 10px;
    }

    .office-intro06 li .txt .name span {
        font-size: 14px;
        vertical-align: top;
        margin-left: 20px;
    }

    .office-intro06 li .txt .profile {
        display: flex;
        margin: 0 0 10px;
        font-size: 0.8rem;
    }

    .office-intro06 li .txt .profile dt {
        background: #fff;
        padding: 0 15px;
        width: 160px;
        margin-right: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #0c891e;
        border-radius: 5px;
        font-weight: bold;
    }

    .office-intro06 li .txt .profile dd {
        width: calc(100% - 175px);
    }

    .office-intro07 {
        margin-bottom: 40px;
        display: table;
        width: 100%;
    }

    .office-intro07 .txt {
        padding-left: 40px;
    }

    .office-intro07 .txt,
    .office-intro07 .map {
        display: table-cell;
        vertical-align: top;
    }

    .office-intro07 .map iframe {
        width: 530px;
        height: 450px;
    }

    .office-intro07 dl {
        margin-bottom: 40px;
    }

    .office-intro08 {
        margin-bottom: 60px;
    }

    .office-intro08 ol li {
        display: inline-block;
        vertical-align: top;
        position: relative;
        width: 31%;
        margin: 10px 2% 0px 0px;
    }

    .office-intro08 ol li:before {
        width: 40px;
        height: 40px;
        line-height: 40px;
        margin-bottom: -20px;
        font-size: 20px;
    }

    .office-intro08 ol li:nth-child(2n) {
        margin-left: 0%;
    }

    .office-intro08 ol li:nth-child(3n) {
        margin-left: 0%;
    }

    .office-intro09 dl {
        display: table;
        border-top: 1px solid #dfdfdf;
        width: 100%;
    }

    .office-intro09 dl:nth-child(8) {
        border-bottom: 1px solid #dfdfdf;
    }

    .office-intro09 dl dt,
    .office-intro09 dl dd {
        padding: 20px;
        display: table-cell;
    }

    .office-intro09 dl dt {
        width: 190px;
    }

    .office-intro09 .btn-exp {
        margin: 40px auto 40px;
        text-align: center;
        width: 400px;
        width: 420px;
    }
}

@media (max-width: 767px) {
    .page-title {
        background-size: 70px, 70px, 43px;
    }
}

/**************************************

各種お申し込み・お問い合わせ

**************************************/
#contact {
    background: #fff;
    padding: 30px 0px;
    margin-bottom: 60px;
}

#contact .w90 {
    margin-bottom: 100px;
}

#contact table {
    width: 100%;
    margin: 20px auto;
}

#contact table th,
#contact table td {
    padding: 20px;
    border: 2px solid #fff;
    border-collapse: collapse;
}

#contact table th {
    color: #fff;
    text-align: left;
    width: 30%;
    vertical-align: top;
}

#contact table th span {
    background: #ff0000;
    display: inline-block;
    padding: 2px 7px;
    font-weight: normal;
    font-size: 12px;
    float: right;
}

#contact table tr:nth-child(odd) th {
    background: #f19200;
}

#contact table tr:nth-child(even) th {
    background: #f8a321;
}

#contact table tr:nth-child(odd) td {
    background: #f5f5f5;
}

#contact table tr:nth-child(even) td {
    background: #e9e9e9;
}

#contact table [type="text"],
#contact table [type="email"],
#contact table [type="tel"] {
    background: #fff;
    width: 100%;
    padding: 5px;
}

#contact table [type="date"] {
    background: #fff;
    padding: 10px;
}

#contact table textarea {
    height: 100px;
    background: #fff;
    width: 100%;
}

#contact table select {
    position: relative;
    border: 1px solid #ccc;
    background: #fff;
    padding: 2px 15px 2px 5px;
    display: inline-block;
}

#contact table label {
    display: inline-block;
    padding: 5px;
}

#contact table label span {
    display: inline-block;
    margin-left: 10px;
}

#contact table td p {
    margin: 10px auto;
}

#contact input[type="submit"] {
    cursor: pointer;
    border-radius: 24px;
    display: block;
    padding: 15px 140px 15px 140px;
    font-weight: bold;
    margin: 20px auto;
    color: #fff;
    background-color: #000;
    position: relative;
    text-align: center;
    font-size: 22px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

#contact input[type="submit"]:hover {
    background-color: #666;
}

input[type="checkbox"],
input[type="radio"] {
    display: none;
}

#contact .wpcf7-list-item {
    margin: 0 0 0 0.2em;
}

#contact .wpcf7-checkbox {
    display: flex;
    flex-wrap: wrap;
}

#contact input[type="checkbox"] + span {
    cursor: pointer;
    display: inline-block;
    padding: 0 0 0 2.3rem;
    position: relative;
    width: auto;
}

#contact input[type="checkbox"] + span::before {
    background: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%);
    border: 1px solid #aaaaaa;
    content: "";
    display: block;
    height: 26px;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 26px;
}

#contact input[type="checkbox"] + span::after {
    border-bottom: 0.3rem solid #99cc00;
    border-right: 0.3rem solid #99cc00;
    content: "";
    display: block;
    height: 1.1rem;
    left: 0.5rem;
    margin-top: -0.7rem;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 0.8rem;
}

#contact input[type="checkbox"]:checked + span::after {
    opacity: 1;
}

#contact .wpcf7-radio {
    display: flex;
    flex-wrap: wrap;
}

#contact input[type="radio"] + span {
    cursor: pointer;
    display: flex;
    align-items: flex-start;
    position: relative;
    width: auto;
    gap: 5px;
}

#contact input[type="radio"] + span::before {
    position: relative;
    -webkit-appearance: button;
    appearance: button;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    min-width: 20px;
    height: 20px;
    content: "";
    background-color: #ffffff;
    border: 1px solid #999999;
    -webkit-border-radius: 24px;
    border-radius: 24px;
    -webkit-box-shadow: inset 4px 4px 10px rgba(0, 0, 0, 0.2);
    box-shadow: inset 4px 4px 10px rgba(0, 0, 0, 0.2);
    vertical-align: middle;
    cursor: pointer;
}

#contact input[type="radio"]:checked + span::before {
    background-color: #f4357d;
    box-shadow: inset 0 0 0 0.2rem #fff;
}

@media screen and (max-width: 767px) {
    /* input[type="checkbox"],
    input[type="radio"] {
        display: none;
    }
 */

    #contact {
        padding: 20px 2%;
        margin-bottom: 30px;

        font-size: 16px;
        line-height: 1.5;
    }

    #contact .w90 {
        margin-bottom: 20px;
    }

    #contact table {
        width: 100%;
        margin: 20px auto;
    }

    #contact table th,
    #contact table td {
        padding: 10px;
        border: 2px solid #fff;
        border-collapse: collapse;
        display: block;
        width: 100%;
        box-sizing: border-box;
    }

    #contact table label {
        padding-left: 0;
        padding-right: 0;
    }

    /* 必須タグの改良 - thの内部に収まるように調整 START */
    #contact table th {
        position: relative;
    }

    #contact table th span {
        position: absolute;
        right: 10px; /* 右端から10pxの位置に固定 */
        top: 50%;
        transform: translateY(-50%); /* 縦方向の中央揃え */
        float: none; /* floatを解除 */
        background: #ff0000;
        display: inline-block;
        padding: 2px 7px;
        font-weight: normal;
        font-size: 12px;
        white-space: nowrap; /* 改行を防ぐ */
    }
    /* 必須タグの改良 - thの内部に収まるように調整 END */

    #contact input[type="submit"] {
        font-size: 3rem;
    }

    /* input[type="radio"] {
        position: relative;
        -webkit-appearance: button;
        appearance: button;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        width: 20px;
        height: 20px;
        content: "";
        background-color: #ffffff;
        border: 1px solid #999999;
        -webkit-border-radius: 24px;
        border-radius: 24px;
        -webkit-box-shadow: inset 4px 4px 10px rgba(0, 0, 0, 0.2);
        box-shadow: inset 4px 4px 10px rgba(0, 0, 0, 0.2);
        vertical-align: middle;
        cursor: pointer;
    }

    input[type="radio"]:checked:after {
        display: block;
        position: absolute;
        top: 3px;
        left: 3px;
        content: "";
        width: 12px;
        height: 12px;
        background: #f4357d;
        -webkit-border-radius: 12px;
        border-radius: 12px;
    } */

    #contact input[type="submit"] {
        padding: 10px 40%;
        font-size: 16px;
    }

    /* Contact Form7 */
    /* #contact .wpcf7-list-item {
        margin: 0 0 0 0.2em;
    }

    #contact .wpcf7-checkbox {
        display: flex;
        flex-wrap: wrap;
    }

    #contact input[type="checkbox"] + span {
        cursor: pointer;
        display: inline-block;
        padding: 0 0 0 2.3rem;
        position: relative;
        width: auto;
    }

    #contact input[type="checkbox"] + span::before {
        background: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%);
        border: 1px solid #aaaaaa;
        content: "";
        display: block;
        height: 26px;
        left: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 26px;
    }

    #contact input[type="checkbox"] + span::after {
        border-bottom: 0.3rem solid #99cc00;
        border-right: 0.3rem solid #99cc00;
        content: "";
        display: block;
        height: 1.1rem;
        left: 0.5rem;
        margin-top: -0.7rem;
        opacity: 0;
        position: absolute;
        top: 50%;
        transform: rotate(45deg);
        width: 0.8rem;
    }

    #contact input[type="checkbox"]:checked + span::after {
        opacity: 1;
    }

    #contact input[type="radio"] + span::before {
        position: relative;
        -webkit-appearance: button;
        appearance: button;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        width: 20px;
        height: 20px;
        content: "";
        background-color: #ffffff;
        border: 1px solid #999999;
        -webkit-border-radius: 24px;
        border-radius: 24px;
        -webkit-box-shadow: inset 4px 4px 10px rgba(0, 0, 0, 0.2);
        box-shadow: inset 4px 4px 10px rgba(0, 0, 0, 0.2);
        vertical-align: middle;
        cursor: pointer;

        display: inline-block;
    }

    #contact input[type="radio"]:checked + span::before {
        background-color: #f4357d;
        box-shadow: inset 0 0 0 0.2rem #fff;
    }

    #contact table label span {
        display: flex;
        align-items: flex-start;
        gap: 10px;
    } */
}

@media (min-width: 940px) {
    .entry-voice li {
        display: inline-block;
        vertical-align: top;
        height: 340px;
        width: 470px;
        box-sizing: border-box;
        padding: 20px 40px 30px;
    }

    .entry-voice li:nth-child(2n) {
        margin-left: 24px;
    }

    .ad-staff01,
    .ad-staff02 {
        position: relative;
        width: 100%;
    }

    .ad-staff01 .txt,
    .ad-staff02 .txt {
        position: absolute;
        width: 575px;
        min-height: 360px;
        padding: 70px 50px;
        box-sizing: border-box;
        border-radius: 8px;
    }

    .ad-staff01 h3,
    .ad-staff02 h3 {
        font-size: 26px;
        line-height: 38px;
        margin-bottom: 10px;
    }

    .ad-staff01 .txt p,
    .ad-staff02 .txt p {
        font-size: 16px;
        line-height: 30px;
    }

    .ad-staff01 .photo img,
    .ad-staff02 .photo img {
        border-radius: 8px;
        overflow: hidden;
        max-width: 480px;
        width: 100%;
    }

    .ad-staff01 {
        margin: 100px 0px 50px;
    }

    .ad-staff01 .txt {
        top: 50px;
        right: 0;
    }

    .ad-staff02 {
        margin: 120px 0px 250px;
    }

    .ad-staff02 .txt {
        top: 50px;
        left: 0;
    }

    .ad-staff02 .photo {
        text-align: right;
    }

    .program-flow table {
        font-size: 16px;
        line-height: 30px;
        width: 880px;
        margin: 0 auto 50px;
    }

    .list-program-style li {
        width: 280px;
        display: inline-block;
        vertical-align: top;
        padding: 20px 30px 40px;
        min-height: 440px;
    }

    .office-intro01 .news {
        float: right;
    }

    .office-intro01 .photo {
        float: left;
        width: 460px;
    }
    .office-intro01 .photo img {
        border-radius: 12px;
    }

    .fukidashi-right:after {
        display: none;
    }
}

.recruite-area {
    padding: 70px 0 0 0;
}

.recruite-area dl {
    display: table;
    margin: 0 0 1px 0;
}

.recruite-area dt {
    display: table-cell;
    width: 240px;
    background: #27ad3a;
    color: #fff;
    padding: 30px;
    font-weight: bold;
}

.recruite-area dd {
    display: table-cell;
    background: #f8f6f7;
    padding: 30px;
    width: 730px;
}

@media (max-width: 736px) {
    .recruite-area {
        padding: 10px 0 50px 0;
    }

    .recruite-area dl {
        display: block;
        margin: 0 0 1px 0;
    }

    .recruite-area dt {
        display: block;
        width: 100%;
        padding: 10px;
        font-size: 1rem;
    }

    .recruite-area dd {
        display: block;
        background: #f8f6f7;
        padding: 15px;
        width: 100%;
    }
}

/**************************************

リワークページ

**************************************/

article.re-work {
    line-height: 1.6;
}
article.re-work p {
    margin-bottom: 1em;
}
article.re-work section {
    width: 100%;
}

article.re-work .sec-title-wrap {
    text-align: center;
}

article.re-work .sec-title {
    display: inline-block;
    text-align: center;
    font-size: 36px;
    line-height: 1.5;
    margin: 40px auto;
    padding: 0 120px;
    background:
        url(../img/page/ico_point01.png) no-repeat left center,
        url(../img/page/ico_point02.png) no-repeat right center;
    background-size: 30px;
}

article.re-work .re-work-program .sec-title {
    background:
        url(../img/page/ico_point01-black.png) no-repeat left center,
        url(../img/page/ico_point02-black.png) no-repeat right center;
    background-size: 30px;
}

article.re-work .sec-title span {
    color: #27ad3a;
}

article.re-work section .inner {
    width: 1000px;
    margin: auto;
    padding: 50px 0;
}

article.re-work h2 span {
    font-size: 60px;
    letter-spacing: 2px;
    font-family: "Oswald", "Noto Sans JP", sans-serif;
}

article.re-work h2 span.ja {
    font-size: 44px;
}

article.re-work section.main-vis {
    width: 100%;
    margin: 40px auto 0;
    background: url(../img/common/bg_pa01.png) repeat;
    max-width: 1420px;
    padding: 40px 0 0;
    text-align: center;
    position: relative;
}

article.re-work section.main-vis .inner {
    padding: 0;
}

article.re-work section.main-vis .main-vis__title {
    font-size: 32px;
    background: none;
    margin: 0 auto 20px;
    padding: 0;
    text-shadow:
        1px 1px 1px #fff,
        -1px -1px 1px #fff,
        -1px 1px 1px #fff,
        1px -1px 1px #fff,
        2px 1px 1px #fff,
        -2px -1px 1px #fff,
        -2px 1px 1px #fff,
        2px -1px 1px #fff,
        1px 2px 1px #fff,
        -1px -2px 1px #fff,
        -1px 2px 1px #fff,
        1px -2px 1px #fff,
        2px 2px 1px #fff,
        -2px -2px 1px #fff,
        -2px 2px 1px #fff,
        2px -2px 1px #fff,
        3px 1px 1px #fff,
        -3px -1px 1px #fff,
        -3px 1px 1px #fff,
        3px -1px 1px #fff,
        3px 2px 1px #fff,
        -3px -2px 1px #fff,
        -3px 2px 1px #fff,
        3px -2px 1px #fff,
        1px 3px 1px #fff,
        -1px -3px 1px #fff,
        -1px 3px 1px #fff,
        1px -3px 1px #fff,
        2px 3px 1px #fff,
        -2px -3px 1px #fff,
        -2px 3px 1px #fff,
        2px -3px 1px #fff,
        3px 3px 1px #fff,
        -3px -3px 1px #fff,
        -3px 3px 1px #fff,
        3px -3px 1px #fff;
}

article.re-work section.main-vis .main-vis__title span {
    font-size: 44px;
    color: #27ad3a;
}

article.re-work section.main-vis .baloon {
    position: absolute;
    font-size: 24px;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
}

article.re-work section.main-vis .main-vis__box {
    text-align: center;
    position: relative;
    padding-top: 30px;
}

article.re-work section.main-vis .baloon-1 {
    background: url(../img/re-work/bg_baloon1.png) no-repeat center;
    left: 120px;
    top: 0;
    padding: 64px 50px;
}

article.re-work section.main-vis .baloon-2 {
    background: url(../img/re-work/bg_baloon2.png) no-repeat center;
    right: 60px;
    top: 20px;
    padding: 82px 60px;
}

article.re-work section.main-vis .baloon-3 {
    background: url(../img/re-work/bg_baloon3.png) no-repeat center;
    background-size: 100% auto;
    left: 50px;
    bottom: 130px;
    padding: 92px 60px;
}

article.re-work section.main-vis .baloon-4 {
    background: url(../img/re-work/bg_baloon4.png) no-repeat center;
    right: 80px;
    bottom: 110px;
    padding: 54px 40px;
}

article.re-work section.main-vis p.lead {
    font-size: 32px;
    font-weight: bold;
    position: absolute;
    bottom: 0;
    text-shadow:
        1px 1px 1px #fff,
        -1px -1px 1px #fff,
        -1px 1px 1px #fff,
        1px -1px 1px #fff,
        2px 1px 1px #fff,
        -2px -1px 1px #fff,
        -2px 1px 1px #fff,
        2px -1px 1px #fff,
        1px 2px 1px #fff,
        -1px -2px 1px #fff,
        -1px 2px 1px #fff,
        1px -2px 1px #fff,
        2px 2px 1px #fff,
        -2px -2px 1px #fff,
        -2px 2px 1px #fff,
        2px -2px 1px #fff,
        3px 1px 1px #fff,
        -3px -1px 1px #fff,
        -3px 1px 1px #fff,
        3px -1px 1px #fff,
        3px 2px 1px #fff,
        -3px -2px 1px #fff,
        -3px 2px 1px #fff,
        3px -2px 1px #fff,
        1px 3px 1px #fff,
        -1px -3px 1px #fff,
        -1px 3px 1px #fff,
        1px -3px 1px #fff,
        2px 3px 1px #fff,
        -2px -3px 1px #fff,
        -2px 3px 1px #fff,
        2px -3px 1px #fff,
        3px 3px 1px #fff,
        -3px -3px 1px #fff,
        -3px 3px 1px #fff,
        3px -3px 1px #fff;
}

article.re-work section.main-vis p.lead span {
    font-size: 42px;
    color: #27ad3a;
}

article.re-work .reliefs-boxes {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

article.re-work .reliefs-boxes .reliefs-box {
    width: 300px;
    text-align: center;
    border: 3px solid #27ad3a;
    border-radius: 10px;
    margin: 0 0 56px;
    padding: 20px 20px 10px;
    font-weight: bold;
}

article.re-work .reliefs-box__title {
    font-size: 24px;
    font-weight: bold;
    font-family: "Oswald", "Noto Sans JP", sans-serif;
    color: #27ad3a;
    line-height: 1;
    margin: 0 0 12px;
    padding: 0 0 12px;
    display: inline-block;
    position: relative;
}

article.re-work .reliefs-box__title::after {
    content: "";
    position: absolute;
    width: 50px;
    height: 3px;
    bottom: 0;
    left: 50%;
    margin-left: -25px;
    background: #ff9914;
}

article.re-work .reliefs-box__title span {
    font-size: 40px;
}

article.re-work .reliefs-detail {
    border: 3px solid #27ad3a;
    border-radius: 10px;
    margin: 0 0 40px;
}

article.re-work .reliefs-detail__title {
    padding: 20px 40px 30px;
    background: url(../img/common/bg_pa03_right.png) repeat;
    border-radius: 10px 10px 0 0;
}

article.re-work .reliefs-detail__body {
    padding: 20px 40px;
    display: flex;
    flex-wrap: wrap;
}

article.re-work .reliefs-detail__img-box {
    width: 300px;
    margin-right: 30px;
}

article.re-work .reliefs-detail__img-box img {
    border-radius: 10px;
}

article.re-work .reliefs-detail__txt-box {
    width: calc(100% - 330px);
}

article.re-work .reliefs-detail__title {
    font-size: 24px;
    font-weight: bold;
}

article.re-work .reliefs-detail__title .reason {
    margin-right: 10px;
    font-family: "Oswald", "Noto Sans JP", sans-serif;
    color: #27ad3a;
    position: relative;
    display: block;
    margin: 0 0 10px;
}

article.re-work .reliefs-detail__title .reason::after {
    content: "";
    position: absolute;
    width: 169px;
    height: 4px;
    bottom: 0;
    left: 0;
    background: #ff9914;
}

article.re-work .reliefs-detail__title .reason span {
    font-size: 40px;
}

article.re-work .reliefs-detail .e-larning {
    background: url(../img/common/bg_pa01.png) repeat;
    margin: 20px 0;
    padding: 20px 15px;
}

article.re-work .reliefs-detail .e-larning__title {
    font-size: 21px;
    font-weight: bold;
    color: #27ad3a;
    position: relative;
    padding-left: 60px;
    margin-bottom: 20px;
    width: 100%;
}

article.re-work .reliefs-detail .e-larning__title span.small {
    font-size: 14px;
}

article.re-work .reliefs-detail .e-larning__title .free {
    display: block;
    float: left;
    background: #f39800;
    color: #fff;
    line-height: 1.2;
    font-size: 10px;
    text-align: center;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    padding-top: 4px;
    margin: auto;
    top: -5px;
    bottom: 0;
    left: 0;
    box-sizing: border-box;
}

article.re-work .reliefs-detail .e-larning ul li {
    background: #fff;
    border-radius: 50px;
    font-size: 14px;
    font-weight: bold;
    margin: 0 3px 10px;
    padding: 2px 10px;
    display: inline-block;
}

article.re-work .reliefs-detail .e-larning ul {
    margin: 0;
}

article.re-work .reliefs-detail .e-larning ul li::before {
    display: none;
}

article.re-work .reliefs-detail .e-larning__title .free::after {
    content: "";
    position: absolute;
    border: transparent solid;
    border-width: 4px 8px;
    border-left-color: #f39800;
    right: -15px;
    top: 50%;
    margin-top: -4px;
}

article.re-work section.re-work-program {
    background: url(../img/common/bg_pa01.png) repeat;
}

article.re-work section.re-work-program .program-boxes {
    background: #fff;
    padding: 40px;
    border-radius: 10px;
}

article.re-work section.re-work-program .program-box {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid #e7e7e7;
}

article.re-work section.re-work-program .program-box:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
}

article.re-work section.re-work-program .program-img {
    width: 300px;
    margin: 0 20px 20px 0;
}

article.re-work section.re-work-program .program-img img {
    border-radius: 10px;
}

article.re-work section.re-work-program .program-txt {
    width: calc(100% - 320px);
}

article.re-work section.re-work-program .program-txt .program-txt__title {
    background: none;
    margin: 0 0 10px;
    padding: 0;
    font-size: 24px;
    color: #27ad3a;
}

article.re-work section.re-work-program .program-txt__catch {
    font-weight: bold;
}

article.re-work section.re-work-program .program-sample {
    border: 1px solid #27ad3a;
    width: 100%;
}

article.re-work section.re-work-program .program-sample p {
    margin: 20px;
}

article.re-work section.re-work-program .program-sample.orange {
    border: 1px solid #ffe74c;
    margin: 20px 0 0;
}

article.re-work section.re-work-program .program-sample.orange .program-sample__title {
    background: #fffce6;
    color: #f39800;
}

article.re-work section.re-work-program .program-sample__title {
    padding: 12px;
    background: #f0f5f8;
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    color: #000;
    background: url(../img/common/bg_pa03_right.png) repeat;
}

article.re-work section.re-work-program .program-sample ul {
    margin: 20px;
}

article.re-work section.re-work-program .program-sample ul li {
    display: inline-block;
    padding: 0;
}

article.re-work section.re-work-program .program-sample ul li::before {
    content: "・";
    position: relative;
    width: auto;
    height: auto;
    left: auto;
    top: auto;
    transform: none;
    background: none;
}

article.re-work section.re-work-program .e-larning {
    background: url(../img/common/bg_pa01.png) repeat;
    margin: 20px;
    padding: 20px 15px;
}

article.re-work section.re-work-program .e-larning__title {
    font-size: 21px;
    font-weight: bold;
    color: #27ad3a;
    position: relative;
    padding-left: 60px;
    margin-bottom: 20px;
    width: 100%;
}

article.re-work section.re-work-program .e-larning__title span.small {
    font-size: 14px;
}

article.re-work section.re-work-program .e-larning__title .free {
    display: block;
    float: left;
    background: #f39800;
    color: #fff;
    line-height: 1.2;
    font-size: 10px;
    text-align: center;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    padding-top: 4px;
    margin: auto;
    top: -5px;
    bottom: 0;
    left: 0;
    box-sizing: border-box;
}

article.re-work section.re-work-program .program-sample .e-larning ul li {
    background: #fff;
    border-radius: 50px;
    font-size: 14px;
    font-weight: bold;
    margin: 0 3px 10px;
    padding: 2px 10px;
    display: inline-block;
}

article.re-work section.re-work-program .program-sample .e-larning ul {
    margin: 0;
}

article.re-work section.re-work-program .program-sample .e-larning ul li::before {
    display: none;
}

article.re-work section.re-work-program .e-larning__title .free::after {
    content: "";
    position: absolute;
    border: transparent solid;
    border-width: 4px 8px;
    border-left-color: #f39800;
    right: -15px;
    top: 50%;
    margin-top: -4px;
}

article.re-work section.re-work-program .lunch-box {
    margin: 40px auto;
    padding: 40px;
    background: #fff;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

article.re-work section.re-work-program .lunch-box__txt-box {
    width: 420px;
}

article.re-work section.re-work-program .lunch-box__txt-box p {
    margin-bottom: 1em;
}

article.re-work section.re-work-program .lunch-box__img-box {
    width: 450px;
    position: relative;
}

article.re-work section.re-work-program .lunch-box__title {
    font-size: 24px;
    font-weight: bold;
    color: #27ad3a;
}

article.re-work section.qa .qa-q {
    color: #27ad3a;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
    padding-top: 6px;
    padding-left: 56px;
    background: url(../img/re-work/icon_Q.svg) no-repeat left center;
    background-size: 42px auto;
}

article.re-work section.qa .qa-a {
    padding-left: 56px;
    background: url(../img/re-work/icon_A.svg) no-repeat left 0;
    background-size: 42px auto;
    margin: 20px 0 25px;
    padding-bottom: 20px;
    border-bottom: 1px solid #faf9f7;
}

article.re-work section.qa .qa-a a {
    color: #0400ff;
    font-weight: bold;
    border-bottom: 1px solid #0400ff;
}

article.re-work section.qa .qa-a:last-child {
    border-bottom: 0;
}

article.re-work-users section .inner {
    border: 2px solid #ee4266;
    padding: 40px;
    max-width: 1000px;
    margin: 0 auto 100px;
}

article.re-work-users section .inner .re-work-users__title {
    font-size: 24px;
    color: #ee4266;
    background: none;
    padding: 0;
    margin: 0 0 40px;
    line-height: 1.5;
}

article.re-work-users section .inner .re-work-users__title span {
    font-size: 18px;
}

article.re-work-users section .inner ol {
    margin: 40px auto 0;
    list-style: decimal;
}

article.re-work-users section .inner ol li {
    margin-left: 36px;
}

article.re-work-users section .inner ol li::before {
    background: #fff;
    color: #000;
    border: 1px solid #555;
}

@media (max-width: 768px) {
    article.re-work .sec-title {
        display: block;
        padding: 0 30px;
        font-size: 24px;
        line-height: 1.5;
        background-size: 18px;
    }

    article.re-work .re-work-program .sec-title {
        background-size: 18px;
    }

    article.re-work section .inner {
        width: auto;
        padding: 15px;
    }

    article.re-work section.main-vis .inner {
        padding: 15px;
    }

    article.re-work h2 span.ja {
        font-size: 28px;
    }

    article.re-work h2 span {
        font-size: 36px;
    }

    article.re-work section.main-vis .main-vis__title {
        font-size: 18px;
        line-height: 1.6;
    }

    article.re-work section.main-vis .main-vis__title span {
        font-size: 24px;
    }

    article.re-work section.main-vis .main-vis__box {
        padding: 0 20px;
    }

    article.re-work section.main-vis .main-vis__box img {
        width: 200px;
    }

    article.re-work section.main-vis .baloon {
        font-size: 4vw;
        padding: 40px;
        background-size: contain;
    }

    article.re-work section.main-vis .baloon-1 {
        left: 0;
        padding: 7vw;
    }

    article.re-work section.main-vis .baloon-2 {
        right: 0vw;
        top: auto;
        bottom: 20px;
        padding: 12vw;
        font-size: 3.6vw;
    }

    article.re-work section.main-vis .baloon-3 {
        left: 4vw;
        bottom: 30px;
        padding: 7vw;
    }

    article.re-work section.main-vis .baloon-4 {
        padding: 6vw;
        right: 1vw;
        top: 0;
        bottom: auto;
    }

    article.re-work section.main-vis p.lead {
        font-size: 18px;
        padding: 0;
        position: relative;
    }

    article.re-work section.main-vis p.lead span {
        font-size: 28px;
    }

    article.re-work .reliefs-boxes .reliefs-box {
        width: calc(50% - 6px);
        padding: 10px;
        margin: 0 0 12px;
    }

    article.re-work .reliefs-boxes .reliefs-box .reliefs-box__title {
        font-size: 18px;
    }

    article.re-work .reliefs-boxes .reliefs-box .reliefs-box__title span {
        font-size: 24px;
    }
    article.re-work .reliefs-detail__title .reason::after {
        width: 125px;
    }
    article.re-work .reliefs-boxes .reliefs-box p {
        margin: 10px auto 0;
    }

    article.re-work .reliefs-detail__title {
        padding: 20px;
        font-size: 20px;
    }

    article.re-work .reliefs-detail .reliefs-detail__title .reason {
        display: block;
        font-size: 18px;
    }

    article.re-work .reliefs-detail .reliefs-detail__title .reason span {
        font-size: 25px;
    }

    article.re-work .reliefs-detail__body {
        padding: 20px;
    }

    article.re-work .reliefs-detail__img-box {
        width: auto;
        max-width: 100%;
        margin: auto;
    }

    article.re-work .reliefs-detail__txt-box {
        width: auto;
    }

    article.re-work .reliefs-detail .e-larning {
        margin-top: 60px;
    }

    article.re-work .reliefs-detail .e-larning__title {
        padding: 30px 0 0;
        font-size: 18px;
    }

    article.re-work .reliefs-detail .e-larning__title .free {
        top: -60px;
        bottom: auto;
        left: 0;
        right: 0;
        width: 80px;
        height: 80px;
        font-size: 14px;
    }

    article.re-work .reliefs-detail .e-larning__title .free::after {
        border-left-color: transparent;
        border-top-color: #f39800;
        border-width: 6px 6px;
        right: auto;
        left: 50%;
        margin: auto;
        bottom: -11px;
        top: auto;
        margin-left: -6px;
    }

    article.re-work section.re-work-program .program-boxes {
        padding: 20px;
    }

    article.re-work section.re-work-program .program-img {
        width: auto;
        margin: 0 auto 20px;
    }

    article.re-work section.re-work-program .program-txt {
        width: auto;
    }

    article.re-work section.re-work-program .program-txt .program-txt__title {
        font-size: 20px;
    }

    article.re-work section.re-work-program .program-sample__title {
        font-size: 16px;
        padding: 10px;
    }

    article.re-work section.re-work-program .e-larning {
        margin-top: 60px;
    }

    article.re-work section.re-work-program .e-larning__title {
        padding: 30px 0 0;
        font-size: 18px;
    }

    article.re-work section.re-work-program .e-larning__title .free {
        top: -60px;
        bottom: auto;
        left: 0;
        right: 0;
        width: 80px;
        height: 80px;
        font-size: 14px;
    }

    article.re-work section.re-work-program .e-larning__title .free::after {
        border-left-color: transparent;
        border-top-color: #ffe74c;
        border-width: 6px 6px;
        right: auto;
        left: 50%;
        margin: auto;
        bottom: -11px;
        top: auto;
        margin-left: -6px;
    }

    article.re-work section.re-work-program .lunch-box {
        padding: 20px;
    }

    article.re-work section.re-work-program .lunch-box__title {
        font-size: 20px;
    }

    article.re-work section.qa .qa-q {
        font-size: 18px;
        background-size: 34px auto;
        padding-left: 42px;
    }

    article.re-work section.qa .qa-a {
        background-size: 34px auto;
        padding-left: 42px;
    }

    article.re-work-users section .inner {
        padding: 20px;
        width: calc(100% - 30px);
    }

    article.re-work-users section .inner .re-work-users__title {
        font-size: 24px;
        margin: 0 0 20px;
    }

    article.re-work-users section .inner .re-work-users__title span {
        font-size: 16px;
        line-height: 1.6;
        display: inline-block;
    }

    article.re-work-users section .inner ol {
        margin: 20px 0;
    }

    article.re-work-users section .inner ol li {
        margin: 0 0 0 18px;
    }

    article.re-work-users section .inner ol li::before {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 0 1px 1px;
    }
}

.page-voice h2 {
    font-size: 24px;
    line-height: 1.6;
    margin: 100px 0 20px;
    padding: 0 0 0 50px;
    color: #27ad3a;
    position: relative;
}

.page-voice p {
    line-height: 2;
    margin-bottom: 1em;
    padding-left: 50px;
}

.page-voice {
    margin: 0 0 100px;
}

.page-voice h2::before {
    content: "リアルボイス";
    position: absolute;
    left: -10px;
    top: -26px;
    transform: rotate(-15deg);
    color: #ff9914;
    font-size: 14px;
    background: #fff;
    border: 1px solid;
    padding: 5px 15px;
}

@media (max-width: 768px) {
    .page-voice h2 {
        margin: 70px 0 10px;
        padding: 0 0 0 30px;
        font-size: 20px;
    }

    .page-voice h2::before {
        transform: rotate(-10deg);
        top: -30px;
        font-size: 12px;
        left: -5px;
    }

    .page-voice p {
        padding-left: 30px;
    }
}

/* 202508 スタイル調整 START */
.p-office-mv {
    background: url(../img/top/bg_main02.png) no-repeat;
    width: 100%;
    padding: 63px 0px 100px;
    background-size: cover;
    background-position: 0% 0%;

    position: relative;
}

.p-office-mv__inner {
    max-width: 1207px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-left: 30px;
    padding-right: 30px;
}

.p-office-mv__container {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 45px;
}

.p-office-mv__leftBlock {
}

.p-office-mv__imageWrap {
    max-width: 510px;
    width: 100%;
}

.p-office-mv__imageWrap img {
    width: 100%;
    aspect-ratio: 510/460;
    object-fit: cover;
    height: auto;
}

.p-office-mv__rightBlock {
    width: 60%;
}

.p-office-mv__officeName {
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0em;
    line-height: calc(50 / 22);
    width: fit-content;
    padding: 0px 14px;
}

.p-office-mv__officeName--takada {
    color: #ff9914;
    border: 2px solid #ff9914;
    border-radius: 8px;
}
.p-office-mv__officeName--oimachi {
    color: #ee4266;
    border: 2px solid #ee4266;
    border-radius: 8px;
}
.p-office-mv__officeName--kobenagata {
    color: #009585;
    border: 2px solid #009585;
    border-radius: 8px;
}

.p-office-mv__description {
    font-size: 40px;
    font-weight: bold;
    letter-spacing: 0em;
    line-height: calc(54 / 40);

    margin-top: 23px;
}

.p-office-mv__achievementsWrap {
    display: flex;
    align-items: center;
    justify-content: flex-start;

    gap: 27px;
    margin-top: 28px;
}

.p-office-mv__achievementContainer {
    position: relative;
    width: 240px;
    height: 240px;
    border-radius: 100%;
}

.p-office-mv__achievement {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 18px;
    gap: 7px;

    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    color: #fff;

    max-width: 160px;
    width: 100%;
}

.p-office-mv__achievement--left {
    background: #ff9914;
}

.p-office-mv__achievementTitle {
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0em;
    line-height: 1.3;

    text-align: center;
}

.p-office-mv__achievementValue {
    font-size: 48px;
    font-weight: bold;
    line-height: calc(50 / 48);
    letter-spacing: 0;

    margin-top: 5px;

    position: relative;
}

.p-office-mv__achievementValue::before {
    position: absolute;
    content: "";
    z-index: -1;
    width: 100%;
    height: 11px;
    background: #ffc63f;
    bottom: 3px;
    left: 0;
    opacity: 0.6;
}

.p-office-mv__achievementUnit {
    font-size: 36px;
    font-weight: bold;
    line-height: calc(50 / 36);
    letter-spacing: 0;
}

.p-office-mv__achievementInfo {
    font-size: 16px;
    text-align: center;
    line-height: calc(20 / 16);
    letter-spacing: 0;

    margin-top: 7px;
}

.p-office-mv__achievement--right {
    background: #ff7514;
}

.p-office-nav {
    background: #0c891e;
    margin-top: 30px;
    border-radius: 8px;
}

.p-office-nav__inner {
    padding: 25px 73px;
}

.p-office-nav__container {
}

.p-office-nav__items {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px 0;
}

.p-office-nav__item {
    padding: 0 9px;
}

.p-office-nav__item:nth-child(n + 1) {
    border-right: 1px solid #fff;
}

.p-office-nav__item:last-child {
    border-right: none;
}

.p-office-nav__link {
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    transition: 0.3s all;
}

.p-office-nav__link:hover {
    opacity: 0.8;
}

.p-office-blog {
    margin-top: 37px;
}

.p-office-blog__inner {
    max-width: 1260px;
    width: 100%;
    margin: 0 auto;
    padding: 80px 40px;
    padding: 80px 0;
}

.p-office-blog__contentsWrap {
}

.p-office-blog__contents {
    /* display: flex;
  align-items: center;
  justify-content: center; */

    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.p-office-blog__content {
    /* max-width: 395px; */
    width: 100%;
    padding: 0 30px;
    padding: 0 clamp(0.625rem, -3.106rem + 7.78vw, 1.875rem);

    grid-row: span 3;
    display: grid;
    grid-template-rows: subgrid;
    gap: 10px;
}

.p-office-blog__content:first-child {
    border-left: none;
}

.p-office-blog__content:nth-child(n + 2) {
    border-left: 2px dotted #bbbbbb;
}

.p-office-blog__btn {
    margin-top: 33px;
}

.p-office-blog__btn .btn-link {
    max-width: 334px;
    width: 100%;
}

.p-office-blog__btn .btn-link:hover {
    text-decoration: none;
}

.p-office-blog__contentLink {
    transition: 0.3s all;
    border-radius: 10px;
}

.p-office-blog__contentLink:hover {
    opacity: 0.8;
}

.p-office-blog__contentThumbnailArea {
    position: relative;
    border-radius: 10px;
}

.p-office-blog__contentThumbnail {
    width: 100%;
    aspect-ratio: 335/200;
    object-fit: cover;
    height: auto;
    border-radius: 10px;
    transition: transform 0.8s;
}

.p-office-blog__content:hover .p-office-blog__contentThumbnail {
    transform: scale(1.2);
}

.p-office-blog__contentOfficeName {
    position: absolute;
    content: "";
    background: #fff8ee;
    width: fit-content;
    height: auto;

    font-size: 14px;
    font-weight: bold;
    line-height: calc(21 / 14);
    letter-spacing: 0;

    border-top-left-radius: 8px;
    border-bottom-right-radius: 8px;

    padding: 8px;

    top: 0;
    left: 0;
}

.p-office-blog__contentOfficeName--takadanobaba {
    background: #fff8ee;
    color: #ff9914;
}
.p-office-blog__contentOfficeName--oimachi {
    color: #ee4266;
    background: #fef2f4;
}
.p-office-blog__contentOfficeName--kobenagata {
    color: #009585;
    background: #d2fffa;
}

.p-office-blog__contentBlock {
    display: flex;
    align-items: center;
    gap: 20px;
}

.p-office-blog__contentDate {
    font-size: 14px;
}

.p-office-blog__contentCat {
    font-size: 12px;
    transition: 0.3s all;

    padding: 2px 8px;
    border-radius: 100vh;
}

.p-office-blog__contentCat:hover {
    text-decoration: none;
    opacity: 0.8;
}

.p-office-blog__contentTitle {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0;

    transition: 0.3s all;
}

.p-office-blog__contentTitle:hover {
    text-decoration: none;
    opacity: 0.8;
}

.office-voices {
    margin-top: 34px;
    margin-bottom: 60px;
}

.office-voices__inner {
}

.office-voices__container {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(3, 1fr);
}

.office-voices__block {
    border: 4px solid #eeeeee;
    border-radius: 10px;
    padding: 25px;
}

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

.office-voices__imageArea img {
    max-width: 150px;
    width: 100%;
    aspect-ratio: 150/150;
    object-fit: contain;
    height: auto;
}

.office-voices__name {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0em;
    line-height: 1.2;
    color: #fff;
    background: #0c891e;
    border-radius: 100vh;
    text-align: center;

    /*     padding: 6px 12px; */
    padding: 6px;
    padding-left: 25px;
    margin-top: 20px;
    max-width: 250px;
    width: 100%;
}

.office-voices__info {
    margin-top: 15px;
}

.office-voices__block02 {
    display: flex;
    align-items: center;

    gap: 11px;
}

.office-voices__blockHeading {
    max-width: 60px;
    width: 100%;

    font-weight: bold;
    line-height: calc(22 / 16);
    color: #0c891e;
}

.office-voices__blockValue {
}

.office-voices__title {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0em;
    line-height: calc(24 / 18);

    margin-top: 21px;
}

.office-voices__description {
    font-size: 16px;
    letter-spacing: 0em;
    line-height: calc(21 / 16);
    line-height: 1.5;
    margin-top: 21px;
}

.p-office-mv__container.u-sp {
    display: none;
}

.c-contact__telephoneNum:hover {
    text-decoration: none;
    /* opacity: 0.8; */
}

/* 20250921 就職者の声スタイル調整 START */
.p-voices {
    margin-top: 34px;
    margin-bottom: 60px;
}

.p-voices__inner {
}

.p-voices__container {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(3, 1fr);
}

.p-voices__block {
    border: 4px solid #eeeeee;
    border-radius: 10px;
    padding: 25px;
    margin-top: 50px;
}

.p-voices__upperWrap {
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
    gap: 20px;
}

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

.p-voices__imageArea img {
    max-width: 150px;
    width: 100%;
    aspect-ratio: 150/150;
    object-fit: contain;
    height: auto;
}

.p-voices__infoArea {
    width: 80%;
}

.p-voices__infoNameWrap {
    display: flex;
    align-items: center;
    gap: 20px;
}

.p-voices__name {
    /* font-size: 24px;
    font-weight: bold;
    letter-spacing: 0em;
    line-height: 1.2;
    color: #fff;
    background: #0c891e;
    border-radius: 100vh;
    text-align: center;

    padding: 6px 12px;

    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 250px;
    width: 100%; */

    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0em;
    line-height: 1;
    color: #fff;
    background: #0c891e;
    border-radius: 100vh;
    text-align: center;
    /*     padding: 15px; */
    padding: 15px 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 250px;
    width: 100%;

    padding-left: 24px;
}

.p-voices__info {
    /* margin-top: 15px; */
    max-width: 300px;
    width: 100%;
}

.p-voices__block02 {
    display: flex;
    align-items: baseline;

    gap: 11px;
}

.p-voices__block02:last-child {
    margin-top: 5px;
}

.p-voices__blockHeading {
    max-width: 70px;
    width: 100%;

    font-weight: bold;
    line-height: calc(22 / 16);
    color: #0c891e;
}

.p-voices__blockHeading,
.p-voices__blockValue {
    font-size: 16px;
}

.p-voices__title {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0em;
    line-height: calc(24 / 18);

    margin-top: 21px;
}

.p-voices__descTitle {
    margin-top: 30px;
    /* font-size: 16px; */
    font-size: 20px;
    font-weight: 700;
    line-height: 1.6;
    color: #27ad3a;
}

.p-voices__description {
    font-size: 18px;
    font-size: 14px;
    letter-spacing: 0em;
    line-height: calc(21 / 16);
    line-height: 1.5;

    margin-top: 10px;
}

.p-voices__description .p-voices__subHeading {
    color: #ff9914;
    font-size: 16px;
    font-weight: 700;
    display: block;
    padding-bottom: 5px;
}

@media (max-width: 990px) {
    .office-voices__name {
        font-size: 20px;
        max-width: 100%;
    }

    .office-voices__block {
        padding: 10px;
    }
}

/* 20250921 就職者の声スタイル調整 END */

@media (max-width: 939px) {
    .p-office-nav__inner {
        padding: 29px 26px;
        padding: 15px 13px;
    }

    .p-office-mv {
        background: url(../img/top/bg_main03.png) no-repeat;
        background-position: 0% 0%;
        background-size: cover;
    }
    .p-office-mv__container.u-pc {
        display: none;
    }

    .p-office-mv__container.u-sp {
        display: flex;
    }

    .p-office-mv__container {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 0;
    }

    .p-office-mv__description {
        margin-top: 13px;
    }

    .p-office-mv__imageWrap {
        margin-top: 28px;
    }

    .p-office-mv__imageWrap img {
        aspect-ratio: 694/253;
        object-fit: cover;
        height: auto;
    }

    .p-office-mv__achievementsWrap {
        margin-top: 25px;
    }

    .p-office-mv__officeName--takada {
        /* border: 3px solid #ff9914; */
        border-radius: 14px;
        border-radius: 10px;
    }
}

@media (max-width: 790px) {
    .office-voices__name {
        font-size: 18px;
    }

    .office-voices__title {
        font-size: 16px;
    }

    .office-voices__description {
        font-size: 14px;
    }
}

@media (max-width: 767px) {
    .p-office-mv {
        padding-top: 17px;
        padding-bottom: 16px;
    }
    .p-office-mv__inner {
        padding-left: 10px;
        padding-right: 10px;
        padding-left: 5px;
        padding-right: 5px;
    }

    .p-office-nav__items {
        justify-content: flex-start;
    }
    .p-office-mv__officeName {
        font-size: 24px;
        font-size: 14px;
    }
    .p-office-mv__description {
        font-size: 22px;
    }

    .p-office-mv__description p:nth-child(3) {
        padding-left: 15px;
    }

    .p-office-mv__achievementContainer {
        width: 120px;
        height: 120px;
    }
    .p-office-mv__achievement {
        gap: 5px;
    }
    .p-office-mv__achievementTitle {
        font-size: 11px;
    }
    .p-office-mv__achievementValue {
        font-size: 22px;
        margin-top: 0;
    }
    .p-office-mv__achievementValue::before {
        height: 5px;
        bottom: 2px;
    }

    .p-office-mv__achievementUnit {
        font-size: 15px;
    }
    .p-office-mv__achievementInfo {
        font-size: 9px;
        margin-top: 0;
    }

    .p-office-nav__link {
        font-size: 14px;
    }

    .p-office-blog__inner {
        padding: 0 30px;
        padding: 0 15px;

        padding-bottom: 40px;
    }

    #page-office .p-office-blog h2 {
        font-size: 40px;
        font-size: 20px;
        font-weight: bold;
        letter-spacing: 0em;
        line-height: calc(52 / 40);

        margin: 0;
        padding-top: 83px;
        padding-top: 41px;
    }

    .p-office-blog__contents {
        gap: 0;
        grid-template-columns: repeat(1, 1fr);
    }

    .p-office-blog__content {
        padding-bottom: 32px;
        max-width: 100%;
        padding-left: 0;
        padding-right: 0;
    }
    .p-office-blog__content:nth-child(n + 2) {
        border-left: none;
        border-top: 2px dotted #bbbbbb;

        padding: 38px 0px;
    }
    .p-office-blog__content:last-child {
        padding-bottom: 0;
    }

    .p-office-blog__contentsWrap {
        margin-top: 38px;
    }

    .office-voices {
        margin-top: 20px;
    }

    .office-voices__container {
        display: grid;
        gap: 15px;
        grid-template-columns: repeat(1, 1fr);
    }

    .office-voices__content {
        display: flex;
        align-items: flex-end;
        align-items: flex-start;
        gap: 10px;
    }

    .office-voices__infoArea {
        width: 100%;
    }
    .office-voices__block {
        padding: 10px;
    }
    .office-voices__name {
        font-size: 15px;
        width: 100%;
    }
    .office-voices__title {
        font-size: 16px;
        margin-top: 10px;
    }
    .office-voices__description {
        font-size: 14px;
        margin-top: 10px;
    }

    .link03 .c-contact__btnLink,
    .link04 .c-contact__btnLink {
        font-size: 18px;
    }

    .link03 .c-contact__btnLink span img {
        max-width: 15px;
    }

    .link04 .c-contact__btnLink span img {
        max-width: 22px;
    }

    .p-voices__block {
        padding: 15px;
    }

    .p-voices__blockHeading,
    .p-voices__blockValue {
        font-size: 14px;
    }

    .p-voices__name {
        font-size: 15px;
        max-width: 100%;
        padding: 8px;
        padding-top: 10px;
        padding-left: 16px;
    }
    .p-voices__infoNameWrap {
        flex-direction: column;
    }

    .p-voices__descTitle {
        margin-top: 30px;
        font-size: 16px;
    }

    .p-voices__description {
        margin-top: 10px;
        font-size: 14px;
    }

    .p-voices__upperWrap {
        gap: 15px;
    }

    .p-voices__block02 {
        align-items: baseline;
        gap: 5px;
    }
}

/* 202508 スタイル調整 END */

/* 202510 スタイル調整 START */
@media (max-width: 767px) {
    #copyright.contact-page {
        padding-bottom: 10px;
    }
}
/* 202510 スタイル調整 END */
