.banner-home {
    height: 100vh;
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.banner-home::after {
    content: "";
    width: 100%;
    height: 100%;
    /* background-image: url(../images/index/banner.png); */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    top: 0;
    left: 0;
    z-index: -3;
    position: absolute;
}

.banner-home::before {
    content: "";
    width: 100%;
    height: 214px;
    background-image: url(../images/index/after-line.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    bottom: 0;
    left: 0;
    z-index: -2;
    position: absolute;
}

.banner-home .container {
    margin: 0;
    width: 100%;
}

.text-banner-home {
    height: 530px;
    display: flex;
    align-items: flex-end;
    position: relative;
    color: #fff;
    font-family: "Noto Serif JP", sans-serif;
    font-size: 3.5rem;
    padding-bottom: 160px;
    text-shadow: 0px 0px 10px rgba(15, 75, 112, 0.95);
    letter-spacing: 0.2em;
}

.text-banner-home::after {
    content: "";
    width: 950px;
    height: 100%;
    background-image: url(../images/index/bg-text-banner.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    top: 0;
    left: -260px;
    z-index: -1;
    position: absolute;
}

.box-flex-important {
    display: flex;
    align-items: center;
    gap: 20px;
}

.title-important {
    font-size: 1.9rem;
    font-weight: 500;
    text-align: center;
    color: #e81c24;
    letter-spacing: 0.2em;
    display: flex;
    gap: 20px;
    font-family: "Noto Serif JP", serif;
    position: relative;
    top: 3px;
}

.important-item {
    flex: 1;
    display: flex;
    align-items: center;
    padding: 18px 35px;
    border-bottom: 1px solid #e81c24;
    gap: 23px;
    position: relative;
    padding-right: 70px;
}

.title-important img {
    position: relative;
    top: -5px
}

.important-item::after {
    content: "";
    width: 22px;
    height: 9px;
    background-image: url(../images/index/icon-right.svg);
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: 40px;
    top: 50%;
    transform: translateY(-50%);
}

.important-item .date {
    width: auto;
    color: #4d4d4d;
}

.important-item a {
    letter-spacing: 0.1em;
}

.main-title-en {
    font-size: 2rem;
    letter-spacing: 0.1em;
    padding-bottom: 17px;
    border-bottom: 1px solid #0f87bc;
    color: #0f87bc;
    width: -moz-fit-content;
    width: fit-content;
    position: relative;
    margin-bottom: 8px;
    min-width: 170px;
    font-family: "Noto Serif JP", serif;
    font-weight: 200;
}

.main-title-en::after {
    content: "";
    width: 10px;
    height: 10px;
    background-color: #0f87bc;
    border-radius: 50%;
    position: absolute;
    top: 11px;
    left: -26px;
}

.main-title-jp {
    font-size: 3.5rem;
    letter-spacing: 0.2em;
    color: #000;
    font-family: "Noto Serif JP", serif;
}

.news-item.item-list {
    display: flex;
    padding: 15px;
    gap: 20px;
    align-items: flex-start;
    border-bottom: 1px solid #c7c7c7;
    justify-content: flex-start;
    position: relative;
}

.news-item.item-list::after {
    content: "";
    width: 22px;
    height: 9px;
    mask-image: url(../images/index/icon-right.svg);
    -webkit-mask-image: url(../images/index/icon-right.svg);
    mask-size: 100% 100%;
    mask-position: center;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    background-color: #0f87bc;
    position: absolute;
    right: 40px;
    bottom: 31px;
}

.box-news-cont {
    padding-top: 10px;
}

.page-news:not(.single-post) .page-navi {
    border-top: none;
}

body.category #page-navi {
    margin-bottom: 100px;
}

.home-news {
    position: relative;
}

.home-news::after {
    content: "";
    width: 500px;
    height: 428px;
    background-image: url(../images/about/after-3.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    transform: scaleX(-1);
    top: 245px;
    left: -170px;
    z-index: -2;
}

.home-business {
    position: relative;
}

.home-business::after {
    width: 949px;
    height: 531px;
    content: "";
    background-image: url(../images/index/after-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: -115px;
    top: 240px;
    z-index: -3;
}

.img-news {
    width: 170px;
}

.box-news-cont {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.date {
    width: 100px;
    font-size: 1.3rem;
    font-weight: 500;
    color: #666666;
    letter-spacing: 0.05em;
}

.news-item.item-list .title {
    width: 100%;
    margin-top: 13px;
    padding-right: 80px;
}

.news-item.item-list .title a {
    letter-spacing: 0.1em;
    line-height: 1.43;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #333;
}

a.cat {
    font-size: 1.4rem;
    color: #0f87bc;
    font-weight: 500;
    letter-spacing: 0.05em;
}

.news-list a.cat {
    letter-spacing: 0.2em;
}

a.btn.btn-main {
    font-weight: 500;
    letter-spacing: 0.05em;
    min-height: 56px;
    color: #fff;
    border-radius: 28px;
    min-width: 250px;
    background-color: #0f87bc;
    border: 1px solid #0f87bc;
    width: -moz-fit-content;
    width: fit-content;
    padding-left: 40px;
    padding-right: 40px;
    letter-spacing: 0.2em;
}

a.btn.btn-main::after {
    width: 21px;
    height: 8px;
    mask-image: url(../images/index/icon-right.svg);
    -webkit-mask-image: url(../images/index/icon-right.svg);
    background-color: #fff;
    mask-size: 100% 100%;
    mask-position: center;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    right: 20px;
}

a.btn.btn-main.small {
    min-width: 161px;
    font-size: 1.3rem;
    min-height: 47px;
    padding-left: 16px;
}

a.btn.btn-main.btn-2 {
    background-color: #876239;
    border-color: #876239;
}

a.btn.btn-main.btn-2:hover {
    color: #876239;
}

a.btn.btn-main.btn-2:hover::after {
    background-color: #876239;
}

a.btn.btn-main.btn-white {
    background-color: #fff;
    border-color: #fff;
    color: #0f87bc;
}

a.btn.btn-main.btn-white::after {
    background-color: #0f87bc;
}

a.btn.btn-main.btn-white:hover {
    color: #fff;
}

a.btn.btn-main.btn-white:hover::after {
    background-color: #fff;
}

a.btn.btn-main.btn-contact {
    background-color: #ec5a24;
    border-color: #ec5a24;
    min-width: 344px;
    letter-spacing: 0.05em;
}

a.btn.btn-main.btn-contact::after {
    right: 40px;
}

a.btn.btn-main.btn-contact span::before {
    width: 24px;
    height: 18px;
    mask-image: url(../images/index/icon-mail.svg);
    -webkit-mask-image: url(../images/index/icon-mail.svg);
    background-color: #fff;
    mask-size: 100% 100%;
    mask-position: center;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    left: 40px;
    content: '';
    display: block;
    top: 50%;
    transform: translateY(-50%);
    left: -40px;
    position: absolute;
}

a.btn.btn-main.btn-contact:hover {
    color: #ec5a24;
}

a.btn.btn-main.btn-contact:hover::after {
    background-color: #ec5a24;
}

a.btn.btn-main.btn-contact:hover span::before {
    background-color: #ec5a24;
}

a.btn.btn-main:hover {
    color: #0f87bc;
}

a.btn.btn-main::after {
    z-index: 3;
}

a.btn.btn-main:hover::after {
    background-color: #0f87bc;
}

.img-business img {
    width: 100%;
    border-radius: 5px;
}

.box-title-business {
    display: flex;
    align-items: center;
    padding-bottom: 18px;
    border-bottom: 1px solid;
    gap: 23px;
    font-size: 1.3rem;
    letter-spacing: 0.2em;
    margin-bottom: 15px;
    position: relative;
}

.box-title-business>p {
    font-weight: 200;
    font-family: "Noto Serif JP", serif;
    letter-spacing: 0.2em;
}

.box-title-business::after {
    content: "";
    width: 22px;
    height: 9px;
    mask-image: url(../images/index/icon-right.svg);
    -webkit-mask-image: url(../images/index/icon-right.svg);
    mask-size: 100% 100%;
    mask-position: center;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    background-color: #0d3570;
    position: absolute;
    right: 21px;
    top: 38px;
    transition: all 0.3s;
}

.box-business:hover .box-title-business::after {
    right: 0;
}

.box-business .img-business {
    overflow: hidden;
    border-radius: 5px;
}

.box-business .img-business img {
    transition: all 0.3s;
}

.box-business:hover .img-business img {
    transform: scale(1.06);
}

.box-business-cont .box-title-business {
    padding-top: 18px;
}

.title-busi-jp {
    font-size: 3.5rem;
    font-family: "Noto Serif JP", serif;
    letter-spacing: 0.2em;
    position: relative;
    top: -5px;
}

.sub-title-busi {
    font-size: 2rem;
    letter-spacing: 0.2em;
    margin-top: 10px;
    margin-bottom: 5px;
    font-family: "Noto Serif JP", serif;
}

.box-business-cont>p {
    letter-spacing: 0.15em;
    line-height: 1.5;
    color: #4d4d4d;
}

.img-home-business {
    position: absolute;
    width: calc(50vw + 325px);
    right: -240px;
    top: 240px;
    height: 466px;
}

.img-home-business img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.img-busi {
    margin-right: -85px;
}

.home-housing-right {
    padding-left: 30px;
}

.box-img-housing img {
    border-radius: 5px;
}

.box-img-housing {
    display: flex;
    gap: 5px;
}

.img-home-housing {
    height: 525px;
    position: relative;
    margin-top: 15px;
}

.img-home-housing img {
    position: absolute;
    max-width: unset;
    height: 100%;
    right: 0;
    top: 0;
    border-radius: 0 5px 5px 0;
}

.home-housing {
    position: relative;
}

.home-housing::after {
    content: "";
    width: calc(50vw + 70px);
    height: 510px;
    background-color: #f4f2ed;
    border-radius: 10px 0 0 10px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: -3;
}

.home-housing::before {
    content: "";
    width: 500px;
    height: 428px;
    background-image: url(../images/index/bg-housing.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -150px;
    right: -142px;
    z-index: -2;
}

.home-housing .main-title-en {
    color: #876239;
    border-color: #876239;
}

.home-housing .main-title-en::after {
    background-color: #876239;
}

.box-flex-work {
    display: flex;
    align-items: flex-end;
    gap: 45px;
}

.box-flex-work p {
    letter-spacing: 0.2em;
    line-height: 1.875;
}

.box-work-inner {
    position: relative;
    border-radius: 5px;
    overflow: hidden;
}

.box-work-inner::after {
    content: "";
    width: 56px;
    height: 38px;
    border-radius: 15px;
    background-image: url(../images/index/icon-right-2.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    transition: 0.3s;
    position: absolute;
    right: 28px;
    bottom: 28px;
    z-index: 1;
    border-radius: 18px;
}

.box-work-inner:hover::after {
    background-image: url(../images/index/icon-right-2-hover.svg);
}

.box-work-cont {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 20px 30px;
    width: 100%;
    z-index: 1;
    color: #fff;
}

.box-work-cont::after {
    content: "";
    width: 100%;
    height: 298px;
    background: linear-gradient(0deg, rgba(15, 135, 188, 1) 10%, rgba(79, 193, 235, 0) 90%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.box-slide-work {
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
}

.slide-work .slick-list {
    margin: 0 -25px;
    overflow: visible;
}

.slide-work .slick-slide {
    padding: 0 25px;
}

.box-title-work {
    padding-bottom: 20px;
    font-size: 1.8rem;
    letter-spacing: 0.2em;
    line-height: 1.5;
    border-bottom: 1px solid #fff;
    margin-bottom: 20px;
    min-height: 75px;
}

.box-work-inner .date {
    color: #e1e1e1;
    letter-spacing: 0.2em;
    margin-bottom: 5px;
}

.work-cat {
    font-weight: 500;
    letter-spacing: 0.2em;
}

ul.slick-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    margin-top: 40px;
}

ul.slick-dots li {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    border: 1px solid #0f87bc;
    background-color: #fff;
}

ul.slick-dots li.slick-active {
    background-color: #0f87bc;
}

ul.slick-dots li button {
    opacity: 0;
    padding: 0;
    background-color: transparent;
}

.img-work img {
    width: 100%;
    border-radius: 5px;
}

button.slick-arrow {
    position: absolute;
    background-color: transparent;
    border: none;
    top: 245px;
    z-index: 1;
    cursor: pointer;
}

button.slick-arrow.prev-arrow {
    left: -37px;
}

button.slick-arrow.next-arrow {
    right: -37px;
}

button.slick-arrow.slick-disabled {
    opacity: 0;
}

.home-work {
    position: relative;
}

.home-work::after {
    content: "";
    width: 100%;
    height: 620px;
    background-image: url(../images/index/bg-home-work.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 260px;
    z-index: -3;
    left: 0;
}

.home-work::before {
    content: "";
    width: 500px;
    height: 428px;
    background-image: url(../images/index/after-1.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 180px;
    left: -90px;
    z-index: -2;
}

.home-recruit {
    position: relative;
}

.home-recruit::before {
    content: "";
    width: 400px;
    height: 342px;
    background-image: url(../images/index/after-1.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50px;
    right: -125px;
    z-index: -1;
    transform: scaleX(-1);
}

.box-home-recruit {
    display: flex;
    position: relative;
}

.box-home-recruit::after {
    width: 949px;
    height: 531px;
    content: "";
    background-image: url(../images/index/after-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: -250px;
    top: -100px;
    z-index: -3;
}

.box-home-recruit::before {
    width: 949px;
    height: 531px;
    content: "";
    background-image: url(../images/index/after-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: -212px;
    top: -320px;
    z-index: -3;
    transform: scaleX(-1);
}

.home-recruit-left {
    width: 29%;
}

.list-recruit {
    padding: 40px 40px 40px 0;
    position: relative;
}

.list-recruit .news-item.item-list::after {
    right: 20px;
    bottom: 20px;
}

.list-recruit .news-item.item-list:hover:after {
    right: 10px;
}

.list-recruit::after {
    content: "";
    width: calc(100% + 45px);
    height: 100%;
    right: 0;
    background-color: #fff;
    position: absolute;
    top: 0;
    z-index: -1;
    border-radius: 10px 0 0 10px;
}

.home-recruit-right {
    width: 71%;
    height: 547px;
    position: relative;
    padding-left: 125px;
    display: flex;
    align-items: flex-end;
    padding-bottom: 150px;
}

.img-recruit {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2;
    border-radius: 5px;
    overflow: hidden;
}

.img-recruit img {
    max-width: unset;
}

.box-banner-recruit {
    width: 100%;
}

.box-title-recruit {
    display: flex;
    width: 100%;
    align-items: flex-start;
    gap: 70px;
}

.box-title-recruit h3 {
    font-size: 3rem;
    letter-spacing: 0.4em;
    color: #fff;
    font-family: "Noto Serif JP", serif;
    line-height: 1.64;
}

.name-recruit {
    font-family: "Noto Serif JP", serif;
    color: #fff;
    font-weight: 100;
    font-size: 13.6rem;
    position: absolute;
    bottom: -40px;
    right: -40px;
    letter-spacing: 0.1em;
    line-height: 1;
    z-index: 1;
}

.home-recruit-left .main-title {
    margin-left: 115px;
}

.slide-home-recruit .slick-list {
    margin: 0 -5px;
}

.slide-home-recruit .slick-slide {
    padding: 0 5px;
}

.slide-home-recruit .slick-slide img {
    border-radius: 5px;
    width: 100%;
}

.home-bottom {
    position: relative;
}

.home-bottom::before {
    content: "";
    width: 100%;
    height: calc(100% + 100px);
    background-image: url(../images/index/bg-bottom.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2;
}

.home-bottom::after {
    content: "";
    width: 100%;
    height: 424px;
    background-image: url(../images/index/after-3.png);
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -240px;
    left: 0;
    z-index: -1;
}

.img-favi {
    position: relative;
}

.img-favi::after {
    width: 949px;
    height: 531px;
    content: "";
    background-image: url(../images/index/after-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 50px;
}

.box-contact {
    padding: 20px 0 35px;
    background-color: rgba(255, 255, 255, 0.95);
    border-radius: 5px;
}

.contact-title {
    text-align: center;
}

.contact-title-en {
    color: #0d3570;
    font-size: 1.8rem;
    font-family: "Noto Serif JP", sans-serif;
    letter-spacing: 0.1em;
    font-weight: 100;
}

.contact-title-jp {
    font-size: 2.7rem;
    font-family: "Noto Serif JP", serif;
    margin-top: 5px;
    letter-spacing: 0.1em;
    color: #000;
}

.box-contact-flex {
    display: flex;
    margin-top: 25px;
    align-items: center;
}

.contact-left {
    width: 50%;
    text-align: center;
}

.contact-right {
    width: 50%;
    padding: 4px 0;
    border-left: 1px solid #a0b1b5;
}

.contact-left a {
    font-size: 3.3rem;
    font-weight: 500;
    color: #0d3570;
    letter-spacing: 0.1em;
    font-family: "Noto Serif JP", sans-serif;
}

.footer {
    position: relative;
}

.footer::after {
    content: "";
    width: 100%;
    height: calc(100% + 115px);
    background-image: url(../images/index/bg-footer.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -115px;
    left: 0;
    z-index: -2;
}

.footer-top {
    display: flex;
}

.footer-left {
    width: 50%;
}

.footer-left a {
    color: #fff;
}

.footer-right {
    width: 50%;
    justify-content: flex-start;
    gap: 16px;
    align-items: flex-start;
}

.box-link-footer {
    width: 50%;
}

.box-link-banner {
    position: absolute;
    bottom: 33px;
    right: 0;
    background-color: #fff;
    border-radius: 50%;
    box-shadow: 0 0 10px rgba(2, 64, 86, 0.75);
}

.header-main {
    background: linear-gradient(90deg, rgba(79, 193, 235, 0) 0%, rgba(79, 193, 235, 0.48) 48%, rgba(13, 53, 112, 0.48) 100%);
}

body .header-main {
    background: transparent;
}

body .header-main::before {
    content: "";
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(79, 193, 235, 0) 20%, rgba(79, 193, 235, 1) 60%, rgba(13, 53, 112, 1) 88%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0.48;
}

.logo-open {
    display: none;
}

.menu-open .logo-open {
    display: block;
}

.menu-open .logo-close {
    display: none;
}

.page-header {
    height: fit-content;
    min-height: 574px;
    padding-top: 200px;
    position: relative;
}

.page-header::after {
    content: "";
    width: 100%;
    height: 100%;
    background: linear-gradient(-90deg, rgb(255, 255, 255) 0%, rgb(79, 193, 235) 48%, rgb(13, 53, 112) 100%);
    background: linear-gradient(90deg, rgba(13, 53, 112, 1) 11%, rgba(79, 193, 235, 1) 61%, rgba(255, 255, 255, 1) 95%);
    position: absolute;
    z-index: -3;
    left: 0;
    top: 0;
}

.page-header::before {
    content: "";
    width: 666px;
    height: 372px;
    background-image: url(../images/index/bg-text-banner.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 0;
    left: -90px;
    z-index: -1;
}

.title-en {
    font-size: 1.5rem;
    font-family: "Shippori Mincho", serif;
    letter-spacing: 0.1em;
}

.title-jp {
    font-size: 4rem;
    font-family: "Noto Serif JP", serif;
    letter-spacing: 0.2em;
    margin-top: 35px;
}

.infor-item:last-child .infor-tit {
    letter-spacing: 0.13em;
}

.page-header-title {
    color: #fff;
}

.infor-cont {
    flex: 1;
}

.page-header-img::after {
    content: "";
    width: calc(50% + 116px);
    height: 484px;
    background-image: url(../images/index/bg-page.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 53px;
    right: 0;
    z-index: -1;
    border-radius: 10px 0 0 10px;
}
.page-about .page-header-img:after{
    background-image: url(../images/about/bg-page.png);
}
#page-header {
    position: relative;
}

#page-header::before {
    content: "";
    width: 100%;
    height: 116px;
    background-image: url(../images/index/bg-line-age.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    bottom: 22px;
    left: 0;
    z-index: 1;
    position: absolute;
}

#page-header::after {
    content: "";
    width: 325px;
    height: 279px;
    background-image: url(../images/index/after-1.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -115px;
    z-index: 1;
    opacity: 0.22;
}

.sub-title {
    font-size: 3.3rem;
    letter-spacing: 0.2em;
    color: #000;
    padding-bottom: 23px;
    font-family: "Noto Serif JP", sans-serif;
    position: relative;
}

.sub-title::after {
    content: "";
    width: 170px;
    height: 3px;
    background: linear-gradient(90deg, rgb(79, 193, 235) 0%, rgb(13, 53, 112) 100%);
    position: absolute;
    bottom: 0;
    left: 0;
}

.flex-sign {
    display: flex;
    align-items: center;
    gap: 25px;
    letter-spacing: 0.1em;
    justify-content: flex-end;
}

.flex-sign h4 {
    font-size: 3.5rem;
    letter-spacing: 0.2em;
    color: #000;
    font-family: "Noto Serif JP", sans-serif;
}

.box-img-about {
    width: -moz-fit-content;
    width: fit-content;
    text-align: right;
    margin-left: auto;
}

.box-img-about img {
    border-radius: 5px;
}

.about-01 {
    position: relative;
}

.about-01::after {
    content: "";
    width: calc(50vw + 65px);
    height: 405px;
    background: linear-gradient(90deg, rgb(79, 193, 235) 0%, rgb(13, 53, 112) 100%);
    opacity: 0.2;
    position: absolute;
    right: 0;
    bottom: 5px;
    z-index: -1;
    border-radius: 5px;
}

.about-01::before {
    content: "";
    width: 500px;
    height: 428px;
    background-image: url(../images/about/after-3.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    right: -150px;
    z-index: -2;
}

.title-border {
    font-size: 3rem;
    font-family: "Noto Serif JP", serif;
    color: #0071b7;
    letter-spacing: 0.2em;
    text-align: center;
    border-bottom: 1px solid;
    padding-bottom: 18px;
    margin-bottom: 25px;
}

.title-border.small {
    font-size: 2.5rem;
    color: #000;
}

.box-list-num {
    display: flex;
    justify-content: center;
}

ul.list-num {
    width: 284px;
}

ul.list-num li {
    font-family: "Noto Serif JP", sans-serif;
    color: #000;
    letter-spacing: 0.05em;
    line-height: 2.125;
}

ul.list-num li span {
    color: #0071b7;
}

.table-about {
    display: flex;
}

.table-about-left {
    width: 160px;
    padding: 20px 17px;
    font-weight: 500;
    font-size: 1.8rem;
    color: #0082aa;
    text-align: right;
    letter-spacing: 0.1em;
    padding-left: 0;
    flex-shrink: 0;
}

.table-about-right {
    flex: 1;
    padding: 20px 30px;
    color: #4d4d4d;
    letter-spacing: 0.1em;
    line-height: 1.375;
    border-bottom: 1px solid #c7c7c7;
    padding-right: 0;
}

.img-about-3 {
    position: relative;
    height: 727px;
}

.img-about-3 img {
    position: absolute;
    max-width: unset;
    height: 100%;
    right: -30px;
    top: 0;
}

.box-map {
    height: 400px;
}

.box-map iframe {
    width: 100%;
    height: 100%;
}

.list-dot li {
    padding-left: 25px;
    letter-spacing: 0.1em;
    line-height: 1.55;
    margin-bottom: 15px;
    position: relative;
}

.list-dot li::after {
    content: "";
    width: 14px;
    height: 14px;
    background-color: #0071b7;
    border-radius: 50%;
    position: absolute;
    top: 6px;
    left: 0;
}

.box-his {
    display: flex;
    align-items: center;
    color: #fff;
    margin-bottom: 20px;
}

.box-his:last-child {
    margin-bottom: 0;
}

.box-his-year {
    width: 160px;
    font-size: 2.6rem;
    font-family: "Noto Serif JP", sans-serif;
}

.box-his-year span {
    font-size: 3.5rem;
    padding-right: 5px;
    letter-spacing: 0.1em;
}

.box-his-content {
    flex: 1;
    letter-spacing: 0.1em;
    line-height: 1.55;
    position: relative;
    top: 4px;
}

.title-history {
    font-size: 2.6rem;
    font-family: "Noto Serif JP", serif;
    letter-spacing: 0.1em;
    text-align: center;
    padding-bottom: 10px;
    color: #fff;
    position: relative;
}

.title-history span {
    font-size: 3.5rem;
    letter-spacing: 0.1em;
    margin-right: 5px;
}

.title-history::after {
    content: "";
    width: 480px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.about-04 {
    position: relative;
}

.about-04::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 224px);
    background-image: url(../images/about/bg-his.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -2;
}

.img-history {
    text-align: right;
}

.list-history {
    padding-left: 50px;
}

.row-reverse .list-history {
    padding-left: 20px;
}

.row-reverse .img-history {
    text-align: left;
    padding-left: 50px;
}

@media(min-width: 1200px) {
    .list-history {
        position: relative;
        width: calc(100% + 56px);
    }
}

.about-03 {
    position: relative;
}

.about-03::after {
    width: 949px;
    height: 531px;
    content: "";
    background-image: url(../images/index/after-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: -80px;
    top: -100px;
    transform: scaleX(-1);
    z-index: -3;
}

.about-03::before {
    content: "";
    width: 500px;
    height: 428px;
    background-image: url(../images/about/after-3.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -325px;
    right: -150px;
    z-index: -1;
}

.list-img-data {
    display: flex;
    flex-wrap: wrap;
    gap: 23px 26px;
}

.list-img-data .img-data {
    width: calc(50% - 13px);
}

.img-about-6 img {
    border-radius: 5px;
}

.img-about-6 p {
    text-align: center;
    padding-top: 10px;
    letter-spacing: 0.1em;
}

.text-about-6 {
    padding-top: 20px;
    padding-left: 30px;
}

.text-about-6 h3 {
    font-size: 2rem;
    font-family: "Noto Serif JP", serif;
    letter-spacing: 0.2em;
    margin-bottom: 20px;
    color: #0d3570;
}

.text-about-6 p {
    letter-spacing: 0.05em;
    line-height: 1.95;
}

.text-about-6 .title-border.small {
    color: #0d3570;
    font-size: 2rem;
    text-align: left;
    margin-bottom: 15px;
}

.about-05 {
    position: relative;
}

.about-05::after {
    content: "";
    width: calc(50% + 300px);
    height: 580px;
    border-radius: 5px;
    background-color: #e4eef4;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -2;
}

.about-05::before {
    content: "";
    width: 500px;
    height: 428px;
    background-image: url(../images/about/after-3.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    right: -150px;
    z-index: -1;
}

.about-06 {
    position: relative;
}

.about-06::after {
    width: 949px;
    height: 531px;
    content: "";
    background-image: url(../images/index/after-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: -80px;
    top: 0px;
    z-index: -3;
    transform: scaleX(-1);
}

.img-business-right {
    height: 630px;
    position: relative;
}

.img-business-right img {
    position: absolute;
    max-width: unset;
    left: -60px;
    top: 0;
    border-radius: 5px 0 0 5px;
}

.img-business-right::after {
    content: "";
    width: 695px;
    height: 532px;
    border-radius: 5px;
    background-color: #0d3570;
    top: -17px;
    left: -77px;
    z-index: -2;
    position: absolute;
}

.title-business-en {
    font-size: 1.3rem;
    color: #0d3570;
    letter-spacing: 0.2rem;
    font-family: "Noto Serif JP", serif;
    margin: 20px 0 15px;
}

.title-business-jp {
    font-size: 4rem;
    letter-spacing: 0.2em;
    color: #0d3570;
    font-family: "Noto Serif JP", serif;
}

.box-business-title>h3 {
    font-size: 2.5rem;
    font-family: "Noto Serif JP", sans-serif;
    letter-spacing: 0.2em;
    line-height: 1.76;
    margin: 50px 0 30px;
}

.box-business-title>p {
    letter-spacing: 0.1em;
    line-height: 1.5;
    text-align: justify;
}

.box-business-title {
    padding-left: 50px;
    max-width: 390px;
}

.img-busi-info-left {
    width: 434px;
    border-radius: 5px;
    overflow: hidden;
}

.box-business-info {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin-top: 75px;
}

.busi-info-right {
    width: 50%;
}

.busi-info-right h4 {
    font-size: 2.5rem;
    font-family: "Noto Serif JP", sans-serif;
    color: #0d3570;
    letter-spacing: 0.1em;
    line-height: 1.76;
    margin-bottom: 20px;
}

.busi-info-right p {
    line-height: 2.05;
    letter-spacing: 0.05em;
}

.box-link-business {
    height: 249px;
    position: relative;
    color: #fff;
    max-width: 770px;
    margin-left: auto;
    margin-right: auto;
    padding: 55px;
}

.box-link-business a {
    color: #fff;
    display: block;
    padding-top: 25px;
}

.box-link-business::after {
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 10px;
    background-image: url(../images/business/img-4.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.box-link-business::before {
    content: "";
    width: 55px;
    height: 37px;
    background-color: #fff;
    border-radius: 20px;
    background-image: url(../images/business/icon-right-main.svg);
    background-size: 14px 6px;
    background-position: center bottom 16px;
    background-repeat: no-repeat;
    position: absolute;
    right: 20px;
    bottom: 20px;
}

.bg-line {
    position: relative;
}

.bg-line::after {
    content: "";
    width: 100vw;
    height: 1px;
    background-color: #0d3570;
    position: absolute;
    top: 48%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -4;
}

.bg-line::before {
    content: "";
    width: 500px;
    height: 427px;
    background-image: url(../images/about/after-3.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    bottom: -300px;
    left: -326px;
    position: absolute;
    z-index: -2;
    transform: scaleX(-1);
}

.business-02 {
    position: relative;
}

.business-02::after {
    content: "";
    width: 100%;
    height: 191px;
    background-color: #e4eef4;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -2;
}

.business-02::before {
    width: 949px;
    height: 531px;
    content: "";
    background-image: url(../images/index/after-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 131px;
    right: -190px;
    z-index: -3;
    transform: scaleX(-1);
}

.row-reverse .img-business-right img {
    right: -60px;
    left: auto;
    border-radius: 0 5px 5px 0;
}

.row-reverse .box-business-title {
    padding-left: 140px;
    max-width: 507px;
}

.business-03 .title-business-en {
    color: #0f87bc;
}

.business-03 .title-business-jp {
    color: #0f87bc;
}

.business-03 .bg-line::after {
    background-color: #0f87bc;
}

.business-03 .img-business-right::after {
    background-color: #0f87bc;
}

.business-03 .busi-info-right h4 {
    color: #0f87bc;
}

.business-03 .box-link-business::after {
    background-image: url(../images/business/img-7.png);
}

.business-03 .bg-line::before {
    right: -320px;
    top: -172px;
    left: auto;
    transform: none;
}

.text-busi-4 {
    padding-top: 30px;
}

.text-busi-4 h3 {
    font-size: 2.5rem;
    font-family: "Noto Serif JP", sans-serif;
    border-bottom: 1px solid #4d4d4d;
    padding-bottom: 15px;
    letter-spacing: 0.1em;
    margin-bottom: 15px;
}

.text-busi-4 p {
    letter-spacing: 0.05em;
    line-height: 2.06;
}

.img-busi-4 img {
    border-radius: 5px;
}

.img-busi-4 p {
    text-align: center;
    padding-top: 10px;
    line-height: 1.43;
}

.business-04 .img-business-right {
    height: 391px;
}

.business-04 .img-business-right::after {
    height: 360px;
    background-color: #d5dfe2;
}

.business-04 .bg-line::before {
    display: none;
}

.img-busi-1 {
    padding-bottom: 35px;
    position: relative;
}

.img-busi-1::after {
    content: "";
    width: 100vw;
    height: 100%;
    background: linear-gradient(-90deg, rgb(79, 193, 235) 0%, rgb(13, 53, 112) 100%);
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    z-index: -1;
    opacity: 0.45;
}

.business-01 {
    position: relative;
}

.business-01::before {
    content: "";
    width: 500px;
    height: 427px;
    background-image: url(../images/about/after-3.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    top: -75px;
    right: -149px;
    position: absolute;
    z-index: -2;
}

.img-busi-dix {
    text-align: center;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -75px;
    z-index: 1;
}

.page-housing .page-header::after {
    background: linear-gradient(90deg, rgb(247, 181, 107) 0%, rgb(178, 128, 84) 54%, rgb(255, 255, 255) 100%);
}

.page-housing .page-header::before {
    display: none;
}

.page-housing #page-header::before {
    background-image: url(../images/housing/after-1.png);
}

.page-housing .page-header-img::after {
    background-image: url(../images/housing/bg-page.png);
}

.page-housing ul.list-anchor li a {
    color: #b28054;
    border-color: #b28054;
}

.page-housing ul.list-anchor li a::after {
    background-color: #b28054;
}

.page-housing ul.list-anchor li a::before {
    background-color: #b28054;
}

.page-housing .sub-title::after {
    background: linear-gradient(-90deg, rgb(247, 181, 107) 0%, rgb(178, 128, 84) 54%, rgb(255, 255, 255) 100%);
}

.box-housing {
    display: flex;
    align-items: flex-start;
    gap: 58px;
    margin-bottom: 80px;
    margin-right: 50px;
}

.box-housing.reverse {
    flex-direction: row-reverse;
}

.housing-left {
    width: 505px;
}

.housing-right {
    flex: 1;
}

.num-house {
    font-size: 4.3rem;
    letter-spacing: 0.2em;
    color: #876239;
    font-family: "Noto Serif JP", serif;
    margin-top: -15px;
}

.title-housing {
    font-size: 3rem;
    letter-spacing: 0.2em;
    line-height: 1.33;
    color: #876239;
    padding-bottom: 25px;
    border-bottom: 1px solid;
    font-family: "Noto Serif JP", serif;
    margin-top: 8px;
    margin-bottom: 25px;
}

.housing-right p {
    letter-spacing: 0.05em;
    line-height: 1.875;
}

.housing-left-img img {
    border-radius: 5px;
}

.box-bg-after {
    position: relative;
}

.box-bg-after::after {
    content: "";
    width: 100vw;
    height: 420px;
    background-color: #f4f2ed;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -80px;
    z-index: -1;
}

.list-housing {
    display: flex;
    gap: 37px;
}

.housing-02 {
    position: relative;
}

.housing-02::after {
    content: "";
    width: 100vw;
    height: 510px;
    background-color: #f4f2ed;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    z-index: -1;
}

.housing-02::before {
    content: "";
    width: 500px;
    height: 427px;
    background-image: url(../images/housing/after-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    top: -215px;
    right: -204px;
    position: absolute;
    z-index: -2;
}

.box-img-link {
    display: flex;
    border: 1px solid #876239;
    border-radius: 10px;
    padding: 10px;
    gap: 30px;
    align-items: center;
    position: relative;
}

.box-img-link::after {
    content: "";
    width: 44px;
    height: 29px;
    background-image: url(../images/housing/icon-right.svg);
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: 19px;
    bottom: 19px;
}

.img-link-left {
    width: 227px;
    border-radius: 10px;
    overflow: hidden;
}

.img-link-left img {
    transition: .3s;
}

.box-img-link a {
    font-size: 3rem;
    font-family: "Noto Serif JP", serif;
    color: #936200;
    letter-spacing: 0.2em;
}

.box-img-link:hover {
    opacity: 1;
}

.box-img-link:hover img {
    transform: scale(1.1);
}

.housing-03 .news-item.item-list {
    padding: 20px 13px 30px;
}

.box-housing-4 {
    display: flex;
}

.img-housing-4 {
    width: 50%;
}

.img-housing-4 img {
    width: 100%;
}

.box-housing-right .title-border.small {
    text-align: left;
    color: #873d07;
}

.box-border-contact {
    border: 1px solid #873d07;
    border-radius: 5px;
    padding: 30px 0 35px;
    background-color: #fff;
}

.box-border-contact .contact-left a {
    font-size: 3.3rem;
    font-weight: 500;
    letter-spacing: 0.2em;
    color: #000;
    font-family: "Noto Sans JP", sans-serif;
}

.box-border-contact .contact-left p {
    padding-left: 100px;
}

.box-border-contact .contact-right {
    border-color: #aeaeae;
}

.box-border-contact a.btn.btn-main.btn-contact {
    min-width: 393px;
    background-color: #9b5e35;
    border-color: #9b5e35;
    letter-spacing: 0.05em;
}

.box-border-contact a.btn.btn-main.btn-contact:hover {
    background-color: #fff;
    color: #9b5e35;
}

.box-border-contact a.btn.btn-main.btn-contact:hover::after {
    background-color: #9b5e35;
}

.box-contact-housing {
    padding: 120px 0;
    position: relative;
}

.box-contact-housing::after {
    content: "";
    width: 100vw;
    height: 100%;
    background-image: url(../images/housing/bg-1.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;
}

.box-renovation {
    display: flex;
    align-items: center;
}

.renovation-cont {
    width: 538px;
    border: 1px solid #876239;
    border-radius: 10px;
    padding: 50px 40px;
    position: relative;
    background-color: rgba(255, 255, 255, 0.9);
}

.renovation-img {
    flex: 1;
    height: 395px;
    position: relative;
}

.renovation-img img {
    position: absolute;
    max-width: unset;
    left: -50px;
    border-radius: 10px;
}

.ml-auto {
    margin-left: auto;
}

.housing-05 {
    position: relative;
}

.housing-05::after {
    content: "";
    width: 100vw;
    height: 336px;
    background: linear-gradient(90deg, rgb(247, 181, 107) 0%, rgb(178, 128, 84) 100%);
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    z-index: -1;
}

.box-reform {
    margin-bottom: 105px;
}

.box-reform .title-border {
    font-size: 2.8rem;
    color: #894c1f;
    border-color: #894c1f;
    margin-top: 10px;
    padding-bottom: 15px;
    margin-bottom: 15px;
}

.box-reform p {
    letter-spacing: 0.1em;
    line-height: 1.875;
}

.reform-02 {
    position: relative;
}

.reform-02::after {
    content: "";
    width: 100vw;
    height: 100%;
    background-color: #f4f2ed;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -3;
}

.housing-right-5 p {
    text-align: justify;
}

.page-reform #housing-04 .box-contact-housing::after {
    background-image: url(../images/reform/bg-1.png);
}

.page-reform.page-housing .page-header-img::after {
    background-image: url(../images/index/bg-page-reform.png);
}

.work-item {
    padding: 2px;
    border-radius: 10px;
    background: linear-gradient(-90deg, rgba(79, 193, 235, 0.5) 0%, rgba(13, 53, 112, 0.5) 100%);
    margin-bottom: 35px;
}

.work-item-inner {
    padding: 20px;
    border-radius: 9px;
    background-color: #fff;
}

.work-item-img {
    position: relative;
}

.work-item-img::after {
    content: "";
    width: 100%;
    height: 180px;
    background: linear-gradient(180deg, rgb(15, 135, 188) 0%, rgba(79, 193, 235, 0) 100%);
    border-radius: 5px;
    position: absolute;
    top: 0;
    left: 0;
}

.work-item-img img {
    border-radius: 5px;
}

.work-item-title {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    padding: 20px 28px;
    z-index: 2;
}

.work-item-cont {
    padding: 20px 0 10px;
}

.work-info-flex {
    display: flex;
    margin-bottom: 5px;
}

.work-info-flex:nth-child(3) .work-info-title {
    letter-spacing: 0.1em;
}

.work-info-title {
    width: 107px;
    font-weight: 500;
    color: #0d3570;
}

.work-info-title span {
    font-size: 1.4rem;
}

.work-info-cont {
    flex: 1;
}

.work-except {
    line-height: 1.875;
    letter-spacing: 0.05em;
    padding-top: 5px;
}

.box-work-cat {
    display: flex;
    align-items: center;
}

.box-work-cat a.work-cat {
    font-size: 1.4rem;
    color: #fff;
}

.box-work-cat .date {
    font-size: 1.3rem;
    font-weight: 500;
    color: #e1e1e1;
}

.work-title {
    margin-top: 15px;
    font-size: 2rem;
    font-weight: 500;
    color: #fff;
    letter-spacing: 0.2em;
}

.page-cs .page-header {
    height: fit-content;
    padding-top: 175px;
    min-height: 343px;
}

.page-cs .page-header-title {
    text-align: center;
}

.page-cs .title-jp {
    margin-top: 5px;
}

.page-cs .breadcrums {
    padding-top: 30px;
}

.page-cs .page-header-img {
    display: none;
}

.page-cs #page-header::before {
    bottom: 0;
}

.box-flex-recruit {
    display: flex;
    gap: 76px;
}

.box-recruit-img h3 {
    font-size: 2.3rem;
    font-family: "Noto Serif JP", sans-serif;
    text-align: center;
    color: #0071b7;
    letter-spacing: 0.1em;
    line-height: 1.43;
    margin: 10px 0;
}

.img-recruit-box {
    text-align: center;
}

.box-recruit-img p {
    letter-spacing: 0.05em;
    line-height: 1.75;
}

.recruit-02 {
    position: relative;
}

.recruit-02::before {
    content: "";
    width: 500px;
    height: 429px;
    background-image: url(../images/about/after-3.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -200px;
    right: -145px;
}

.recruit-02::after {
    height: 325px;
    background-image: url(../images/recruit/bg-1.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    z-index: -2;
    left: 0;
    content: "";
    width: 100%;
    top: 230px;
}

.box-title-recruit-3 h4 {
    font-size: 1.3rem;
    font-family: "Noto Serif JP", sans-serif;
    color: #fff;
    text-align: center;
}

.recruit-3-img img {
    border-radius: 5px;
}

.box-img-title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    color: #fff;
    font-size: 4rem;
    letter-spacing: 0.2em;
    font-family: "Noto Serif JP", sans-serif;
}

.box-main-work {
    display: flex;
    gap: 25px;
    justify-content: center;
}

.main-work-item {
    font-weight: 500;
    color: #fff;
    text-align: center;
    letter-spacing: 0.05em;
}

.main-work-item p {
    padding-top: 5px;
}

.box-recruit-custom {
    position: relative;
    padding: 85px 0 80px;
}

.box-recruit-custom::after {
    content: "";
    width: 100vw;
    height: 100%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    z-index: -1;
    background-image: url(../images/recruit/bg-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.box-recruit-custom>p {
    max-width: 1000px;
    margin: 0 auto;
    padding-top: 50px;
    line-height: 1.75;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 2.1875;
    color: #fff;
}

.box-recruit-custom-2::after {
    background-image: url(../images/recruit/bg-3.png);
}

.title-recruit-border {
    font-size: 1.8rem;
    font-weight: 500;
    color: #fff;
    border-bottom: 1px solid;
    text-align: center;
    padding-bottom: 14px;
    margin-bottom: 20px;
}

.box-recruit-custom-right {
    padding-left: 14px;
}

.employee-img {
    text-align: center;
    overflow: hidden;
    border-radius: 50%;
    padding: 3px;
    background: linear-gradient(90deg, rgba(79, 193, 235, 1) 0%, rgba(13, 53, 112, 1) 100%);
}

.employee-img-inner {
    border-radius: 50%;
    background-color: #fff;
    overflow: hidden;
}

.employee-img img {
    transition: .3s;
}

.box-employee:hover .employee-img img {
    transform: scale(1.1);
}

.employee-title {
    font-size: 1.6rem;
    color: #0d3570;
    font-weight: 500;
    letter-spacing: 0.2em;
    line-height: 1.35;
    min-height: 110px;
    border-bottom: 1px solid;
    margin-bottom: 20px;
    margin-top: 15px;
}

.box-info-employee p {
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0.2em;
}

.box-info-employee p span {
    color: #0d3570;
}

.box-employee {
    padding: 0 0 5px;
    position: relative;
    cursor: pointer;
}

.box-employee::after {
    content: "";
    width: 45px;
    height: 45px;
    background-image: url(../images/recruit/icon-open.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: 0;
    bottom: 0;
}

.popup-item {
    position: fixed;
    max-width: 1116px;
    background-color: #fff;
    top: 50%;
    left: 50%;
    z-index: 10;
    transform: translate(-50%, -50%);
    width: 100%;
    max-height: calc(100vh - 100px);
    opacity: 0;
    z-index: -1;
    transition: opacity 0.3s;
}

.popup-item-cont .popup-item-cont-inner::after {
    content: "";
    width: 100%;
    height: 210px;
    background: linear-gradient(-90deg, rgb(79, 193, 235) 0%, rgb(13, 53, 112) 100%);
    position: absolute;
    left: 0;
    top: 0;
    z-index: -2;
}

.popup-item::before {
    content: "";
    width: 207px;
    height: 190px;
    background-image: url(../images/recruit/after-1.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.popup-item.show {
    opacity: 1;
    z-index: 10;
}

.box-popup-cs {
    position: relative;
}

.box-popup-cs .title-border.small {
    color: #0071b7;
    border-color: #29a6dd;
}

.box-popup-cs:after {
    content: "";
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    background-color: #000;
    opacity: 0;
    z-index: -5;
    transition: 0.3s;
}

.box-popup-cs.show:after {
    opacity: 0.37;
    z-index: 9;
}

.popup-item-cont {
    max-height: 680px;
    overflow-y: scroll;
    overflow-x: hidden;
}

.popup-item-cont .popup-item-cont-inner {
    padding: 90px;
    position: relative;
}

.popup-item-cont:before {
    display: block;
    content: "";
    width: 100%;
    height: 90px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: white;
    z-index: 1;
}

.popup-item-cont .popup-item-cont::-webkit-scrollbar {
    width: 8px;
    position: absolute;
    right: -30px;
}

.popup-item-cont .popup-item-cont::-webkit-scrollbar-thumb {
    background-color: #c7c7c7;
    border-radius: 10px;
}

.popup-item-cont .popup-item-cont::-webkit-scrollbar-track {
    background-color: transparent;
}

.close-popup-cs {
    position: absolute;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    top: -24px;
    right: -10px;
    background-image: url(../images/recruit/close.svg);
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer;
    z-index: 2;
}

.box-popup-about {
    display: flex;
    gap: 45px;
}

.popup-about-left {
    width: 270px;
}

.popup-employe-right {
    flex: 1;
}

.answer {
    letter-spacing: 0.1em;
    line-height: 2.1875;
}

.popup-employe-right .employee-title {
    min-height: unset;
    color: #fff;
    font-size: 2.6rem;
    line-height: 1.73;
    margin-bottom: 60px;
    border-bottom: none;
    margin-top: 0;
}

.popup-employe-right .box-info-employee p {
    font-size: 1.6rem;
    margin-bottom: 5px;
}

.question {
    font-size: 2.3rem;
    font-family: "Noto Serif JP", sans-serif;
    letter-spacing: 0.1em;
    padding-left: 40px;
    position: relative;
    margin-bottom: 20px;
}

.question::after {
    content: "";
    width: 20px;
    height: 5px;
    background: linear-gradient(-90deg, rgb(79, 193, 235) 0%, rgb(13, 53, 112) 100%);
    position: absolute;
    left: 0;
    top: 15px;
    border-radius: 6px;
}

.box-qna {
    margin-bottom: 60px;
}

.recruit-04 {
    position: relative;
}

.recruit-04::after {
    content: "";
    width: 100vw;
    height: 411px;
    background: linear-gradient(90deg, rgb(79, 193, 235) 0%, rgb(13, 53, 112) 100%);
    position: absolute;
    opacity: 0.15;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    z-index: -1;
}

.recruit-04::before {
    content: "";
    width: 500px;
    height: 428px;
    background-image: url(../images/about/after-3.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -100px;
    right: -190px;
    z-index: -2;
}

.text-recruit-5 h4 {
    font-size: 2.1rem;
    font-family: "Noto Serif JP", serif;
    color: #0d3570;
    letter-spacing: 0.1em;
    line-height: 1.76;
    margin-bottom: 30px;
}

.text-recruit-5 p {
    letter-spacing: 0.05em;
    line-height: 1.875;
    text-align: justify;
}

a.btn.btn-pdf {
    background-color: #fff;
    border: 1px solid #0d3570;
    border-radius: 20px;
    min-height: 68px;
    padding-left: 70px;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #4d4d4d;
    position: relative;
    max-width: 853px;
    justify-content: flex-start;
}

a.btn.btn-pdf::after {
    content: "";
    width: 28px;
    height: 34px;
    background-image: url(../images/recruit/icon-pdf.svg);
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: 24px;
}

a.btn.btn-pdf::before {
    width: 47px;
    height: 32px;
    background-image: url(../images/recruit/icon-right.svg);
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    right: 20px;
}

.page-recruit .box-link-business {
    max-width: 716px;
    height: 350px;
    padding: 100px 60px;
    margin-left: auto;
    margin-right: auto;
}

.page-recruit .box-link-business::after {
    background-image: url(../images/recruit/bg-bottom.png);
}

.page-recruit .page-header-img::after {
    background-image: url(../images/recruit/bg-page.png);
}

#recruit-05 {
    position: relative;
}

#recruit-05::before,
#recruit-02::before {
    width: 1383px;
    height: 774px;
    content: "";
    background-image: url(../images/index/after-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: -212px;
    top: -370px;
    z-index: -5;
    transform: scaleX(-1);
}

#recruit-02 {
    position: relative;
}

#recruit-02::before {
    width: 949px;
    height: 531px;
    left: calc(50% - 100px);
    top: -200px;
    z-index: -1;
}

#recruit-05::after {
    content: "";
    width: 500px;
    height: 428px;
    background-image: url(../images/about/after-3.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 40%;
    right: -190px;
    z-index: -2;
}

.recruit-05 {
    position: relative;
}

.recruit-05::after {
    content: "";
    width: 100vw;
    height: 305px;
    background: linear-gradient(-90deg, rgb(79, 193, 235) 0%, rgb(13, 53, 112) 100%);
    position: absolute;
    opacity: 0.1;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    z-index: -1;
}

.recruit-05::before {
    width: 949px;
    height: 531px;
    content: "";
    background-image: url(../images/index/after-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: -212px;
    bottom: 145px;
    z-index: -5;
    transform: scaleX(-1);
}

.page-contact .box-border-contact {
    border-color: #0f87bc;
    padding-top: 20px;
    background-color: #fff;
}

.page-contact .box-border-contact a.btn.btn-main.btn-contact {
    background-color: #0f87bc;
    border-color: #0f87bc;
}

.page-contact .box-border-contact a.btn.btn-main.btn-contact:hover {
    background-color: #fff;
    color: #0f87bc;
}

.page-contact .box-border-contact a.btn.btn-main.btn-contact:hover::after {
    background-color: #0f87bc;
}

.contact-01 {
    position: relative;
}

.contactForm {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

.contact-01::after {
    content: "";
    width: 100vw;
    height: calc(100% - 380px);
    background: linear-gradient(90deg, rgb(79, 193, 235) 0%, rgb(13, 53, 112) 100%);
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    z-index: -1;
}

.box-radio {
    display: flex;
    gap: 66px;
    margin-top: 13px;
}

.box-radio label {
    display: flex;
    align-items: center;
    font-weight: 500;
}

.box-about-text {
    background-color: #e4eef4;
}

#contact-02 {
    position: relative;
}

#contact-02::before {
    content: "";
    width: 500px;
    height: 428px;
    background-image: url(../images/about/after-3.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0px;
    right: -190px;
    z-index: -2;
}

.title-line {
    position: relative;
    padding-left: 40px;
}

.title-line::after {
    content: "";
    width: 13px;
    height: 100%;
    background: linear-gradient(180deg, rgb(79, 193, 235) 0%, rgb(79, 193, 235) 48%, rgb(13, 53, 112) 100%);
    position: absolute;
    left: 3px;
    top: 0;
    border-radius: 10px;
}

.page-navi {
    border-top: 1px solid #c7c7c7;
}

.works-filter {
    background: #e4f0f4;
    border-radius: 10px;
    padding: 35px;
}

#category-4-posts {
    background-color: #f5fdff;
}

#category-4-posts .news-item.item-list {
    padding: 20px 13px 30px;
}

.table-info {
    display: flex;
    border: 1px solid #b9ced6;
}

.table-info:not(:last-child) {
    border-bottom: none;
}

.info-title {
    padding: 16px 38px;
    padding-right: 30px;
    width: 204px;
    background-color: #319dd3;
    color: #fff;
    font-weight: 500;
    letter-spacing: 0;
    border-right: 1px solid #b9ced6;
}

.info-cont {
    flex: 1;
    padding: 16px 38px;
}

.recruit-single-contact {
    background: linear-gradient(90deg, rgb(79, 193, 235) 0%, rgb(13, 53, 112) 100%);
    padding: 60px 0;
}

.recruit-single-contact .box-border-contact {
    border-color: #0f87bc;
}

.recruit-single-contact .box-border-contact a.btn.btn-main.btn-contact {
    background-color: #0f87bc;
    border-color: #0f87bc;
}

.recruit-single-contact .box-border-contact a.btn.btn-main.btn-contact:hover {
    background-color: #fff;
    color: #0f87bc;
}

.recruit-single-contact .box-border-contact a.btn.btn-main.btn-contact:hover::after {
    background-color: #0f87bc;
}

section#housing-03 a.cat {
    color: #00a498;
    letter-spacing: 0.2em;
}

.sub-title-single {
    font-size: 2rem;
    padding-left: 34px;
    border-left: 4px solid #0f87bc;
    min-height: 49px;
    display: flex;
    align-items: center;
    margin-bottom: 30px;
    position: relative;
    letter-spacing: 0.1em;
    font-weight: 500;
}

.sub-title-single::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #4d4d4d;
    bottom: -11px;
    left: -4px;
    position: absolute;
}

p.apply-text {
    letter-spacing: 0.1em;
    line-height: 1.875;

}


/*# sourceMappingURL=style-2.css.map */

.img-works {
    height: 307px;
    position: relative;
}

.img-works img {
    border-radius: 10px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.img-works .title-box {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 25px 30px;
}

.img-works .title-box:before {
    width: 100%;
    height: 180px;
    background: #0F87BC;
    background: linear-gradient(180deg, rgba(15, 135, 188, 1) 15%, rgba(79, 193, 235, 0) 85%);
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 10px 10px 0 0;
    z-index: 0;
}

.img-works .title-box div {
    position: relative;
    z-index: 1;
    font-weight: 500;
}

.works-item .date {
    font-size: 1.3rem;
    color: #E1E1E1;
    width: fit-content;
    letter-spacing: 0.05em;
}

.works-item .cat {
    font-size: 1.4rem;
    color: white;
    margin-left: 10px;
    letter-spacing: 0.2em;
}

.works-item .title-text {
    font-size: 20px;
    color: white;
    margin-top: 10px;
    letter-spacing: 0.2em;
}

.works-item .date-box {
    display: flex;
    align-items: center;
}

.works-item .col-inner {
    padding: 20px;
    background: white;
    position: relative;
    border-radius: 9px;
    margin-bottom: 35px;
}

.works-item .col-inner:before {
    content: "";
    background: linear-gradient(90deg, rgba(13, 53, 112, 0.5) 0%, rgba(79, 193, 235, 0.5) 100%);
    position: absolute;
    top: -2px;
    left: -2px;
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    border-radius: 10px;
    z-index: -1;
}

.infor-list {
    margin-top: 15px;
}

.infor-item {
    display: flex;
    font-weight: 500;
    margin-bottom: 6px;
}

.infor-tit {
    width: 106px;
    flex-shrink: 0;
    color: #0D3570;
    padding-left: 22px;
    position: relative;
}

.infor-tit:after {
    content: ':';
    position: absolute;
    right: 10px;
}

.infor-tit:before {
    display: block;
    position: absolute;
    width: 13px;
    height: 13px;
    background: #0D3570;
    content: "";
    left: 0;
    top: 6px;
    border-radius: 50%;
}

.infor-text {
    margin-top: 10px;
    letter-spacing: 0.05em;
    line-height: 1.875;
}

.housing-01 {
    position: relative;
}

.page-housing .work-cat {
    font-size: 1.3rem;
}

.housing-01::after {
    content: "";
    width: 500px;
    height: 427px;
    background-image: url(../images/housing/after-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    top: -62px;
    right: -204px;
    position: absolute;
    z-index: -2;
}

.housing-04 {
    position: relative;
}

.housing-04::after {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #f4f2ed;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.text-recruit {
    font-size: 13.6rem;
    font-family: 'Noto Serif JP', serif;
    color: #c2e4ef;
    letter-spacing: 0.1em;
    position: absolute;
    top: -60px;
    right: 0;
}

@media (min-width: 768px) {
    .page-reform ul.list-anchor li {
        width: calc(20.66% - 24px);
    }
}

body.admin-bar .header-wrapper {
    top: 32px;
}

@media(min-width: 1100px) {
    .home-news .large-9 .col-inner {
        position: relative;
        width: calc(100% + 18px);
        left: -18px;
    }
}

.home-news {
    position: relative;
}

.home-news:before {
    /* content: "";
    width: 500px;
    height: 428px;
    background-image: url(../images/about/after-3.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 250px;
    left: calc(50% - 915px);
    z-index: -2;
    transform: scaleX(-1); */
}

.box-work-inner .img-work {
    height: 573px;
}

.box-work-inner .img-work img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.important-item a,
.important-item::after {
    transition: all 0.5s;
}

.important-item a:hover {
    opacity: 1;
}

.important-item {}

.important-item:hover a {
    color: #E81C24;
}

.important-item:hover:after {
    right: 20px;
}

a.btn.btn-main:before {
    content: '';
    /*絶対配置で位置を指定*/
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    /*色や形状*/
    background: #fff;
    /*背景色*/
    width: 100%;
    height: 100%;
    /*アニメーション*/
    transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 1);
    transform-origin: right top;
}

a.btn.btn-main.btn-white:before {
    background: #0f87bc;
    /*背景色*/
}

a.btn.btn-main {
    overflow: hidden;
}

a.btn.btn-main span {
    position: relative;
    z-index: 3;
}

@media(min-width: 768px) {
    a.btn.btn-main:hover:before {
        transform-origin: left top;
        transform: scale(1, 1);
    }
    .page-header-img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
    }
}

.news-item.biggerlink .img-news {
    overflow: hidden;
}

.news-item.biggerlink .img-news img {
    transition: all 0.5s;
}

.news-item.biggerlink:hover .img-news img {
    transform: scale(1.1);
}

.news-item.biggerlink:after {
    transition: all 0.5s;
}

.news-item.biggerlink:hover:after {
    right: 20px;
}

@media (min-width: 768px) and (max-width: 1240px) {
    .header-inner {
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media (min-width: 768px) and (max-width: 1140px) {
    .header-main .logo-left .logo {
        width: 200px;
    }
    .header-main .main-menu .nav>li {
        font-size: 15px;
        margin-right: 30px;
    }
}

@media (min-width: 768px) and (max-width: 915px) {
    .header-main .main-menu .nav>li>a {
        font-size: 1.3rem;
    }
    .header-main .main-menu .nav>li {
        margin-right: 20px;
    }
}

.about-03 .col-inner {
    max-width: 575px;
    margin-left: auto;
}

body:not(.home) .home-contact {
    display: none;
}

body:not(.home) .footer::after {
    height: 100%;
    top: unset;
    bottom: 0;
}

body:not(.home) .footer {
    padding-top: 93px;
}


/* body:not(.home) section:not(#page-header) {
    opacity: 0;
} */

body.page-business .page-header-img::after {
    background-image: url(../images/business/bg-page-business.png);
}

.box-link-business {
    transition: all 0.3s;
    border-radius: 10px;
}

.box-link-business:hover {
    opacity: 0.6;
}
.box-link-business{
    overflow: hidden;
}

.box-link-business a:hover{
    opacity: 1;
}
.box-link-business::after {
    transition: all 0.3s;
}
.box-link-business:hover::after {
   transform: scale(1.1);
}

#business-04 .title-business-jp {
    color: #333333;
    font-size: 3.5rem;
}

#business-04 .title-business-en {
    color: #333;
}

.img-busi-4 p {
    letter-spacing: 0.1em;
}

.housing-right p,
.busi-info-right p {
    text-align: justify;
}

.page-housing .box-work-inner .img-work {
    height: 450px;
}

.box-img-link.biggerlink {
    transition: all 0.5s;
}

.box-img-link.biggerlink:hover {
    opacity: 1;
}

.housing-right-5 {
    max-width: 486px;
}

#housing-04 .box-housing-right {
    max-width: 486px;
}


/* body.page-recruit section:not(#recruit-04) {
    z-index: 3;
    position: relative;
}

body.page-recruit section#recruit-04 {
    z-index: 2;
    position: relative;
}

body.page-recruit section#recruit-05 {
    z-index: 1;
    position: relative;
} */

body.page-recruit .text-recruit {
    top: 78px;
    left: calc(50% + 80px);
}

.box-title-recruit-3 h4 {
    letter-spacing: 0.2em;
}

.title-recruit-border {
    letter-spacing: 0.1em;
}

a.btn-pdf:hover {
    opacity: 0.6;
}

body:not(.home) a.btn.btn-main.btn-contact span::before {
    display: none;
}

body:not(.home) a.btn.btn-main.btn-contact span {
    letter-spacing: 0.2em;
}

body:not(.home) a.btn.btn-main.btn-contact:after {
    right: 15px !important;
}

body.category.category-4 #category-4-posts {
    margin-top: 50px;
    padding-top: 50px;
}

span.kako-pc {
    position: relative;
    left: -10px;
}

@media(min-width:1610px) {
    .text-banner-home::after {
        width: 50vw;
        background-image: url(../images/index/bg-text-banner-large.png);
        background-size: 100% 100%;
        left: calc(50% - 50vw)
    }
}

@media(min-width:1500px) {
    .banner-home::before {
        background-size: 100% 100%;
    }
}

.box-business-cont .box-title-business a {
    position: absolute;
}

.box-img-housing img {
    width: 100%;
}

.box-work-inner img {
    transition: all 0.5s;
}

.box-work-inner:hover .img-work img {
    transform: scale(1.1);
}

body.home .img-recruit img {
    border-radius: 5px;
}

@media(min-width: 1500px) {
    body.home .img-recruit img {
        width: calc(100% + 50vw - 615px);
    }
    .img-recruit {
        overflow: visible;
    }
    .list-recruit {
        width: calc(100% + 5vw);
        left: -5vw;
    }
    .box-home-recruit::after {
        left: calc(-250px - 5vw);
    }
    #page-header::before {
        background-size: 100% 100%;
    }
}

@media(min-width: 768px) {
    body.page-reform .title-jp {
        line-height: 1.75;
        position: relative;
        left: -10px;
    }
    body.page-reform .breadcrums {
        padding-top: 110px;
    }
}

body.page-works .page-header {
    z-index: 1;
}

body.page-works .sidebar {
    position: relative;
}

body.page-works .sidebar:before {
    content: "";
    width: 950px;
    height: 572px;
    background-image: url(../images/index/bg-works.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -145px;
    right: -180px;
}

body.page-works #page-header::before {
    z-index: 2;
}

body.page-cs .page-header::after {
    background: linear-gradient(90deg, #0D3570 0%, #4FC1EB 100%)
}
.breadcrumb-wrap{
    position: relative;
}
.breadcrumb-wrap .breadcrums{
    position: absolute;
    top: -90px;
    padding-top: 0;
}
body.page-cs .breadcrumb-wrap .breadcrums{
    top: -55px;
}
.recruit-01 {
    position: relative;
}

@media (orientation: portrait) and (min-width:768px) {
    .banner-home {
        height: 900px;
    }
}

.title-border.green {
    color: #006837;
    border-color: #006837;
}

@media(min-width:768px) {
    .banner-home {
        height: 60.8vw;
    }
    .banner-home::before {
        height: 14.45vw;
    }
    .banner-home>.container {
        margin: 0;
        width: 100%;
        max-width: 92.56vw;
    }
    .box-link-banner img {
        width: 15.8vw;
    }
    .text-banner-home {
        font-size: 2.36vw;
        height: 35.8vw;
        padding-bottom: 10.8vw;
    }
    
    .img-about-3 img{
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        position: relative;
        right: 0;
    }
    .img-about-3 .about-img{
        height: 480px;
        width: calc(100% + 50vw - 550px);
        right: 0;
        position: absolute;
        border-radius: 0 5px 5px 0;
        overflow: hidden;
    }
    @media(max-width:1130px){
        .img-about-3 .about-img{
            width: calc(100% + 30px);
        }
    }
}
.recruit-pdf a.btn.btn-pdf{
    max-width: 530px;
    min-height: 70px;
    padding-left: 35px;
    color: white;
    letter-spacing: 0.2em;
    background-color: #0F87BC;
    border: none;
    border-radius: 28px;
}
.recruit-pdf a.btn.btn-pdf::after{
    display: none;
}
.recruit-pdf a.btn.btn-pdf::before{
    background-image: url(../images/index/icon-right-white.svg);
    width: 22px;
    height: 8px;
    right: 20px;
}
.single-content .post-content a{
    text-decoration: underline;
    color: #0d3570;
}
.box-link-business.box-link-about::after{
    background-image: url(../images/about/bg-banner-about.png);
}
.box-banner-wrap{
    position: relative;
    padding-bottom: 60px;
}
.box-banner-wrap:before{
    content: "";
    width: 100vw;
    height: 190px;
    background: linear-gradient(-90deg, rgb(79, 193, 235) 0%, rgb(13, 53, 112) 100%);
    position: absolute;
    opacity: 0.1;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
}