body {
  background-color: #cbf8f128 !important;
}

/*----- スライダー -----*/
.carousel-item img {
    width: 100%;
}

/*----- 写真コンテンツ共通（会社概要、代表者挨拶、事業内容） -----*/
.picture-content {
    margin-top: 7%;
    text-align: center;
    /* 文字間を詰める */
    letter-spacing: -1em;
    /* 自動で折り返ししない */
    white-space: nowrap;
}

.picture-area {
    display: inline-block;
    position: relative;
    max-width: 50%;
    overflow: hidden;
    cursor: pointer;
    letter-spacing: normal;
    /* 文字間を元に戻す */
    white-space: normal;
    /* 自動で折り返し(元に戻す) */
}

.picture-area.ses-service, .picture-area.training-service, .picture-area.consignment-service {
    max-width: 33%;
}

.bg-img {
    transition: .3s ease-in-out;
}

.bg-img::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
}

.bg-img:hover {
    transform: scale(1.1);
    transition: .3s ease-in-out;
}

.bg-img:hover::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.8);
}

img.img-body {
    max-width: 100%;
}

.picture-inner-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    pointer-events: none;
}

.picture-inner-title {
    text-align: center;
    font-size: 30px;
    color: #fff;
    position: relative;
    text-decoration: none;
}

.picture-inner-desc, .hover-text {
    text-align: center;
    font-size: 13px;
    color: #fff;
}

.hover-text {
    display: none;
}

.picture-area:hover .hover-text {
    display: block;
    animation: zoom .3s;
}

@keyframes zoom {
    50% {
        transform: scale(1.15);
    }
}

/*----- 会社プロフィール -----*/
.right-text-area {
    padding-left: 8%;
}

/*----- 会社概要、代表者挨拶 -----*/
.picture-area:hover .picture-inner-title.cm {
    animation: zoom .3s;
}

.picture-area:hover .picture-inner-desc.cm {
    display: none;
}

/*----- 事業内容 -----*/
.service-text {
    width: 85%;
}

.picture-inner-title.sr {
    position: relative;
}

.picture-inner-title.sr::after {
    position: absolute;
    left: 0;
    content: '';
    width: 100%;
    height: 2px;
    background: #fff;
    bottom: -1px;
    transform: scale(0, 1);
    transform-origin: center top;
    transition: transform 0.3s;
}

.picture-area:hover .picture-inner-title.sr::after {
    transform: scale(1, 1);
}

.picture-inner-desc.sr {
    text-align: left;
    font-size: 12px;
    word-break: break-word;
    pointer-events: auto;
}

/*----- 採用情報 -----*/
.btn-content a.btn {
    cursor: pointer;
    padding: 14px 28px;
    margin: 10px 0;
    border: 2px solid;
    color: #1E73BE;
    position: relative;
    z-index: 1;
    overflow: hidden;
    transition: .3s;
}

.btn-content a.btn::before,
.btn-content a.btn::after {
    content: "";
    width: 100%;
    position: absolute;
    top: 0;
    z-index: -1;
    transition: transform ease .3s;
}

.btn-content a.btn::before {
    right: -0px;
    border-right: 60px solid transparent;
    border-bottom: 60px solid #1E73BE;
    transform: translateX(-100%);
}

.btn-content a.btn::after {
    left: -0px;
    border-left: 60px solid transparent;
    border-top: 60px solid #1E73BE;
    transform: translateX(100%);
}

.btn-content a.btn:hover {
    color: #fff;
}

.btn-content a.btn:hover::before {
    transform: translateX(-33%);
}

.btn-content a.btn:hover::after {
    transform: translateX(33%);
}

/*----- スクロールバー -----*/
.scrollbar{
    max-height: 100px;         /* 表示領域の高さを設定*/
    overflow-y: scroll;        /* 縦スクロールを自動表示 */
    padding-right: 5px;        /* スクロールバーとテキストの間に余白 */
}

/*----- レスポンシブ対応 -----*/
@media screen and (max-width: 20000px) {
    .picture-content.service {
        font-size: 0;
    }

    .picture-area.ses-service, .picture-area.training-service {
        max-width: 50%;
    }

    .picture-area.consignment-service {
        display: block;
        max-width: 50%;
        margin: 0 auto;
    }
}

@media screen and (max-width: 658px) {
    .picture-area {
        display: block;
        max-width: 100%;
        margin: 0 auto;
    }

    .picture-area.ses-service, .picture-area.training-service, .picture-area.consignment-service {
        display: block;
        max-width: 100%;
        margin: 0 auto;
    }
}