@charset "utf-8";

/* ------------------ */
/* base
/* ------------------ */
* {
    box-sizing: border-box;
}
*::before,*::after {
    box-sizing: border-box;
}
html {
    font-size: 62.5%;
}
body {
    color: #151515;
    font-size: 1.8rem;
}
body.active {
    overflow: hidden;
}
img {
    width: 100%;
    vertical-align: bottom;
}
a {
  text-decoration: none;
  color: #151515;
}

.u-inner {
  margin: 0 auto;
  text-align: center;
}

.white {
    color: #fff;
}



    /* ------------------ */
    /* base_sp
    /* ------------------ */
    @media screen and (max-width:1100px) {
      .u-inner {
        padding: 0 5vw;
      }
      
    }
    


/* ------------------ */
/* arrow
/* ------------------ */
.cp_arrows {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #E8380D;
    transition: all 1s;
}
.link-button:hover > a > .cp_arrows {
    background-color: #fff;
    border: 1px solid #E8380D;
}
.cp_arrows [class*='cp_arrow'] {
	position: relative;
	display: inline-block;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	vertical-align: middle;
	color: #fff;
    transition: all 1s;
}
.link-button:hover > a > .cp_arrows [class*='cp_arrow'] {
    color: #E8380D;
}
.cp_arrows [class*='cp_arrow']:after,
.cp_arrows [class*='cp_arrow']:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
    content: '';
}
.cp_arrows [class*='cp_arrow'] {
	top: 0px;
    right: -1px;
	width: 10px;
	height: 10px;
	margin: 0.8em;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-radius: 0 2px 0 0;
}
.cp_arrows [class*='cp_arrow']:before,
.cp_arrows [class*='cp_arrow']:after {
	position: absolute;
	border-radius: 2px;
}
.cp_arrows [class*='cp_arrow']:before {
	top: -2px;
	right: 0;
	width: 14px;
	height: 2px;
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
	-webkit-transform-origin: right top;
	        transform-origin: right top;
	-webkit-box-shadow: inset 0 0 0 32px;
	        box-shadow: inset 0 0 0 24px;
}
.cp_arrows [class*='cp_arrow']:after {
	top: -2px;
	left: -1px;
	width: 2px;
	height: 2px;
	-webkit-box-shadow: inset 0 0 0 32px, 16px 17px;
	        box-shadow: inset 0 0 0 24px, 9px 9px;
}
.cp_arrows .cp_arrow_right {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}


.cp_arrows2 {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #E8380D;
}
.cp_arrows2 [class*='cp_arrow2'] {
	position: relative;
	display: inline-block;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	vertical-align: middle;
	color: #fff;

}
.cp_arrows2 [class*='cp_arrow2']:after,
.cp_arrows2 [class*='cp_arrow2']:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
    content: '';
}
.cp_arrows2 [class*='cp_arrow2'] {
	top: 5px;
    right: 0px;
	width: 10px;
	height: 10px;
	margin: 0.8em;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-radius: 0 2px 0 0;
}
.cp_arrows2 [class*='cp_arrow2']:before,
.cp_arrows2 [class*='cp_arrow2']:after {
	position: absolute;
	border-radius: 2px;
}
.cp_arrows2 [class*='cp_arrow2']:before {
	top: -1px;
	right: 0;
	width: 14px;
	height: 2px;
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
	-webkit-transform-origin: right top;
	        transform-origin: right top;
	-webkit-box-shadow: inset 0 0 0 32px;
	        box-shadow: inset 0 0 0 24px;
}
.cp_arrows2 [class*='cp_arrow2']:after {
	top: -2px;
	left: -1px;
	width: 2px;
	height: 2px;
	-webkit-box-shadow: inset 0 0 0 32px, 16px 17px;
	        box-shadow: inset 0 0 0 24px, 9px 9px;
}
.cp_arrows2 .cp_arrow2_down {
	-webkit-transform: rotate(135deg);
	        transform: rotate(135deg);
}

.cp_arrows2.open [class*='cp_arrow2'] {
	top: 2px;
}
.cp_arrows2 .cp_arrow2_down.open {
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}


/* ------------------ */
/* fade-in script
/* ------------------ */
.js-fadeinItem {
    opacity: 0;
    transform: translateY(50px);
    transition: 0.6s;
}
.js-fadeinItem.is-fadein {
    opacity: 1;
    transform: translateY(0);
}





/* -------------------
top__header
------------------- */
.top__header {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    background: linear-gradient(0deg,rgba(0,0,0,0),rgba(0,0,0,0.4));
    background-size: 100vw 86px;
    background-repeat: no-repeat;
}
.top__header.hidden {
    display: none;
}
.top__header-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.header__logo-img-wrapper {
    background-color: transparent;
}
.header__logo-img-wrapper > a {
    display: inline-block;
}
.header__logo-img-wrapper > a > img {
    width: 306px;
}

.top__h-nav-list,
.top__h-nav-shopping-list {
    display: flex;
    justify-content: center;
    align-items: center;
}
.top__h-nav-item {
    color: #fff;
}
.top__h-nav-item > a,
.top__h-nav-item > p {
    color: #fff;
}
.top__h-nav-item {
    margin-right: 20px;
    font-weight: bold;
    transition: all 0.5s;
}
.top__h-nav-item:hover:not(:first-child) {
    opacity: 0.5;
}
.top__h-nav-item > .contact {
    /* padding: 10px 15px; */
    border-radius: 50px;
    transition: all 0.5s;
}
/* ドロップダウンリスト */
.top__header-nav-wrapper {
    position: relative;
}
.top__h-nav-dropdown-wrapper {
    display: none;
    transition: all 1s;
}
.top__h-nav-dropdown-list {
    position: absolute;
    top: 73px;
    right: 0;
    background-color: #0F3258;
    padding: 22px 32px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.top__h-nav-item.service {
    padding: 25px 0;
}
.top__h-nav-item.service:hover > .top__h-nav-dropdown-wrapper {
    display: block;
}
.top__h-nav-dropdown-item:not(:last-child) {
    margin-right: 30px;
}
.top__h-nav-dropdown-item {
    transition: all .5s;
}
.top__h-nav-dropdown-item:hover {
    opacity: .7;
}
.top__h-nav-dropdown-img {
    width: 134px;
    height: 97px;
    margin-bottom: 5px;
}

.header__logo-sp {
    display: none;
}
.hamburger {
    display: none !important;
}
.sp-nav-wrapper {
    display: none;
}

/* sp */
@media screen and (max-width:900px) {
    .top__header-wrapper {
        display: block;
    }
    .top__header-nav-wrapper {
        display: none;
    }
    .header__logo {
        display: none;
    }
    .header__logo-sp {
        display: block;
    }

    .sp-nav-item > a,
    .sp-nav__tel-wrapper,
    .sp-nav__tel-wrapper > a {
        color: #fff;
    }
    .sp-nav__tel-wrapper > a > span {
        font-size: 2.4rem;
        color: #fff;
    }
    .sp-nav__tel-wrapper > a {
        font-size: 3.6rem;
    }
    .sp-nav__tel-wrapper > p {
        margin-top: 13px;
        font-size: 1.4rem;
    }
    .hamburger {
        display: block !important;
        width: 42px !important;
        height: 34px !important;
        position: fixed !important;
        top: 20px !important;
        left: unset !important;
        right: 15px !important;
        z-index: 10000 !important;
        padding: 0 !important;
        color: #fff !important;
        -moz-box-sizing: border-box !important;
        -webkit-box-sizing: border-box !important;
        box-sizing: border-box !important;
        -webkit-tap-highlight-color: transparent !important;
        -webkit-tap-highlight-color: transparent !important;
        -ms-touch-action: manipulation !important;
        touch-action: manipulation !important;
        cursor: pointer !important;
    }
    .hamburger__icon, .hamburger__icon:before, .hamburger__icon:after {
        display: block !important;
        height: 2px !important;
        background-color: #fff !important;
        -moz-transition-property: background-color, -moz-transform !important;
        -o-transition-property: background-color, -o-transform !important;
        -webkit-transition-property: background-color, -webkit-transform !important;
        transition-property: background-color, transform !important;
        -moz-transition-duration: 0.4s !important;
        -o-transition-duration: 0.4s !important;
        -webkit-transition-duration: 0.4s !important;
        transition-duration: 0.4s !important;
    }
    .hamburger__icon {
        position: relative !important;
        width: 100% !important;
        margin: 0 !important;
    }
    .hamburger__icon:before {
        top: 0 !important;
        width: 100% !important;
    }
    .hamburger__icon:after {
        width: 50% !important;
        top: 10px !important;
        right: 0;
    }
    .hamburger::after {
        content: "MENU";
        letter-spacing: 0.1em;
        position: absolute;
        bottom: 0;
        right: 0;
        line-height: 1;
        text-transform: uppercase;
        font-family: 'Barlow', sans-serif;
        font-weight: 700;
        font-size: 1.1rem;
        transition: .3s;
        color: #fff;
    }

    .hamburger.active .hamburger__icon {
        background-color: transparent !important;
    }
    .hamburger.active .hamburger__icon:before {
        top: 10px !important;
        right: 0;
        width: 100% !important;
    }
    .hamburger.active .hamburger__icon:after {
        width: 100% !important;
        top: 23px !important;
        right: 0;
    }
    .hamburger.active::after {
        opacity: 0;
    }

    .fat-nav {
        backdrop-filter: blur(13px);
        -webkit-backdrop-filter: blur(13px);
        background: #0000001a !important;
        opacity: 1;
        overflow-y: hidden !important;
    }
    .fat-nav li, .fat-nav li a {
        font-size: 1.8rem !important;
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 600;
        padding: 25px !important;
    }
    .sp-nav__tel-wrapper {
        text-align: center;
        margin-top: 20px;
    }

}
@media screen and (max-width:900px) {
    .header__logo-img-wrapper > a > img {
        width: 222px;
    }
}

/* -------------------
top__fv
------------------- */
.top__fv {
    height: 100vh;
    position: relative;
}
.slick-list {
    height: 100vh;
}
.slick-track {
    height: 100vh;
}
.slider {
    width: 100%;
    min-height: 100vh;
    margin-inline: auto;
    position: relative;
    overflow: hidden;
}
.slick-img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.top__fv-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -5;
}
.fv-img1 {
    background-image: url("../img/top__mv-img1.jpg");
    background-size: cover;
    background-position: 5% center;
}
.fv-img2 {
    background-image: url("../img/top__mv-img2.jpg");
    background-size: cover;
    background-position: center;
}
.fv-img3 {
    background-image: url("../img/top__mv-img3.jpg");
    background-size: cover;
    background-position: 90% center;
}
.fv-img4 {
    background-image: url("../img/top__mv-img4.jpg");
    background-size: cover;
    background-position: center;
}
.fv-img5 {
    background-image: url("../img/top__mv-img5.jpg");
    background-size: cover;
    background-position: center;
}
.fv-img6 {
    background-image: url("../img/top__mv-img6.jpg");
    background-size: cover;
    background-position: center;
}
.add-animation {
    animation: zoomUp 10s linear 0s normal both;
}
    @keyframes zoomUp {
        0% {
            transform: scale(1);
        }
        100% {
            transform: scale(1.2);
        }
    }

.top__fv-logo {
    position: absolute;
    bottom: 11%;
    left: 3%;
}

.top__mv-sub-title {
    color: #fff;
    font-size: 2.5rem;
    margin-top: 15px;
    letter-spacing: 0.2em;
}

.top__fv-bg {
    position: fixed;
    height: 200px;
    width: 100%;
    bottom: 0;
    left: 0;
    z-index: -1;
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.7), rgba(255, 255, 255, 0));
}

.scroll-bar {
    position: absolute;
    display: block;
    height: 85px;
    bottom: 0;
    margin: 0 auto;
    width: 10px;
    right: 4%;
    z-index: 9;
}
.scroll-bar > p {
    color: #fff;
    position: absolute;
    bottom: 100px;
    left: -18px;
    font-size: 1.6rem;
    transform: rotate(90deg);
}
.scroll-bar span {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    background-color: #fff;
    opacity: 0.5;
    pointer-events: none;
    animation: scrollanime 4s linear infinite;
    -webkit-animation: scrollanime 4s linear infinite;
    display: block;
    height: 200px;
}
@-webkit-keyframes scrollanime {
    0% {
      height: 0;
      transform: translateY(0);
    }
    50% {
      height: 50%;
      transform: translateY(0);
    }
    100% {
      height: 0;
      transform: translateY(100px);
    }
  }
  
  @keyframes scrollanime {
    0% {
      height: 0;
    }
    30% {
      top: 0;
      height: 80px;
    }
    60% {
      top: 80px;
      height: 0;
    }
    to {
      top: 80px;
      height: 0;
    }
  }

.top__mv-sp-title {
    display: none;
}

@media screen and (max-width:600px) {
    .top__fv-logo {
        bottom: 20%;
        left: 5vw;
        width: 73%;
        height: 8%;
    }
    .top__mv-title {
        display: none;
    }
    .top__mv-sp-title {
        display: block;
    }
    .top__mv-sub-title {
        font-size: 1.5rem;
        margin-top: 22px;
        letter-spacing: 0.2em;
    }
    .top__fv-bg {
        height: 167px;
    }
}

/* -------------------
top__about
------------------- */
.top__about {
    color: #fff;
}
.top__about-bg-blur {
    backdrop-filter: blur(13px);
    -webkit-backdrop-filter: blur(13px);
    background-color: #0000001a;
    opacity: 1;
    position: relative;
    z-index: 1;
    
}
.top__about-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    padding: 140px 0 0 0;
}
.top__about-title {
    font-size: 4.7rem;
    margin-bottom: 1.9rem;
}
.top__about-sub-title {
    margin-bottom: 3.4rem;
    line-height: 1.44444;
}
.top__about-text-wrapper {
    margin-bottom: 5rem;
}
.top__about-text-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.top__about-text-left-wrapper {
    margin-right: 30px;
}
.top__about-no-flex {
    display: flex;
    align-items: center;
}
.top__about-no {
    margin-right: 27px;
    font-size: 8rem;
    padding: 9px 0;
}
.top__about-no.no1 {
    padding-left: 5px;
}
.top__about-no-text {
    line-height: 1.454545;
    font-size: 2.2rem;
}
.top__about-text-right-wrapper {
    max-width: 70rem;
}
.top__about-text {
    line-height: 1.611111;
}
.link-button {
    display: inline-block;
    margin-bottom: 30px;
}
.link-button > a {
    display: flex;
    align-items: center;
}
.link-button > a > .white {
    color: #fff;
}
.link-button > a > p {
    margin-right: 2rem;
}

.slider-4 {
    padding-top: 100px;
    z-index: 5;
}
.scroll-img1 {
    width: 239px;
    height: 264px;
    margin-top: 40.5px;
    margin-right: 67px;
    border-radius: 10px;
}
.scroll-img2 {
    width: 266px;
    height: 295px;
    margin-top: 114.5px;
    margin-right: 53px;
    border-radius: 10px;
}
.scroll-img3 {
    width: 266px;
    height: 166px;
    margin-top: 0px;
    margin-right: -110.5px;
    border-radius: 10px;
}
.scroll-img4 {
    width: 241px;
    height: 205px;
    margin-top: 214.5px;
    margin-right: 48px;
    border-radius: 10px;
}
.scroll-img5 {
    width: 393px;
    height: 274px;
    margin-top: 17.5px;
    margin-right: 53px;
    border-radius: 10px;
}
.scroll-img6 {
    width: 350px;
    height: 255px;
    margin-top: 154.5px;
    margin-right: 49px;
    border-radius: 10px;
}
.scroll-img7 {
    width: 299px;
    height: 193px;
    margin-top: 0;
    margin-right: -209.5px;
    border-radius: 10px;
}
.scroll-img8 {
    width: 274px;
    height: 185px;
    margin-top: 234.5px;
    margin-right: 29px;
    border-radius: 10px;
}
.scroll-img9 {
    width: 392px;
    height: 264px;
    margin-top: 22.5px;
    margin-right: 55px;
    border-radius: 10px;
}
.scroll-img10 {
    width: 266px;
    height: 166px;
    margin-top: 234.5px;
    margin-right: 53px;
    border-radius: 10px;
}
.slider-4 .slick-track {
    height: unset;
}
.slider-4 .slick-list {
    height: unset;
}

.top__about--bg1 {
    position: absolute;
    bottom: 0%;
    left: 0;
    z-index: -1;
}
    @media screen and (min-width:2000px) {
        .top__about--bg1 {
            left: unset;
            right: 0;
            height: 60%;
        }
    }
.top__about-sp-bg1 {
    display: none;
}

/* top__about sp */
@media screen and (max-width:1100px) {
    .top__about-wrapper {
        max-width: none;
        margin: 0 auto;
        padding: 92px 5vw 0;
    }
    .top__about-title {
        font-size: 2.6rem;
        margin-bottom: 2.6rem;
    }
    .top__about-sub-title {
        font-size: 1.4rem;
        margin-bottom: 2.8rem;
    }
    .top__about-text-flex {
        flex-direction: column;
        align-items: flex-start;
    }
    .top__about-text-left-wrapper {
        width: auto;
        margin-bottom: 3.2rem;
        margin-right: 0;
    }
    .top__about-text-right-wrapper {
        max-width: unset;
    }
    .top__about-no {
        width: 54px;
        margin-right: 1.7rem;
        font-size: 5rem;
        padding: 0 0 6px;
    }
    .top__about-no.no1 {
        padding-left: 0;
    }
    .top__about-no-text {
        font-size: 1.8rem;
    }
    .top__about-br {
        display: none;
    }
    .top__about-text {
        line-height: 1.71428571428;
        font-size: 1.4rem;
    }
    .slider-4 {
        padding-top: 50px;
        padding-bottom: 150px;
    }
    .top__about--bg1 {
        display: none;
    }
    .top__about-sp-bg1 {
        display: block;
        position: absolute;
        bottom: -2px;
        left: 0;
        z-index: -1;
    }
    .scroll-img1 {
        width: 142px;
        height: 158px;
        margin-top: 23.5px;
        margin-right: 40px;
        border-radius: 10px;
    }
    .scroll-img2 {
        width: 158px;
        height: 176px;
        margin-top: 67.5px;
        margin-right: 32px;
        border-radius: 10px;
    }
    .scroll-img3 {
        width: 158px;
        height: 99px;
        margin-top: 0px;
        margin-right: -66px;
        border-radius: 10px;
    }
    .scroll-img4 {
        width: 144px;
        height: 122px;
        margin-top: 127.5px;
        margin-right: 28px;
        border-radius: 10px;
    }
    .scroll-img5 {
        width: 234px;
        height: 163px;
        margin-top: 10.5px;
        margin-right: 32px;
        border-radius: 10px;
    }
    .scroll-img6 {
        width: 208px;
        height: 152px;
        margin-top: 91.5px;
        margin-right: 29px;
        border-radius: 10px;
    }
    .scroll-img7 {
        width: 178px;
        height: 115px;
        margin-top: 0z;
        margin-right: -125px;
        border-radius: 10px;
    }
    .scroll-img8 {
        width: 163px;
        height: 110px;
        margin-top: 139.5px;
        margin-right: 18px;
        border-radius: 10px;
    }
    .scroll-img9 {
        width: 233px;
        height: 157px;
        margin-top: 13.5px;
        margin-right: 33px;
        border-radius: 10px;
    }
    .scroll-img10 {
        width: 158px;
        height: 99px;
        margin-top: 139.5px;
        margin-right: 30px;
        border-radius: 10px;
    }
}
@media screen and (max-width:625px) {
    .top__about-br {
        display: block;
    }
}

/* -------------------
top__service
------------------- */
.top__service {
    padding-top: 150px;
    padding-bottom: 140px;
    position: relative;
    z-index: 0;
    background-color: #fff;
    overflow-x: clip;

}
.top__service .top__title-wrapper {
    text-align: end;
    margin-bottom: -70px;
    max-width: 1280px;
    margin: 0 auto;
    position: relative;
}
.top__title,
.top__sub-title {
    text-align: center;
}
.top__title {
    font-size: 8rem;
    margin-bottom: 10px;
}
.top__sub-title {
    font-size: 2.6rem;
}
.top__service .top__sub-title {
    margin-bottom: 15px;
}
.top__service > .top__title-wrapper > .link-button > a {
    justify-content: flex-end;
    text-align: end;
    margin-right: 7rem;
}
.top__service-button {
    color: #151515;
}
.top__service-button-sp-wrapper {
    display: none;
}
.top__service-explanation-wrapper {
    position: absolute;
    right: 0;
    top: 27px;
}
.top__service-explanation {
    font-size: 2.5rem;
    color: #909090;
    line-height: 1.6;
}
.top__service-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 5px;
    max-width: 1280px;
    margin: 0 auto;
}
.top__service-link {
    position: relative;
    height: 532px;
}
.service-img {
    position: absolute;
    z-index: -1;
    height: 532px;
    width: 100%;
    bottom: 0;
    left: 0;
    transition: all 1s;
    object-fit: cover;
}
.service-img-sp {
    display: none;
}
.top__service-link-mask {
    position: absolute;
    height: 532px;
    width: 100%;
    bottom: 0;
    left: 0;
    background-color: #000;
    opacity: 0;
    z-index: 1;
    transition: all 1s;
}
.top__service-link:hover > .service-img {
    transform: scale(1.2);
    object-fit: cover;
}
.top__service-link:hover > .top__service-link-mask {
    opacity: 0.5;
}
.top__service-link:hover > .link-button > .cp_arrows {
    background-color: #fff;
    border: 1px solid #E8380D;
}
.top__service-link:hover > .link-button > .cp_arrows [class*='cp_arrow'] {
    color: #E8380D;
}

.top__service-item-wrapper {
    position: relative;
    overflow: hidden;
    height: 532px;
}
.top__service-item-wrapper.item2 {
    margin-top: 40px;
}
.top__service-item-wrapper.item3 {
    margin-top: 80px;
}
.top__service-item-wrapper.item4 {
    margin-top: 120px;
}
.top__service-item-wrapper > a {
    position: absolute;
    top: 0px;
    left: 0px;
    height: 532px;
    width: 100%;
}
.top__service-item-title {
    font-size: 2.4rem;
    position: absolute;
    bottom: 101px;
    left: 19px;
    z-index: 10;
}
.top__service-item-sub-title {
    font-size: 1.4rem;
    position: absolute;
    bottom: 72px;
    left: 19px;
    z-index: 10;
}
.top__service-item-wrapper > a >.link-button {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-right: 20px;
    margin-bottom: 0;
    position: absolute;
    bottom: 13px;
    right: 13px;
    z-index: 10;
    margin-right: 0;
}
.top__service-item-wrapper > a >.link-button > p {
    margin-right: 20px;
}
.top__catch-bg-title-wrapper {
    position: relative;
    top: 0px;
    display: flex;
    width: 100%;
    overflow: hidden;
    z-index: 0;
    margin-bottom: 4rem;
    margin-top: 56px;
}
.top__catch-bg-t-wrapper {
    position: relative;
    height: 1px;
}
.top__catch-title {
    position: absolute;
    top: 120px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    font-size: 3.5rem;
    text-wrap: nowrap;
    -webkit-text-wrap: nowrap;
}
.top__catch-br-sp {
    display: none;
}
.scroll-list {
    display: flex;
    align-items: center;
    animation: loop 100s infinite linear 0.5s both;
    margin-right: 0px;
}
.scroll-list > li {
    width: 100%;
    overflow-x: hidden;
}

.top__catch-bg-title {
    font-size: 12rem;
    color: #EAF1F8;
    margin-right: 100px;
    width: auto;
    text-wrap: nowrap;
    overflow-x: hidden;
}
@keyframes loop {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}

.top__service-flow-wrapper {
    text-align: center;
}
.top__service-img5 {
    max-width: 1280px;
}
.top__service-img5-sp {
    display: none;
}
.top__service-arrow {
    width: 100px;
    display: block;
    margin: 0 auto 2rem;
}
.top__service-flow-title {
    font-size: 3.5rem;
    margin-bottom: 2.5rem;
}
.top__service-flow-list {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    max-width: 1280px;
    margin: 0 auto 5rem;
}
.top__service-flow-item {
    height: 9rem;
    width: 19rem;
    border: 1px solid #DBE3EB;
    padding-top: 20px;
}
.top__service-flow-item:first-child {
    padding-top: 10px;
}
.top__service-flow-item:last-child {
    padding-top: 10px;
}
.top__service-flow-text {
    font-size: 1.3rem;
}
.top__service-flow-item-title > span {
    font-size: 1.4rem;
}
.top__service-flow-wrapper > a {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    max-width: 1280px;
    margin: 0 auto;
}
.top__service-flow-wrapper > a:hover > .cp_arrows {
    background-color: #fff;
    border: 1px solid #E8380D;
}
.top__service-flow-wrapper > a:hover > .cp_arrows [class*='cp_arrow'] {
    color: #E8380D;
}

.top__service-flow-wrapper > a > p {
    margin-right: 2rem;
}
.top__service-bg {
    position: absolute;
    top: -700px;
    left: 0;
    z-index: -2;
}

.top__service-bg2 {
    position: absolute;
    right: 0;
    bottom: -41%;
    z-index: -1;
}

.top__service-triangle {
    position: relative;
    width: 100%;
    height: 700px;
    margin-top: -700px;
}
/* .top__service-triangle-img {
    position: absolute;
    bottom: -20%;
    left: 0;
    width: 200%;
    height: 100%;
    transform: rotate(23.465113646363deg);
    z-index: -1;
} */
@media screen and (min-width:1400px) {
    .top__service-triangle-img {
        bottom: -25%;
    }
}
@media screen and (max-width:1300px) {
    .top__service-img5 {
        padding: 0 5vw;
    }
    .top__service-flow-list {
        flex-wrap: wrap;
        padding: 0 5vw;
    }
    .top__service-flow-item {
        flex-basis: calc(33.33% - 20px);
    }
    
}
@media screen and (max-width:1200px) {
    .top__service-explanation-wrapper {
        position: unset;
        text-align: center;
    }
}
@media screen and (max-width:900px) {
    .top__service {
        padding-top: 0;
        padding-bottom: 200px;
    }
    .top__service .top__title-wrapper {
        margin-bottom: 0;
    }
    .top__title {
        font-size: 6rem;
        margin-bottom: 6px;
    }
    .top__sub-title {
        font-size: 2rem;
    }
    .top__service .top__sub-title {
        margin-bottom: 36px;
    }
    .top__service-button-wrapper {
        display: none;
    }
    .top__service-button-sp-wrapper {
        display: block;
        margin-top: 47px;
        margin-right: 5vw;
    }
    .top__service-button-sp-wrapper > a {
        justify-content: flex-end;
    }
    .top__service-item-wrapper > a >.link-button > p {
        font-size: 1.5rem;
    }

    .top__service-explanation {
        font-size: 1.8rem;
        margin-bottom: 47px;
    }
    .top__service-list {
        grid-template-columns: unset;
        gap: 0;
    }
    .top__service-item-wrapper {
        height: 360px;
    }
    .top__service-item-wrapper > a {
        height: 360px;
    }
    .service-img {
        display: none;
    }
    .service-img-sp {
        display: block;
        position: absolute;
        z-index: -1;
        height: 360px;
        width: 100%;
        bottom: 0;
        left: 0;
        transition: all 1s;
        object-fit: cover;
    }
    .top__service-link-mask {
        position: absolute;
        height: 190px;
        width: 100%;
        bottom: 0;
        opacity: unset;
        background-color: unset;
        left: 0;
        background-image: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
        z-index: 1;
        transition: all 1s;
    }
    .top__service-item-wrapper.item2,
    .top__service-item-wrapper.item3,
    .top__service-item-wrapper.item4 {
        margin-top: 0;
    }
    .top__catch-bg-title-wrapper {
        margin-top: 0;
    }
    .top__catch-title {
        font-size: 2.5rem;
        text-align: center;
        top: 52px;
    }
    .top__catch-br-sp {
        display: block;
    }
    .top__service-img5 {
        display: none;
    }
    .top__service-img5-sp {
        display: block;
    }
    .top__service-arrow {
        margin: 20px auto;
    }
    .top__service-flow-title {
        font-size: 2.8rem;
        margin-bottom: 2.8rem;
    }
    .top__service-flow-list {
        flex-wrap: wrap;
        padding: 0 5vw;
        gap: 8px;
        margin-bottom: 4.4rem;
    }
    .top__service-flow-item {
        width: 160px;
        height: 81px;
    }
    .top__service-flow-item-title {
        font-size: 1.7rem;
    }
    .top__service-flow-item-title > span {
        font-size: 1.2rem;
    }
    .top__service-flow-text {
        font-size: 1.1rem;
    }
    .top__service-flow-wrapper > a {
        margin-right: 5vw;
    }
    .top__service-triangle-img {
        display: none;
    }    
}
@media screen and (max-width:700px) {
    .top__service-flow-item {
        flex-basis: calc(50% - 10px);
    }
    
}

/* -------------------
top__recruit
------------------- */
.top__recruit {
    /* margin-bottom: 20vw; */
    margin-bottom: 15vw;
    position: relative;
    /* padding-top: 10vw; */
    z-index: 0;
    overflow-x: clip;
}
.top__recruit-text-wrapper {
    margin: 0 auto;
    max-width: 1280px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.top__recruit .top__title,
.top__recruit .top__sub-title {
    text-align: start;
}
.top__recruit .top__sub-title {
    margin-bottom: 7.4rem;
}
.top__recruit-text1 {
    font-size: 3.2rem;
    margin-bottom: 1.7rem;
}
.top__recruit-text2 {
    font-size: 2rem;
    margin-bottom: 7.4rem;
}
.top__recruit-left-inner {
    margin-right: 30px;
}
.top__recruit-left-inner > a {
    display: flex;
    align-items: center;
}
.top__recruit-left-inner > a:hover > .cp_arrows {
    background-color: #fff;
    border: 1px solid #E8380D;
}
.top__recruit-left-inner > a:hover > .cp_arrows [class*='cp_arrow'] {
    color: #E8380D;
}
.top__recruit-left-inner > a > p {
    margin-right: 2rem;
}
.top__recruit-button-sp-wrapper {
    display: none;
}
.top__recruit-img1 {
    width: 60%;
    height: 470px;
    object-fit: cover;
    border-radius: 20px;
}


.top__recruit--bg1 {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    z-index: -1;
    width: 50vw;
    height: 200%;
}
.top__recruit--bg1-sp {
    display: none;
}

.top__service-triangle-img {
    position: absolute;
    top: 0;
    right: 0;
    width: 75%;
    height: 175%;
    z-index: -3;
}

@media screen and (max-width:1400px) {
    .top__recruit--bg1 {
        height: 150%;
    }
    .top__service-triangle-img {
        width: 100%;
    }
}
@media screen and (max-width:1300px) {
    .top__recruit-text-wrapper {
        padding: 0 5vw;
    }
}
@media screen and (max-width:900px) {
    .top__recruit {
        padding-top: 0;
        background-color: #fff;
        margin-bottom: 0;
    }
    .top__recruit-text-wrapper {
        display: block;
        padding: 0 5vw;
    }
    .top__recruit-text1 {
        font-size: 2.6rem;
        margin-bottom: 19px;
    }
    .top__recruit-text2 {
        font-size: 1.4rem;
        margin-bottom: 39px;
    }
    .top__recruit-left-inner > a {
        display: none;
    }
    .top__recruit-button-sp-wrapper {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        margin-top: 39px;
    }
    .top__recruit-button-sp-wrapper > p {
        margin-right: 10px;
    }
    .top__recruit-img1 {
        width: 100%;
        height: auto;
    }
    .top__recruit--bg1 {
        display: none;
    }
    .top__recruit--bg1-sp {
        display: block;
        position: absolute;
        top: -200px;
        left: 0;
        z-index: -1;
        width: 170vw;
        transform:translateZ(-1px);
    }
}
@media screen and (max-width:750px) {
    .top__recruit--bg1-sp {
        width: 180vw;
    }
}
@media screen and (max-width:650px) {
    .top__recruit--bg1-sp {
        width: 200vw;
    }
}
@media screen and (max-width:530px) {
    .top__recruit--bg1-sp {
        width: 220vw;
    }
}
@media screen and (max-width:440px) {
    .top__recruit--bg1-sp {
        width: 250vw;
    }
}
/* -------------------
top__contact
------------------- */
.top__contact {
    position: relative;
    padding-bottom: 90px;
}
.top__contact-title-wrapper {
    max-width: 1280px;
    margin: 0 auto;
}
.top__contact-title-left {
    display: flex;
    align-items: baseline;
}
.top__contact-title-left .top__title {
    margin: 0 30px 25px 0;
}
.top__contact-text {
    margin-bottom: 45px;
}
.top__contact-company-detail-wrapper {
    display: flex;
    align-items: center;
    max-width: 1280px;
    margin: 0 auto;
}
.top__contact-company {
    font-size: 2rem;
    margin-right: 40px;
}
.top__contact-company-inner {
    margin-right: 50px;
    color: #fff;
    -webkit-text-fill-color: #fff;
}
.top__contact-tel {
    font-size: 4rem;
    color: #fff;
    -webkit-text-fill-color: #fff;
}
.top__contact-tel-span {
    font-size: 2.4rem;
}
.top__contact-mail {
    display: block;
    cursor: pointer;
    border: 3px solid #fff;
    padding: 30px 120px;
    transition: all 1s;
}
.top__contact-mail:hover {
    background-color: #fff;
    color: #0F3258;
}

.top__contact-bg-mask {
    background-color: #000;
    width: 100%;
    height: 400%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.top__contact-bg2 {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    position: absolute;
    right: 0;
    bottom: 40%;
    transform: translateY(50%);
    z-index: 1;
    opacity: .9;
}
@media screen and (max-width:1300px) {
    .top__contact {
        padding: 0 5vw 90px;
    }
}
@media screen and (max-width:1100px) {
    .top__contact-mail {
        display: inline-block;
        padding: 30px 55px;
    }
}
@media screen and (max-width:1000px) {
    .top__contact-company-detail-wrapper {
        display: block;
    }
    .top__contact-company-inner {
        margin-right: 0;
        margin-bottom: 50px;
    }
}
@media screen and (max-width:900px) {
    .top__contact {
        padding: 65vw 5vw 5vw;
    }
    .top__contact-bg-mask {
        height: 150%;
    }
}
@media screen and (max-width:800px) {
    .top__contact-title-left {
        display: block;
    }
    .top__contact-title-left .top__title {
        margin: 0;
        text-align: start;
    }
    .top__contact-title-left .top__sub-title {
        margin: 0 0 26px;
        text-align: start;
    }
    .top__contact-text {
        font-size: 1.4rem;
        margin-bottom: 41px;
    }
    .top__contact-company-detail-wrapper {
        padding-bottom: 2vw;
    }
    .top__contact-tel {
        display: flex;
        align-items: center;
        margin-bottom: 10px;
    }
    .top__contact-tel-span {
        margin-right: 8px;
    }
    .top__contact-company-inner {
        margin-bottom: 40px;
        margin-right: unset;
    }
}

/* -------------------
footer
------------------- */
.footer {
    background-color: #0F3258;
}
.footer__inner {
    max-width: 1280px;
    margin: 0 auto;
    padding-top: 70px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    height: 479px;
}
.footer__logo {
    width: 220px;
    margin-bottom: 4rem;
}
.footer__address-flex {
    display: flex;
    align-items: flex-start;
    margin-bottom: 15px;
}
.footer__address-title {
    font-size: 1.3rem;
    width: 80px;
}
.footer__shop-address {
    font-size: 1.3rem;
}
.footer__nav-list {
    display: flex;
}
.footer__nav-item:first-child {
    margin-right: 15px;
}
.footer__nav-item-first {
    display: inline-block;
    transition: all 1s;
}
.footer__nav-item-first:hover {
    opacity: .7;
}
.footer__service-item > a {
    font-size: 1.3rem;
    transition: all 1s;
}
.footer__service-item > a:hover {
    opacity: .7;
}
.footer__nav-item {
    margin-right: 70px;
}
.footer__nav-item > a {
    display: inline-block;
    transition: all 1s;
}
.footer__nav-item > a:hover {
    opacity: .7;
}

.footer__nav-item:last-child {
    margin-right: 0;
}
.footer__copyright {
    font-size: 1.2rem;
    max-width: 1280px;
    margin: 0 auto;
    padding: 35px 0;
    text-align: right;
    border-top: 1px solid #244B76;
}
@media screen and (max-width:1300px) {
    .footer__inner {
        padding: 70px 5vw 0;
    }
}
@media screen and (max-width:950px) {
    .footer__inner {
        display: block;
        padding: 78px 5vw;
        height: auto;
    }
    .footer__nav-list {
        display: block;
    }
    .footer__shop-address {
        margin-bottom: 40px;
    }
    .footer__nav-item {
        margin-right: 0;
        margin-bottom: 20px;
    }
    .footer__copyright {
        max-width: none;
        padding: 35px 5vw 55px;
    }
}



/* -------------------
service
------------------- */
.service__mv {
    position: relative;
}
.mv-mask {
    position: absolute;
    width: 100%;
    height: 286px;
    bottom: 0;
    left: 0;
    background: linear-gradient(0deg, rgba(0,0,0,0.5), rgba(0,0,0,0));
    background-repeat: no-repeat;
    z-index: -5;
}
.service__mv-img {
    background-image: url("../img/service__mv.jpg");
    background-size: cover;
    background-position: center;
    opacity: .9;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -10;
}
.service__mv-logo-wrapper {
    padding: 16rem 0 12rem 12rem;
}
.service__mv-title {
    font-size: 8rem;
    padding-bottom: 5px;
}
.service__mv-sub-title {
    font-size: 2.6rem;
}

/* -------------------
service__link
------------------- */
.service__link {
    padding: 8rem 0 0;
    position: relative;
}
.service__link-wrapper {
    max-width: 1280px;
    margin: 0 auto;
}
.service__link-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 3rem;
}
.service__link-item {
    box-shadow: 0 0 10px rgba(0,0,0,.1);
    background-color: #fff;
    border-radius: 5px;
}
.service__link-item > a {
    display: flex;
    align-items: center;
}
.service__link-item > a > img {
    width: 9rem;
    height: 8.5rem;
}
.service__link-item > a > div {
    margin-left: 1rem;
    border-radius: 0 5px 5px 0;

}
.service__link-title {
    font-size: 1.6rem;
    margin-bottom: 4px;
}
.service__link-text {
    font-size: 1.1rem;
    color: #3B3E43;
}
.service__bg1 {
    position: absolute;
    top: 0;
    left: 0;
    width: 80vw;
    z-index: -10;
}

/* -------------------
service__recycle
------------------- */
.service__recycle {
    margin-bottom: 14rem;
}

.service__about-recycle-wrapper {
    position: relative;
    margin: 90px 0 70px;
}
.service__about-recycle-wrapper.scrap {
    margin: 0 0 70px;
}
.service__about-recycle-wrapper::before {
    display: block;
    content: "";
    background: url("../img/service__img1.jpg") no-repeat center center;
    background-size: cover;
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    right: 0;
    z-index: -1;
}
    @media screen and (min-width:900px) {
        .service__about-recycle-wrapper::before {
            width: 50vw;
        }
    }
    @media screen and (max-width:900px) {
        .service__about-recycle-wrapper {
            padding-top: 50vw;
        }
        .service__about-recycle-wrapper::before {
            height: 50vw;
        }
    }

.service__about-recycle-wrapper.scrap::before {
    background: url("../img/service__img2.jpg") no-repeat center center;
    background-size: cover;
    left: 0;
}
.service__about-recycle-wrapper.rpf::before {
    background: url("../img/service__about11.jpg") no-repeat center center;
    background-size: cover;
}
.service__about-recycle-wrapper.copper::before {
    background: url("../img/service__about17.jpg") no-repeat center center;
    background-size: cover;
    left: 0;
}


.service__about-text-wrapper {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 3em 0 !important;
    max-width: 1280px;
    margin: 0 auto;
}
.service__about-text-wrapper.scrap {
    justify-content: flex-end;
}
.service__about-text-wrapper.cooper {
    justify-content: flex-end;
}
.service__about-text-inner {
    margin: 0;
    background: transparent;
    max-width: 580px;
}
    @media screen and (max-width:1280px) {
        .service__about-text-inner {
            max-width: 450px;
        }
    }
    @media screen and (max-width:900px) {
        .service__about-text-inner {
            width: 100%;
            margin: 0 auto;
            max-width: unset;
        }
    }

.service__title-wrapper {
    display: flex;
    align-items: center;
    margin-bottom: 4rem;
}
.service__title-img {
    width: 8px;
    height: 24px;
    margin-right: 1.2rem;
}
.service__title {
    font-size: 3.2rem;
}
.service__text {
    line-height: 1.77777;
    color: #151515;

}



.service__about-img-wrapper {
    max-width: 1280px;
    margin: 0 auto 5rem;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px;
}
.service__about-img {
    width: 100%;
    height: 257px;
    object-fit: cover;
    margin-bottom: 1rem;
}
.service__about-img-text {
    font-size: 1.8rem;
    line-height: 1.44444;
}

.service__area-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 100px;
    border: 6px solid #D0DAE3;
    max-width: 1280px;
    margin: 0 auto;
}
.service__area-img {
    padding: 25px 0;
    width: 240px
}
.service__area-title {
    font-size: 3rem;
    margin-bottom: 1.5rem;
}
.service__area-title-detail-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-bottom: 25px;
}
.service__area-detail {
    font-size: 1.8rem;
    border: 1px solid #0F3258;
    border-radius: 16px;
    padding: 1px 25px 3px;
}
.service__area-text {
    font-size: 2.2rem;
    line-height: 1.5454545454;
    color: #244B76;
}

@media screen and (max-width:900px) {
    .service__text {
        width: 100%;
    }
}

/* -------------------
service__recycle
------------------- */
.service__scrap {
    padding: 120px 0 115px;
    background-color: #EAF1F8;
}
.service__text.scrap {
    line-height: 1.77777;
    color: #151515;
    width: 100%;
    margin-right: 0;
}
.service__area-title-detail-wrapper.scrap {
    display: inline-block;
}
.service__area-wrapper.scrap {
    margin-bottom: 3rem;
    background-color: #fff;
}
.service__column-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    background-color: #fff;
    border: 6px solid #D0DAE3;
    padding: 40px 70px;

}
.service__column-list {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 70px;
}
.service__column-title {
    font-size: 2.6rem;
}
.service__column-sub-title {
    font-size: 1.3rem;
}
.service__about10 {
    width: 231px;
}
.service__column-text {
    font-size: 1.6rem;
    line-height: 1.5;
    color: #151515;
}
@media screen and (max-width:900px) {
    .service__text.scrap {
        width: 100%;
    }
}
/* -------------------
service__rpf
------------------- */
.service__rpf {
    margin-top: 12rem;
    margin-bottom: 12rem;
}
.service-rpf__flow {
    max-width: 1280px;
    margin: 0 auto;
    
}
.service-rpf__flow-title {
    font-size: 3rem;
    margin-bottom: 2rem;
}
.service-rpf__flow-list {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 7rem;
}
.service-rpf__flow2-flex {
    display: flex;
    align-items: center;
}
.service-rpf__flow2-title {
    font-size: 1.8rem;
    color: #0F3258;
    margin-right: 5px;
    padding-top: 5px;
}
.service-rpf__flow2-no {
    font-size: 4rem;
}
.service-rpf__flow2-text {
    line-height: 1.444444;
    margin-top: 10px;
}
.service-rpf__img {
    width: 278px;
    height: 200px;
    object-fit: cover;
}
.service-rpf__img-arrow {
    margin-top: 106px;
}
.service-rpf__column-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    background-color: #fff;
    border: 6px solid #D0DAE3;
    padding: 40px 70px;

}
.service-rpf__column-list {
    display: flex;
    justify-content: center;
    align-items: center;
}
.service-rpf__column-flex {
    margin-left: 40px;
}
.service-rpf__column-title {
    font-size: 3rem;
    margin-bottom: 1rem;
}
.service-rpf__column-sub-title {
    font-size: 2.2rem;
    color: #244B76;
    line-height: 1.545454;
}
.service__about16 {
    width: 240px;
    height: 172px;
    margin-right: 10px;
}

/* -------------------
service__copper
------------------- */
.service__copper {
    padding: 120px 0 110px;
    background-color: #EAF1F8;
}
.service-cooper__text-wrapper {
    border: 6px solid #D0DAE3;
    background-color: #fff;
    padding: 3.2rem 3.7rem 4rem;
    margin-top: 4rem;
}
.service-cooper__title {
    font-size: 2.2rem;
    margin-bottom: 1rem;
}
.service-cooper__text {
    line-height: 1.77777;
    color: #151515;
}
.service-cooper__about-img-text {
    color: #151515;
    font-size: 1.8rem;
    line-height: 1.44444;
}
.service__about-img-inner > .service-cooper__title {
    margin-bottom: 2rem;
}

/* service_sp */
@media screen and (max-width:1300px) {
    .service-rpf__flow {
        padding: 0 5vw;
    }
    .service-rpf__flow-list {
        display: block;
    }
    .service-rpf__img-arrow {
        display: block;
        margin: 0 auto;
        width: 20px;
        transform: rotate(90deg);
    }
    .service-rpf__img {
        width: 100%;
        height: 500px;
    }
}
@media screen and (max-width:900px) {
    .service__mv-logo-wrapper {
        padding: 200px 5vw;
    }
    .service__mv-img {
        background-position: 90%,100%;
    }
    .service__mv-title {
        font-size: 5rem;
    }
    .service__mv-sub-title {
        font-size: 2rem;
    }
    .service__link {
        padding: 8rem 5vw;
    }
    .service__link-list {
        display: block;
    }
    .service__link-item {
        margin-bottom: 25px;
    }
    .service__recycle {
        padding: 0 5vw;
        margin-bottom: 50px;
    }
    .service__about-text-wrapper {
        display: block;
    }
    .service__title {
        font-size: 2.1rem;
    }
    .service__text {
        margin-right: 0;
        font-size: 1.4rem;
        margin-bottom: 25px;
    }
    .service__img1 {
        width: 100%;
    }
    .service__about-img-wrapper {
        display: block;
    }
    .service__about-img-inner {
        margin-bottom: 25px;
    }
    .service__about-img-text {
        font-size: 1.4rem;
    }
    .service__area-wrapper {
        display: block;
        max-width: unset;
        padding: 0 5vw;
    }
    .service__area-img {
        margin-bottom: 25px;
        margin-top: 25px;
        width: 100%;
        padding: 0;
    }
    .service__area-title {
        font-size: 2.4rem;
    }
    .service__area-title-detail-wrapper {
        display: block;
        text-align: center;
    }
    .service__area-detail {
        font-size: 1.5rem;
    }
    .service__area-text {
        font-size: 1.8rem;
        margin-bottom: 25px;
    }
    .service__scrap {
        padding: 50px 5vw;
    }
    .service__column-wrapper {
        max-width: unset;
        padding: 5vw;
    }
    .service__column-list {
        display: block;
    }
    .service__column-sub-title {
        margin-bottom: 25px;
    }
    .service__about10 {
        width: 100%;
        margin-bottom: 25px;
    }
    .service__column-title {
        font-size: 2.2rem;
    }
    .service__column-text {
        font-size: 1.4rem;
    }
    .service__rpf {
        margin-top: 5rem;
        margin-bottom: 5rem;
        padding: 0 5vw;
    }
    .service-rpf__flow-title {
        font-size: 2.2rem;
    }
    .service-rpf__img {
        height: 200px;
    }

    .service-rpf__flow2-text {
        font-size: 1.4rem;
    }

    .service-rpf__column-wrapper {
        max-width: unset;
        padding: 0 5vw;
    }
    .service-rpf__column-list {
        display: block;
    }
    .service__about16 {
        width: 100%;
        height: 100%;
        margin-top: 20px;
    }
    .service-rpf__column-flex {
        margin: 25px 0;
    }
    .service-rpf__column-title {
        font-size: 2.2rem;
    }
    .service-rpf__column-sub-title {
        font-size: 1.8rem;
    }
    .service__copper {
        padding: 50px 5vw;
    }
    .service-cooper__text-wrapper {
        padding: 5vw;
        margin-bottom: 4rem;
    }
    .service-cooper__title {
        font-size: 1.8rem;
    }
    .service-cooper__text-wrapper > p {
        font-size: 1.41rem;
    }
    .service__img17 {
        width: 100%;
        height: 100%;
    }
    .service-cooper__text {
        font-size: 1.4rem;
    }
    .service-cooper__about-img-text {
        font-size: 1.4rem;
    }
    .service__about-img {
        height: auto;
    }
}

/* -------------------
common__contact
------------------- */
.common__contact {
    position: relative;
    z-index: 0;
}
.common-contact__title-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    padding-top: 108px;
}
.common-contact__title-left {
    display: flex;
    align-items: baseline;
}
.common-contact__title {
    margin: 0 30px 25px 0;
    font-size: 8rem;
}
.common-contact__sub-title {
    font-size: 2.6rem;
}
.common-contact__text {
    margin-bottom: 45px;
}
.common-contact__company-detail-wrapper {
    display: flex;
    align-items: center;
    max-width: 1280px;
    margin: 0 auto;
    padding-bottom: 87px;
}
.common-contact__company {
    font-size: 2rem;
    margin-right: 40px;
}
.common-contact__company-inner {
    color: #fff;
    margin-right: 50px;
    -webkit-text-fill-color: #fff;
}
.common-contact__tel {
    font-size: 4rem;
    color: #fff;
    -webkit-text-fill-color: #fff;
}
.common-contact__tel-span {
    font-size: 2.4rem;
}

.common__contact-bg-mask {
    background-color: #000;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
}
.common-contact__bg2 {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 1;
    opacity: .8;
}

.common-contact__mail {
    display: block;
    cursor: pointer;
    border: 3px solid #fff;
    padding: 30px 120px;
    transition: all 1s;
}
.common-contact__mail:hover {
    background-color: #fff;
    color: #0F3258;
}
@media screen and (max-width:1280px) {
    .common__contact {
        padding: 50px 5vw;
    }
    .common-contact__title-wrapper {
        padding: 108px 0 0;
    }
    .common-contact__company-detail-wrapper {
        padding: 0 0 87px;
    }

}
@media screen and (max-width:1100px) {
    .common-contact__mail {
        display: inline-block;
        padding: 30px 60px;
    }
}
@media screen and (max-width:1000px) {
    .common-contact__company-detail-wrapper {
        display: block;
    }
    .common-contact__bg2 {
        object-fit: cover;
        object-position: center;
    }
}
@media screen and (max-width:800px) {

    .common-contact__title-left {
        display: block;
    }
    .common-contact__title {
        font-size: 6rem;
        margin: 0;
        text-align: start;
    }
    .common-contact__sub-title {
        font-size: 2rem;
        margin: 0 0 26px;
        text-align: start;
    }
    .common-contact__text {
        font-size: 1.4rem;
        margin-bottom: 41px;
    }
    .common-contact__contact-tel {
        display: flex;
        align-items: center;
        margin-bottom: 10px;
    }
    .common-contact__contact-tel-span {
        margin-right: 8px;
    }
    .common-contact__company-inner {
        margin-bottom: 40px;
        margin-right: unset;
    }

}

/* -------------------
company
------------------- */
/* company__mv */
.company__mv-img {
    background-image: url("../img/company__mv.jpg");
    background-size: cover;
    background-position: center;
    opacity: .9;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -10;
}

/* company__message */
.company__message {
    position: relative;
    padding: 100px 0;

}
.company__message-wrapper {
    display: flex;
    justify-content: space-between;
    max-width: 1280px;
    margin: 0 auto;
}
.company__message-img {
    width: 307px;
    height: 380px;
    object-fit: cover;
    border-radius: 20px;
    margin-bottom: 20px;
    margin-right: 80px;
}
.company__name-title {
    font-size: 2rem;
    margin-bottom: 5px;
}
.company__message-name-wrapper {
    display: flex;
    align-items: center;
}
.company__ceo-name-title {
    font-size: 1.5rem;
    margin-right: 22px;
}
.company__ceo-name3333333333333333333 {
    font-size: 2.7rem;
}
.company__title {
    font-size: 5rem;
    margin-bottom: 5px;
}
.company__sub-title {
    font-size: 1.8rem;
    margin-bottom: 3rem;
}
.company__message-text {
    font-size: 1.8rem;
    color: #151515;
    line-height: 1.777777;
}

/* company__about */
.company__about-history {
    margin-bottom: 110px;
}
.company__about-history-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    gap: 120px;
}
.company__about-wrapper {
    width: 50%;
}
.company__about-detail {
    border-left: 1px solid #244B76;
    padding-left: 30px;
}
.company__about-detail-list {
    display: flex;
}
.company__about-detail-list > dd {
    width: 90px;
    margin-bottom: 20px;
    margin-right: 30px;
}
.company__about-detail-list > dt {
    line-height: 1.777777;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	color: #151515;
    margin-bottom: 20px;
}
.company__about-detail-list > dt > span {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
	color: #151515;
}
.company__history-wrapper {
    width: 50%;
}

/* company__license */
.company__license {
    background-color: #244B76;
    padding: 80px 0 100px;
}
.company__license-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    text-align: center;
}
.company__license-list {
    display: flex;
    text-align: start;
    justify-content: center;
    align-items: center;
}
.company__license-list > div {
    border-left: 1px solid #fff;
    padding: 0 35px;
}
.company__license-list > div > p {
    line-height: 1.55555;
    margin-bottom: 15px;
}
.company__license-list > div > p::before {
    content: "●";
}

/* company__equipment */
.company__equipment {
    background-color: #EAF1F8;
    padding: 80px 0 120px;
}
.company__equipment-title-wrapper {
    text-align: center;
}
.company__equipment-main-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    text-align: center;
}
.company__equipment-main-wrapper > h4 {
    margin-top: 30px;
    font-size: 2.8rem;
    margin-bottom: 1rem;
}
.company__equipment-main-wrapper > h5 {
    font-size: 1.8rem;
    margin-bottom: 3.5rem;
}
.company__equipment-image-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px 55px;
    text-align: start;
    margin-bottom: 75px;
}
.company__equipment-image-list > div > img {
    margin-bottom: 1rem;
}
.company__equipment-image-list > div > p {
    font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	color: #151515;
}

/* company__access */
.company__access {
    margin-top: 115px;
    margin-bottom: 130px;
}
.company__access-wrapper {
    max-width: 1280px;
    margin: 0 auto 80px;
    text-align: center;
}
.company__access-wrapper > h4 {
    font-size: 2.8rem;
    margin-bottom: 1rem;
}
.company__access-wrapper > h5 {
    font-size: 1.8rem;
    margin-bottom: 3rem;
    font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	color: #151515;
}
.company__access-img-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
    margin-bottom: 40px;
}
.company__access-img-wrapper > img {
    width: calc((100% - 40px) / 2);
    height: 400px;
    object-fit: cover;
}
.company__access-other-wrapper {
    max-width: 1280px;
    margin: 0 auto 80px;
    text-align: center;
}
.company__access-other-wrapper > h4 {
    font-size: 2.8rem;
    margin-bottom: 1rem;
}
.company__access-other-wrapper > h5 {
    font-size: 1.8rem;
    margin-bottom: 3rem;
    font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	color: #151515;
}
.company__access-img-wrapper > iframe {
    width: calc((100% - 40px) / 2);
}

/* company__sp */
@media screen and (max-width:1000px) {
    .company__message {
        padding: 50px 5vw;
    }
    .company__message-wrapper {
        display: block;
    }
    .company__message-img {
        margin-right: 0;
        width: 100%;
        height: 100%;
    }
    .company__message-name-wrapper {
        margin-bottom: 50px;
    }
    .company__name-title {
        font-size: 1.8rem;
    }
    .company__ceo-name-title {
        font-size: 1.4rem;
    }
    .company__ceo-name {
        font-size: 2.4rem;
    }
    .company__title {
        font-size: 4rem;
    }
    .company__sub-title {
        font-size: 1.6rem;
    }
    .company__message-text {
        font-size: 1.4rem;
    }
    .company__about-history-wrapper {
        display: block;
    }
    .company__about-history-wrapper {
        max-width: unset;
        padding: 0 5vw;
    }
    .company__about-wrapper {
        width: 100%;
    }
    .company__about-detail {
        padding-left: 15px;
        margin-bottom: 50px;
    }
    .company__about-detail-list {
        justify-content: space-between;
        align-items: baseline;
        margin-bottom: 20px;
    }
    .company__about-detail-list > dd {
        font-size: 1.6rem;
        width: unset;
        margin: 0;
        text-wrap: nowrap;
        -webkit-text-wrap: nowrap;
    }
    .company__about-detail-list > dt {
        font-size: 1.6rem;
        margin-bottom: 0;
        width: 230px;
    }
    .company__history-wrapper {
        width: 100%;
    }
    .company__license-list {
        display: block;
    }
    .company__license-list > div {
        padding: 0 5vw;
        border-left: none;
    }
    .company__license-list > div > p {
        width: 100%;
        font-size: 1.5rem;
    }
    .company__equipment {
        padding: 50px 5vw;
    }
    .company__equipment-main-wrapper > h4 {
        font-size: 2.4rem;
    }
    .company__equipment-main-wrapper > h5 {
        font-size: 1.6rem;
    }
    .company__equipment-image-list {
        grid-template-columns: 1fr 1fr;
        gap: 15px;
        margin-bottom: 0;
    }
    .company__equipment-image-list > div > p {
        font-size: 1.4rem;
    }
    .company__access {
        margin-top: 50px;
        margin-bottom: 50px;
    }
    .company__access-wrapper > h4 {
        font-size: 2.4rem;
    }
    .company__access-wrapper > h5 {
        font-size: 1.6rem;
    }
    .company__access-img-wrapper {
        display: block;
    }
    .company__access-img-wrapper > img {
        padding: 0 5vw;
        width: 100%;
        height: 100%;
        margin-bottom: 20px;
    }
    .company__access-wrapper > iframe {
        padding: 0 5vw;
    }
    .company__access-other-wrapper > h4 {
        font-size: 2.4rem;
    }
    .company__access-other-wrapper > h5 {
        font-size: 1.6rem;
    }
    .company__access-other-wrapper > .company__access-img-wrapper > img {
        margin-bottom: 30px;
        padding: 0 5vw;
        width: 100%;
        height: 100%;
    }
    .company__access-other-wrapper > .company__access-img-wrapper > iframe {
        padding: 0 5vw;
        width: 100%;
    }
    .company__access-other-wrapper {
        margin: 0;
    }
}

/* -------------------
contact
------------------- */
/* contact__mv */
.contact__mv-img {
    background-image: url("../img/contact__mv.jpg");
    background-size: cover;
    background-position: center;
    opacity: .9;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -10;
}
.contact__main {
    margin: 70px auto 150px;
    max-width: 1000px;
}
.contact__title {
    text-align: center;
    color: #3B3E43;
}
.contact__title {
    line-height: 1.875;
    margin-bottom: 50px;
}
.form__table {
    max-width: 1000px;
    margin: 0 auto;
    width: 100%;
}
.form__table > tbody > tr {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 10px;
}
.form__flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 210px;
    margin-right: 1rem;
    margin-top: 12.5px;
}
.form__tr1 {
    margin-bottom: 12.5px;
    display: flex;
    justify-content: center;
    align-items: center !important;
    gap: 10px;
}
.form__th1 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 210px;
    margin-right: 1rem;
}
.form__td1 {
    width: 680px;
}
.form__tr > td,
.textarea__tr > td {
    width: 680px;
}
.radio {
    margin-bottom: 30px;
}
.wpcf7-list-item > label > span {
    font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	color: #3B3E43;
}

.any {
    font-size: 1.3rem;
    color: #0F3258;
    border: 1px solid #0F3258;
    border-radius: 14px;
    padding: 4px 14px;
}
.must {
    font-size: 1.3rem;
    color: #E8380D;
    border: 1px solid #E8380D;
    border-radius: 14px;
    padding: 4px 14px;
}
.form__area,.form__textarea {
    background-color: #EAF1F8;
    border: none;
    border-radius: 4px;
    padding: 1.4rem;
    margin-bottom: 2rem;
    width: 100%;
} 

.contact-button-wrapper {
    text-align: center;
}
.contact-button {
    cursor: pointer;
    width: 300px;
    height: 70px;
    background-color: #0F3258;
    font-size: 1.7rem;
}
.contact__br-sp {
    display: none;
}

/* contact__sp */
@media screen and (max-width:950px) {
    .contact__main {
        padding: 0 5vw;
    }
    .contact__title {
        font-size: 1.6rem;
    }

    .form__table {
        display: block;
    }
    .form__table > tbody {
        display: block;
    }
    .form__table > tbody > tr {
        display: block;
    }
    .form__area ,
    .form__textarea {
        width: 100%;
    }
    .form__tr > td ,
    .textarea__tr > td {
        display: block !important;
        width: 100% !important;
    }
    .form__th1 {
        margin-bottom: 20px;
    }
    .form__flex {
        margin-bottom: 20px;
    }
}
@media screen and (max-width:600px) {
    .contact__br-sp {
        display: block;
    }
}
.wpcf7-list-item-label::before, .wpcf7-list-item-label::after {
    content: "" !important;
}
.wpcf7-list-item-label::before {
    margin-left: 10px;
}

/* -------------------
contact-confirm
------------------- */
.c-confirm-form__table {
    margin: 0 auto 50px;
}
.mb20 {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 20px;
}
.c-confirm-form__flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 210px;
}
.c-confirm-form__tr1 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 210px;
}
.c-confirm-contact-button-wrapper {
    text-align: center;
}
.c-confirm-contact-button-wrapper > p > input {
    text-align: center;
    cursor: pointer;
    width: 300px;
    height: 70px;
    background-color: #0F3258;
    font-size: 1.7rem;
    margin-bottom: 30px;
    font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
	color: #fff;
}
.wpcf7-spinner {
    display: none !important;
}

/* -------------------
recruit
------------------- */
/* recruit__mv */
.recruit__mv {
    height: 100vh;
    position: relative;
}
.recruit__mv-img {
    object-fit: cover;
    height: 100vh;
}
.recruit__mv-logo-title {
    position: absolute;
    font-size: 13rem;
    bottom: 10%;
    left: 5%;

}
.recruit__mv-logo-sub-title {
    position: absolute;
    font-size: 2.6rem;
    bottom: 7%;
    left: 5%;
}
.recruit__mv-logo1 {
    position: absolute;
    top: 160px;
    right: 150px;
    width: 580px;
}
.scroll-bar {
    position: absolute;
    display: block;
    height: 85px;
    bottom: 0;
    margin: 0 auto;
    width: 10px;
    right: 4%;
    z-index: 9;
}
.scroll-bar > p {
    color: #fff;
    position: absolute;
    bottom: 100px;
    left: -18px;
    font-size: 1.6rem;
    transform: rotate(90deg);
}
.scroll-bar span {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    background-color: #fff;
    opacity: 0.5;
    pointer-events: none;
    animation: scrollanime 4s linear infinite;
    -webkit-animation: scrollanime 4s linear infinite;
    display: block;
    height: 200px;
}
@-webkit-keyframes scrollanime {
    0% {
      height: 0;
      transform: translateY(0);
    }
    50% {
      height: 50%;
      transform: translateY(0);
    }
    100% {
      height: 0;
      transform: translateY(100px);
    }
  }
  
  @keyframes scrollanime {
    0% {
      height: 0;
    }
    30% {
      top: 0;
      height: 80px;
    }
    60% {
      top: 80px;
      height: 0;
    }
    to {
      top: 80px;
      height: 0;
    }
  }



.recruit__about {
    /* position: relative; */
    padding-top: 130px;

}

.recruit-about__wrapper {
    max-width: 1280px;
    margin: 0 auto 180px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 80px;
}
.recruit-about__title {
    font-size: 3.6rem;
    margin-bottom: 50px;
    line-height: 1.333333;
}
.recruit-about__text {
    font-size: 1.8rem;
    margin-bottom: 25px;
    color: #151515;
    line-height: 1.777777;
}
.recruit-about__img {
    width: 45%;
}

main {
    position: relative;
}
.recruit__bg-img1 {
    position: absolute;
    bottom: 0;
    right: 0;
    height: calc(100% - 100vh);
    z-index: -30;
} 

/* recruit__work-style */
.recruit__work-style {
    margin-bottom: 156px;
}
.recruit__work-style-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    background-image: url("../img/recruit__work-style-bg1.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 20px;
    height: 817px;
    position: relative;
}
.recruit__title {
    font-size: 12rem;
    margin-right: 20px;
}
.recruit__work-style-title {
    padding: 25px 0 0 47px;
}
.recruit__work-style-title.gallery {
    padding: 25px 0 0 0;
}
.recruit__sub-title {
    font-size: 1.8rem;
}
.recruit__work-style-sub-title {
    font-size: 2.6rem;
    padding-left: 57px;
}
.recruit__text1 {
    font-size: 3.2rem;
    position: absolute;
    bottom: 240px;
    left: 65px;
}
.recruit__text2 {
    font-size: 1.8rem;
    line-height: 1.7777777777;
    position: absolute;
    bottom: 40px;
    left: 65px;
    z-index: 10;
    width: 780px;
}
.recruit__bg-mask {
    background: linear-gradient(0deg,rgba(0,0,0,0.5),rgba(0,0,0,0));
    width: 100%;
    height: 286px;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 5;
    border-radius: 20px;
}

/* recruit__interview */
.recruit__interview-title-wrapper {
    max-width: 1280px;
    margin: 0 auto;
}

.recruit__interview-title-wrapper {
    display: flex;
    align-items: baseline;
    margin-bottom: 32px;
}

/* １人目 */
.recruit__interview-mv {
    background-image: url("../img/recruit-interview__bg1.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 604px;
    position: relative;
    margin-bottom: 100px;
}
.recruit-interview__mv-title {
    font-size: 1.8rem;
    position: absolute;
    bottom: 165px;
    left: 60px;
    z-index: 5;
}
.recruit-interview__mv-title > span {
    font-size: 2.8rem;
}
.recruit-interview__mv-sub-title {
    font-size: 3.8rem;
    position: absolute;
    bottom: 45px;
    left: 60px;
    z-index: 5;
}
.recruit-interview__bg-mask {
    background: linear-gradient(0deg,rgba(0,0,0,0.5),rgba(0,0,0,0));
    width: 100%;
    height: 286px;
    position: absolute;
    bottom: 0;
    left: 0;
}

.recruit-interview__text1-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1280px;
    margin: 0 auto 70px;
}
.recruit-interview__img1 {
    width: 50%;
    object-fit: cover;
}
.recruit-interview__text1-wrapper > div {
    margin-left: 70px;
}
.recruit__text3 {
    font-size: 3.2rem;
    margin-bottom: 40px;
}
.recruit__text4 {
    font-size: 1.8rem;
    line-height: 1.777777;
    color: #151515;
}
.recruit-interview__text2-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row-reverse;
    max-width: 1280px;
    margin: 0 auto 70px;
}
.recruit-interview__text2-wrapper > div {
    margin-right: 70px;
}

/* ２人目 */
.recruit__interview-mv.interview2 {
    background-image: url("../img/recruit-interview__bg2.jpg");
}
.more {
    position: absolute;
    bottom: 60px;
    right: 60px;
    background-color: transparent;
    width: 260px;
    height: 60px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 1px solid #fff;
    border-radius: 30px;
}
.more::before {
    content: "VIEW MORE";
    transition: all .2s;
    padding-left: 90px;
}
.more.on-click::before {
    content: "CLOSE";
    padding-left: 100px;
}

/* ３人目 */
.recruit__interview-mv.interview3 {
    background-image: url("../img/recruit-interview__bg1.jpg");
}

/* more view */
.txt-hide {
    display: none;
}

/* recruite__work */
.recruit__work {
    margin-bottom: 60px;
}
.recruit__work-title-wrapper {
    display: flex;
    align-items: baseline;
    max-width: 1280px;
    margin: 0 auto;
}

/* recruit-support */
.recruit__support {
    padding: 120px 0;
}
.recruit-support-wrapper {
    max-width: 1280px;
    margin: 0 auto 100px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.recruit-support__title-wrapper {
    display: flex;
    align-items: baseline;
    margin-bottom: 50px;
}
.recruit-support__left-wrapper {
    width: 50%;
    margin-right: 60px;
}
.recruit-support__right-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
}
.recruit-support__img {
    width: 314px;
    height: 222px;
}

.recruit-support__entry-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    height: 484px;
    position: relative;
    text-align: center;
}
.recruit-support__entry-bg-title {
    position: absolute;
    font-size: 12rem;
    top: 45px;
    left: 50%;
    transform: translateX(-50%);
    opacity: .3;
    z-index: 10;
}

.recruit-support__entry-title {
    font-size: 3.2rem;
    position: absolute;
    top: 108px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 20;
}
.recruit-support__entry-text {
    line-height: 1.77777;
    position: absolute;
    top: 200px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 20;
}
.recruit__link-button {
    position: absolute;
    top: 300px;
    left: 50%;
    transform: translateX(-50%);
    width: 38%;
    height: 21%;
    background-color: #E8380D;
    display: block;
    color: #fff;
    font-size: 3rem;
    padding-top: 30px;
    cursor: pointer;
    z-index: 10;
    transition: all 1s;
    border: 3px solid #E8380D;
}
.recruit__link-button:hover {
    background-color: transparent;
    color: #fff;
}
.recruit-entry__bg-wrapper {
    width: 100%;
    height: 100%;
}
.recruit-entry__bg-mask {
    background-color: #244B76;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    border-radius: 16px;
    mix-blend-mode: multiply;
}
.recruit-support__entry-img2 {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 16px;
}
.recruit__br-sp {
    display: none;
}

/* recruit__sp */
@media screen and (max-width:1280px) {
    .recruit-about__wrapper {
        padding: 0 5vw;
        margin: 0 auto;
    }
}
@media screen and (max-width:1200px) {
    .recruit__mv-img {
        object-position: 35% 50%;
    }
    .recruit__mv-logo-title {
        font-size: 6rem;
    }
    .recruit__mv-logo-sub-title {
        font-size: 2rem;
    }
    .recruit__mv-logo1 {
        width: 80%;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
    }
    .recruit__about-wrapper {
        max-width: unset;
        margin: 0;
        padding: 0 5vw;
    }
    .recruit-about__img.img1 {
        bottom: -350px;
        top: unset;
        left: 200px;
        width: 250px;
        z-index: 5;
    }
    .recruit-about__img.img2 {
        bottom: -400px;
        top: unset;
        left: 400px;
        width: 270px;
        z-index: 2;
    }
    .recruit-about__img.img3 {
        bottom: -600px;
        top: unset;
        left: 150px;
        width: 320px;
        z-index: 4;
    }
    .recruit-about__img.img4 {
        bottom: -620px;
        top: unset;
        left: 500px;
        width: 170px;
        z-index: 3;
    }
    .recruit__bg-img1 {
        display: none;
    }
    .recruit__about {
        margin-top: 50px;
        margin-bottom: 50px;
        padding: 0;
    }
    .recruit-about__title {
        margin-top: 0;
        font-size: 2.8rem;
    }
    .recruit-about__text {
        font-size: 1.4rem;
    }
    .recruit__title {
        font-size: 6rem;
        margin-right: 0;
    }
    .recruit__work-style-title {
        padding: 5vw;
    }
    .recruit__work-style-sub-title {
        font-size: 2.4rem;
        padding-left: 5vw;
    }
    .recruit__work-style-wrapper {
        max-width: unset;
        height: 600px;
    }
    .recruit__text1 {
        font-size: 2rem;
        left: 5vw;
        bottom: 65%;
    }
    .recruit__text2 {
        font-size: 1.4rem;
        width: 85%;
        left: 5vw;
    }
    .recruit__work-style {
        margin-bottom: 50px;
        padding: 0 5vw;
    }
    .recruit__work-wrapper > .slider-4 {
        padding: 0;
    }
    .recruit__support {
        padding: 50px 5vw;
    }
    .recruit-support-wrapper {
        max-width: unset;
        display: block;
        margin: 0 auto 50px;
    }
    .recruit-support__left-wrapper {
        width: 100%;
        margin-right: 0;
    }
    .recruit-support__title-wrapper {
        display: block;
    }
    .recruit__text3 {
        font-size: 2.8rem;
    }
    .recruit__text4 {
        font-size: 1.4rem;
        margin-bottom: 50px;
    }
    .recruit-support__img {
        width: 100%;
        height: 100%;
    }
    .recruit-support__entry-wrapper {
        max-width: unset;

    }
    .recruit-support__entry-bg-title {
        font-size: 6rem;
        top: 15%;
    }
    .recruit-support__entry-title {
        font-size: 2.4rem;
        top: 20%;
    }
    .recruit-support__entry-text {
        font-size: 1.6rem;
        width: 100%;
    }
    .recruit__link-button {
        width: 80%;
        height: 17%;
        top: 65%;
        font-size: 3.5rem;
        padding-top: 13px;
    }
}
@media screen and (max-width:980px) {
    .recruit-about__wrapper {
        flex-direction: column-reverse;
        gap: 40px;
    }
    .recruit-about__img {
        width: 75%;
    }
    .recruit-support__right-wrapper {
        gap: 10px;
    }
}
@media screen and (max-width:500px) {
    .recruit-about__img {
        width: 100%;
    }
    .recruit-about__img.img1 {
        bottom: -40%;
        top: unset;
        left: 13%;
        width: 40%;
        z-index: 5;
    }
    .recruit-about__img.img2 {
        bottom: -50%;
        top: unset;
        left: 50%;
        width: 40%;
        z-index: 2;
    }
    .recruit-about__img.img3 {
        bottom: -70%;
        top: unset;
        left: 13%;
        width: 40%;
        z-index: 4;
    }
    .recruit-about__img.img4 {
        bottom: -77%;
        top: unset;
        left: 57%;
        width: 30%;
        z-index: 3;
    }
    .recruit__br-sp {
        display: block;
    }
}