    .main-color {
        color: #034098;
    }

    .background-color-01 {
        position: relative;
    }
    .background-color-01:after {
        content:"";
        width: 100vw;
        min-width:100vw;
        background: #F6F5F5;
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left:0;
        right:0;
        z-index: 0;
        margin: 0 calc(50% - 50vw);
    }
    @media only screen and (min-width: 641px) {
        .background-color-01:after {
            min-width:1000px;
        }
    }
    @media only screen and (min-width: 1025px) {
        .background-color-01:after {
            min-width:100vw;
        }
    }

    .background-color-01 > * {
        z-index: 1;
        position: relative;
    }

    .l-sec {
        position: relative;
    }
    .l-sec:not(.p-news) {
        padding-top: 40px;
    }
    @media only screen and (min-width: 641px) {
        .l-sec:not(.p-news) {
            padding-top: 80px;
        }
    }
    @media only screen and (min-width: 1025px) {
        .l-sec:not(.p-news) {
            padding-top: 100px;
        }
    }

    .l-sec__inner {
        width: calc(100% - 40px);
        max-width: 1200px;
        margin: 0 auto;
    }
    @media only screen and (min-width: 641px) {
        .l-sec__inner {
            width: 94%;
        }
    }

    .l-sec__flex {
        display:flex;
        flex-wrap:wrap;
    }

    .l-sec__inner-title {

    }
    .l-sec__inner-title-en {
        color: #034098;
        font-weight: bold;
        font-size:2.6rem;
        line-height: 1.0;
        margin-bottom: 0!important;
        display: block;
        width: 100%;
    }
    @media only screen and (min-width: 641px) {
        .l-sec__inner-title-en {
            font-size:5.6rem;
        }
    }

    .l-sec__inner-title-jp {
        color: #333;
        font-weight: bold;
        font-size:1.8rem;
        line-height: 1.6;
        margin-bottom: 0!important;
        display: block;
        width: 100%;
        margin-top: 8px;
    }
    @media only screen and (min-width: 641px) {
        .l-sec__inner-title-jp {
            font-size:2.2rem;
        }
    }

    .l-sec__inner-title + * {
        margin-top: 20px;
    }
    @media only screen and (min-width: 641px) {
        .l-sec__inner-title + * {
            margin-top: 30px;
        }
    }

    #topSlider,.slick-list {
        max-height: calc(100svh - 173px);
    }
    .p-mv{
        min-width: 100vw;
        margin: 0 calc(50% - 50vw);
    }
    @media only screen and (min-width: 641px) {
        .p-mv{
            width: 100%;
            margin: 0;
            position: relative;
        }
    }
    .p-mv #topSlider {
        max-height: 100vh;
        min-width: 100vw;
        position: relative;
        left: 0;
    }
    @media only screen and (min-width: 641px) {
        .p-mv #topSlider {
        }
    }

    #top .p-mv__slider {
        position: relative;
    }
    .p-mv__slider__item {
        position: relative;
        max-height: calc(100svh - 173px);

        /*メディアクエリで分岐するかも？*/
        display: flex!important;
        align-items: center;
    }
    .p-mv__slider__item > *{
        width: 100%;
    }
    .p-mv__slider__item > *:not(p),
    .p-mv__slider__item > *:not(p) img,
    .p-mv__slider__item > picture img,
    .p-mv__slider__item img{
        width: 100%;
        height: auto;
        aspect-ratio: 195 / 184;
        object-fit: cover;
    }
    @media only screen and (min-width: 1025px) {
        .p-mv__slider__item > *:not(p),
        .p-mv__slider__item > *:not(p) img,
        .p-mv__slider__item > picture img,
        .p-mv__slider__item img{
            width: 100%;
            height: auto;
            aspect-ratio: 24 / 13;
            object-fit: cover;
        }
    }
    .p-mv__slider__item-catch {
        position: absolute;
        color: #fff;
        z-index: 1;
        bottom: 18px;
        left: 20px;
        width: calc(100% - 40px);
    }
    @media only screen and (min-width: 1025px) {
        .p-mv__slider__item-catch {
            bottom: 47px;
            left: 60px;
        }
    }

    .p-mv__slider__item-catch-line01 {
        font-family: Montserrat;
        display: block;
        width:100%;
        /*
        font-size:3.2rem;
        font-size: 8.535vw;
        */
        font-size: min(3.2rem,5.8vw);
        font-weight: 700;
        line-height: 1.0;
    }
    @media only screen and (min-width: 641px) {
        .p-mv__slider__item-catch-line01 {
            font-size: min(5.8vw,8.4rem);
        }
    }
    @media only screen and (min-width: 1025px) {
        .p-mv__slider__item-catch-line01 {
            font-size:8.4rem;
        }
    }

    .p-mv__slider__item-catch-line02 {
        display: block;
        width:100%;
        /*
        font-size:1.4rem;
        font-size: 3.73vw;
        */
        font-size: min(1.4rem,3.73vw);
        font-weight: 700;
        line-height: 1.4;
        margin-top: 14px;
    }
    @media only screen and (min-width: 641px) {
        .p-mv__slider__item-catch-line02 {
            font-size: min(3.6vw,3.2rem);
        }
    }
    @media only screen and (min-width: 1025px) {
        .p-mv__slider__item-catch-line02 {
            font-size:3.2rem;
            line-height: 1.6;
            margin-top: 29px;
        }
    }

    #top .p-mv__slider .slick-dotted.slick-slider {
        margin-bottom: 0;
    }
    #top .p-mv__slider .slick-dots li {
    margin: 0;
    width: 24px;
    margin-right: 0;
    height: 24px;
    }
    #top .p-mv__slider .slick-dots {
        gap: 0;
        position: absolute;
        z-index: 2;
        bottom: 15px;
        right: 15px;
        width:24px;
        display: flex;
        flex-wrap: wrap;
    }
    @media only screen and (min-width: 641px) {
        #top .p-mv__slider .slick-dots {
            bottom: 37px;
            right: 28px;
        }
    }

    #top .p-mv__slider .slick-dots li button {
        background:none;
        width:24px;
        height:24px;
        position: relative;
    }
    #top .p-mv__slider .slick-dots li button:before{
        content:"";
        position: absolute;
        width: 1px;
        height:100%;
        display: block;
        top:0;
        bottom:0;
        left: 0;
        right: 0;
        margin: 0 auto;
        background:rgba(255, 255, 255, 0.30);
        transition: .2s;
        opacity: 1;
    }
    #top .p-mv__slider .slick-dots li button:after{
        content:"";
        position: absolute;
        width: 2px;
        height:100%;
        top:0;
        bottom:0;
        left: -.5px;
        right: -.5px;
        margin: 0 auto;
        background: #fff;
        transition: .2s;
        opacity: 0;
    }
    #top .p-mv__slider .slick-dots li.slick-active button:after{
        opacity: 1;
    }
    #top .p-mv__slider:after {
        content:"Scroll To Discover";
        position: absolute;
        color: #fff;
        font-weight: 700;
        line-height: 1;
        display:none;
        width: fit-content;
        bottom: 37px;
        right: 52px;
        font-size: 2.0rem;
    }
    @media only screen and (min-width: 1025px) {
        #top .p-mv__slider:after {
            display:block;
            font-size: 1.4rem;
        }
    }
    @media only screen and (min-width: 1320px) {
        #top .p-mv__slider:after {
            display:block;
            font-size: 2.0rem;
        }
    }

    div:has(.p-mv__slider__item){
        line-height: 1;
    }

    .p-about__list {
        background: #fff;
        box-shadow: 0 0 10px rgba(0,0,0,.15);
        width: fit-content;
        height: fit-content;
        padding: 0px 15px 15px;
        z-index: 2;
        bottom:0;
        left: 0;
        margin: auto 0;
        border-radius:5px;
        order: 2;
        width: 100%;
        position: absolute;
    }
    @media only screen and (min-width: 641px) {
        .p-about__list {
            padding: 30px 30px 40px;
            top:0;
            margin: auto 0;
            max-width: 380px;
        }
    }

    @media only screen and (min-width: 641px) {
        .p-about__list-item:nth-of-type(n+2) {
            margin-top: 10px;
        }
    }

    .p-about__list-link {
        font-weight: 500;
        line-height: 1.6;
        color: #034098;
        border-bottom: 1px solid #ccc;
        padding: 10px 0;
        display: block;
        width: 100%;
        position: relative;
        padding-right: 25px;
        font-size: 1.5rem;
    }
    @media only screen and (min-width: 641px) {
        .p-about__list-link {
            max-width: 320px;
            font-size: 1.8rem;
        }
    }

    main.top2023 #top .p-about__list-link {
        font-feature-settings: "auto";
    }

    .p-about__list-link:after{
        content:"";
        position: absolute;
        transition: .2s;
        width: 7px;
        height: 13px;
        right: 0;
        top: 0;
        bottom: 0;
        margin: auto 0;
        background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3IiBoZWlnaHQ9IjEzIiB2aWV3Qm94PSIwIDAgNyAxMyIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTAuNjM2MzY0IDEzQzAuNTUyOTAzIDEzLjAwMSAwLjQ3MDE1NCAxMi45ODQyIDAuMzkzNDM2IDEyLjk1MDZDMC4zMTY3MTkgMTIuOTE3MSAwLjI0NzczMSAxMi44Njc1IDAuMTkwOTA5IDEyLjgwNTJDLTAuMDYzNjM2NCAxMi41NDU0IC0wLjA2MzYzNjQgMTIuMTQyOCAwLjE5MDkwOSAxMS44ODMxTDUuNDcyNzMgNi40OTM0OEwwLjE5MDkwOSAxLjExNjg4Qy0wLjA2MzYzNjQgMC44NTcxNCAtMC4wNjM2MzY0IDAuNDU0NTQ0IDAuMTkwOTA5IDAuMTk0ODA1QzAuNDQ1NDU1IC0wLjA2NDkzNDggMC44NCAtMC4wNjQ5MzQ4IDEuMDk0NTUgMC4xOTQ4MDVMNi44MDkwOSA2LjA1MTkzQzcuMDYzNjQgNi4zMTE2NyA3LjA2MzY0IDYuNzE0MjYgNi44MDkwOSA2Ljk3NEwxLjA4MTgyIDEyLjgwNTJDMC45NTQ1NDUgMTIuOTM1IDAuNzg5MDkxIDEzIDAuNjM2MzY0IDEzWiIgZmlsbD0iIzAwNjBCQyIvPjwvc3ZnPg==");
    }
    @media only screen and (min-width: 641px) {
        .p-about__list-link:after{
            right: 10px;
        }
    }

    @media only screen and (min-width: 641px) {
        .p-about__list-link:hover:after {
            right: 7px;
        }
    }

    .p-about__image {
        width: 100vw;
        max-width: 100vw;
        margin: 0 calc(50% - 50vw);
        order: 1;
    }
    @media only screen and (min-width: 641px) {
        .p-about__image {
            width: 87%;
            max-width: 1040px;
            margin: 0 0 0 auto;
        }
    }

    .p-about .background-color-01{
        display:flex;
        flex-wrap:wrap;
        padding-bottom: 75px;
    }
    @media only screen and (min-width: 641px) {
        .p-about .background-color-01{
            padding: 50px 0;
            display:block;
        }
    }

    .p-about .background-color-01:after {
        display:none;
    }
    @media only screen and (min-width: 641px) {
        .p-about .background-color-01:after {
            display:block;
        }
    }

    .p-business__list{
        justify-content:space-between;
        flex-wrap: wrap;
    }
    .p-business__list-item {
        width: 100%;
    }
    @media only screen and (min-width: 641px) {
        .p-business__list-item {
            width: calc((100% - 40px ) / 3);
        }
    }
    @media only screen and (min-width: 1025px) {
        .p-business__list-item {
            width: calc((100% - 60px ) / 3);
        }
    }

    .p-business__list-item + .p-business__list-item{
        margin-top: 15px;
    }
    @media only screen and (min-width: 641px) {
        .p-business__list-item + .p-business__list-item{
            margin-top: 0;
        }
    }

    .p-business__list-link {
        position: relative;
        display: block;
    }
    .p-business__list-text {
        position: absolute;
        bottom:20px;
        left: 15px;
        right: 15px;
        color: #fff;
        font-size:128.572%;
        font-size: 1.8rem;
        font-weight: 500;
        width: fit-content;
        display: block;
        line-height: 1.3;
        font-feature-settings: "auto";
    }
    @media only screen and (min-width: 1025px) {
        .p-business__list-text {
            bottom:22px;
            left: 30px;
            right: 30px;
            font-size:133.333%;
            font-size: 2.4rem;
        }
    }

    .p-business__list-text:after {
        content:"";
        position: absolute;
        transition: .2s;
        width: 8px;
        height: 15px;
        right: -18px;
        top: 3px;
        bottom: 0;
        margin: auto 0;
        background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4IiBoZWlnaHQ9IjE1IiB2aWV3Qm94PSIwIDAgOCAxNSIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTAuNzI3MjczIDE0Ljk5OTlDMC42MzE4OSAxNS4wMDExIDAuNTM3MzE5IDE0Ljk4MTggMC40NDk2NDIgMTQuOTQzMUMwLjM2MTk2NCAxNC45MDQzIDAuMjgzMTIxIDE0Ljg0NzIgMC4yMTgxODIgMTQuNzc1MkMtMC4wNzI3MjczIDE0LjQ3NTUgLTAuMDcyNzI3MyAxNC4wMTA5IDAuMjE4MTgyIDEzLjcxMTJMNi4yNTQ1NSA3LjQ5MjQ4TDAuMjE4MTgyIDEuMjg4NzFDLTAuMDcyNzI3MyAwLjk4OTAwNyAtMC4wNzI3MjczIDAuNTI0NDc0IDAuMjE4MTgyIDAuMjI0Nzc0QzAuNTA5MDkxIC0wLjA3NDkyNDggMC45NiAtMC4wNzQ5MjQ4IDEuMjUwOTEgMC4yMjQ3NzRMNy43ODE4MiA2Ljk4Mjk5QzguMDcyNzMgNy4yODI2OSA4LjA3MjczIDcuNzQ3MjIgNy43ODE4MiA4LjA0NjkyTDEuMjM2MzYgMTQuNzc1MkMxLjA5MDkxIDE0LjkyNSAwLjkwMTgxOCAxNC45OTk5IDAuNzI3MjczIDE0Ljk5OTlaIiBmaWxsPSJ3aGl0ZSIvPjwvc3ZnPg==");
    }
    .p-business__list-link:hover .p-business__list-text:after {
        right: -21px;
    }


    .p-news {
        margin-top: 50px;
    }
    @media only screen and (min-width: 641px) {
        .p-news {
            margin-top: 100px;
        }
    }

    .p-news .l-sec__inner {
        padding-block: 30px;
    }
    @media only screen and (min-width: 641px) {
        .p-news .l-sec__inner {
            padding-block: 62px 57px;
        }
    }

    .p-news .l-sec__inner-title {
        text-align: center;
    }
    .p-news .l-sec__inner-title-en {
        font-size: 2.4rem;
    }
    @media only screen and (min-width: 641px) {
        .p-news .l-sec__inner-title-en {
            font-size: 3.6rem;
        }
    }

    .p-news .l-sec__inner-title-jp {
        font-size: 1.6rem;
    }
    @media only screen and (min-width: 641px) {
        .p-news .l-sec__inner-title-jp {
            font-size: 1.8rem;
            margin-top: 6px;
        }
    }

    .p-news__block-title {
        font-size:107.777%;
        font-weight: 700;
        line-height: 1.6;
        margin-bottom: 5px!important;
    }
    @media only screen and (min-width: 641px) {
        .p-news__block-title {
            font-size:1.8rem;
            margin-bottom: 10px!important;
        }
    }

    .p-news__block-title.type01 {
        color: #0060BC;
    }
    .p-news__block-title.type02 {
        color: #B52D51;
        margin-top: 20px;
    }
    @media only screen and (min-width: 1025px) {
        .p-news__block-title.type02 {
            margin-top: 0;
        }
    }

    .p-news .l-sec__flex {
        justify-content: space-between;
    }
    .p-news__block {
        width: 100%;
    }
    @media only screen and (min-width: 1025px) {
        .p-news__block {
            width: calc((100% - 40px) / 2);
        }
    }

    .p-news__block-wrap{
        padding: 0 20px 10px;
        background: #fff;
    }
    @media only screen and (min-width: 641px) {
        .p-news__block-wrap{
            margin-top: 10px;
            padding: 5px 20px 20px;
        }
    }

    .p-news__block-link,
    .p-news__block-link-line01,
    .p-news__block-link-line02 {
        display: block;
        width: 100%;
    }
    .p-news__block-link{
        padding-block: 10px 15px;
        border-bottom: 1px solid #B6C6D2;
    }
    @media only screen and (min-width: 641px) {
        .p-news__block-link{
            padding-block: 15px 14px;
        }
    }
    main.top2023 #top a.p-news__block-link {
        font-feature-settings: "auto";
    }

    .p-news__block-link-line01 {
        font-size: 1.2rem;
        color: #606060;
        line-height: 1.6;
    }
    @media only screen and (min-width: 641px) {
        .p-news__block-link-line01 {
            font-size: 1.4rem;
        }
    }

    .p-news__block-link-line02 {
        color: #333333;
        line-height: 1.5;
        text-decoration: underline;
        margin-top: 2px;
    }
    @media only screen and (min-width: 641px) {
        .p-news__block-link-line02 {
            font-size: 1.6rem;
            line-height: 1.6;
        }
    }


    .p-recruit {
        padding-bottom: 20px;
    }
    @media only screen and (min-width: 641px) {
        .p-recruit {
            padding-bottom: 80px;
        }
    }

    .p-recruit .l-sec__inner-title-jp {
        margin-top: 9px;
    }

    .p-recruit .l-sec__flex {
        justify-content: space-between;
        margin-top: 18px;
    }
    @media only screen and (min-width: 641px) {
        .p-recruit .l-sec__flex {
            margin-top: 30px;
        }
    }

    .p-recruit__block-link {
        display: block;
        width: 100%;
        padding-bottom: 40px;
        cursor: pointer;
    }
    @media only screen and (min-width: 1025px) {
        .p-recruit__block-link {
            width: calc((100% - 40px) / 2);
        }
    }

    main.top2023 #top a.p-recruit__block-link {
        font-feature-settings: "auto";
    }

    .p-recruit__block-link:hover {
    }
    .p-recruit__block-link-line01 {
        display:block;
        overflow: hidden;
        border-radius: 5px;
    }
    .p-recruit__block-link-line01 img {
        transition: .2s;
    }
    .p-recruit__block-link:hover .p-recruit__block-link-line01 img {
        transform:scale(1.1);
    }
    .p-recruit__block-link-line02 {
        display: block;
        width: fit-content;
        margin-top: 16px;
        color: #034098;
        font-size: 1.8rem;
        font-weight: 500;
        line-height: 1.0;
        position: relative;
    }
    @media only screen and (min-width: 1025px) {
        .p-recruit__block-link-line02 {
            margin-top: 30px;
            font-size: 2.4rem;
        }
    }

    .p-recruit__block-link-line02:after {
        content: "";
        position: absolute;
        transition: .2s;
        width: 8px;
        height: 15px;
        right: -18px;
        top: 2px;
        bottom: 0;
        margin: auto 0;
        background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4IiBoZWlnaHQ9IjE1IiB2aWV3Qm94PSIwIDAgOCAxNSIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTAuNzI3MjczIDE0Ljk5OTlDMC42MzE4OSAxNS4wMDExIDAuNTM3MzE5IDE0Ljk4MTggMC40NDk2NDIgMTQuOTQzMUMwLjM2MTk2NCAxNC45MDQzIDAuMjgzMTIxIDE0Ljg0NzIgMC4yMTgxODIgMTQuNzc1MkMtMC4wNzI3MjczIDE0LjQ3NTUgLTAuMDcyNzI3MyAxNC4wMTA5IDAuMjE4MTgyIDEzLjcxMTJMNi4yNTQ1NSA3LjQ5MjQ4TDAuMjE4MTgyIDEuMjg4NzFDLTAuMDcyNzI3MyAwLjk4OTAwNyAtMC4wNzI3MjczIDAuNTI0NDc0IDAuMjE4MTgyIDAuMjI0Nzc0QzAuNTA5MDkxIC0wLjA3NDkyNDggMC45NiAtMC4wNzQ5MjQ4IDEuMjUwOTEgMC4yMjQ3NzRMNy43ODE4MiA2Ljk4Mjk5QzguMDcyNzMgNy4yODI2OSA4LjA3MjczIDcuNzQ3MjIgNy43ODE4MiA4LjA0NjkyTDEuMjM2MzYgMTQuNzc1MkMxLjA5MDkxIDE0LjkyNSAwLjkwMTgxOCAxNC45OTk5IDAuNzI3MjczIDE0Ljk5OTlaIiBmaWxsPSIjMDM0MDk4Ii8+PC9zdmc+");
    }
    .p-recruit__block-link:hover .p-recruit__block-link-line02:after {
        right: -21px;
    }
