* {
    margin    : 0;
    padding   : 0;
    box-sizing: border-box;
}

html, body {
    overscroll-behavior: none; /* 画面下スクロール時の空白を防ぐ */

}
html {
    scroll-behavior: smooth;

}

body {
    font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans", Meiryo, sans-serif;
    background: url('../img/gradient-background.png') no-repeat center center;
    min-height: calc(100vh - 244px);   background-repeat: no-repeat;
    background-size: cover;
      transition      : transform 0.3s ease-in-out;
font-size: 16px;
background-position-y: -12px;
}
table {
    width: 100%;
    table-layout: fixed;
    word-wrap: break-word;
  }

  td {
    overflow-wrap: break-word;
    word-break: break-all;
  }
.font--colorW {
    color: #fff;
}
.only-pc-display{display: block;}
.only-sp-display {
    display: none;
}

.only-tb-display {
    display: none;
}

/* ナビゲーションバー */
.logo {
    font-size   : 24px;
    font-weight : bold;
    margin-right: 90px;
    width       : 125px;
}

/* スマホ用エントリーボタン */

    .entry__box__sp {
        text-align: center;
        position: fixed;
        bottom: 55px; /* 下に48pxのマージンを確保 */
        right: -100px; /* 初期状態は画面外 */
        opacity: 0;
        z-index: 1;
        background: #000; /* 吹き出しの背景色 */
        color: white;
        border-radius: 16px;
        font-weight: 500;
        padding: 10px 14px;
        font-size: 16px;
        transition: right 0.4s ease-out, opacity 0.4s ease-out;
    }

    /* 吹き出しの三角形部分 */
    .entry__box__sp::after {
        content: "";
        position: absolute;
        top: 50%;
        right: -8px;

        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 10px 0 10px 14px; /* 正三角形のサイズ */
        border-color: transparent transparent transparent #000000; /* 背景色と同じ */
    }

    /* 表示時のアニメーション */
    .entry__box__sp.show {
        right: 16px; /* 右からスライドイン */
        opacity: 1;
        animation: bounce 0.6s ease-out;
        z-index: 3;
    }

    /* バウンドアニメーション */
    @keyframes bounce {
        0% {
            transform: translateX(30px);
        }
        50% {
            transform: translateX(-30px);
        }
        100% {
            transform: translateX(0);
        }
    }

    .entry__box__sp a{
        text-decoration: none;font-size: 0.9rem;
        font-weight: bold;    }

    .entry__box__sp a:hover{
        text-decoration: none;

    }


/* ====== タブレット・スマホ用メニュー（デフォルト非表示） ====== */


.btn_entry {
    display         : inline-block;
    border-radius   : 50px;
    padding         : 10px 20px;
    background-color: #fff;
    width           : 310px;
    color           : #000 !important;
    margin          : 40px 0px 100px;
    font-weight     : bold;
}

.menu-header-copyright {

    font-size     : 0.8em;
    letter-spacing: 0.1em;
    font-weight   : 500;
}


/* .menu li {
    list-style  : none;
    margin-right: 35px;
}

.menu li a {
    text-decoration: none;
    color          : black;
    font-weight    : bold;
    padding        : 10px;
}
 */


@media (max-width: 1410px) {
    .entry__box__sp{ display: none;}
    .only-pc-display{display: none;}
    .only-tb-display {
        display: block;
    }


    .menu {
        display: none;
    }

    .hamburger {
        display: flex;
    }
}

@media (max-width: 1024px) {
   /* バウンドアニメーション */
   @keyframes bounce {
    0% {
        transform: translateX(10px);
    }
    50% {
        transform: translateX(-10px);
    }
    100% {
        transform: translateX(0);
    }
}
}



@media (max-width: 768px) {


    .nav-left {
        padding: 0px;
    }
    .btn_entry {
        width: 280px;
    }

    .menu-header {
        padding: 15px 0px;
    }

    .btn_box {
        display: none;
    }


}
@media (max-width: 430px) {
.only-sp-display {
    display: block;
}
}

/*改造ナビ */
/* ハンバーガーボタン */
.el_humburger {
    position      : fixed;
    top           : 3vw;
    right         : 3vw;
    width         : 46px;
    height        : 25px;
    padding-top   : 1px;
    box-sizing    : border-box;
    z-index       : 20;
    cursor        : pointer;
    pointer-events: auto;
    color         : #000;
    text-align    : center;
}

@media screen and (max-width: 1024px) {
    .el_humburger {
        display    : block;
        right      : 30px;
        top        : 3vw;
        padding-top: 0;
        width      : 40px;
        height     : 40px;
    }
}

.el_humburger_wrapper {
    margin-bottom: 5px;
    width        : 32px;
    display      : inline-block;
}

.el_humburger span.el_humburger_bar {
    display   : block;
    width     : 100%;
    margin    : 0 auto 9px;
    height    : 2px;
    background: #000;
    transition: all .2s ease-in-out;
}

.el_humburger span.el_humburger_bar:last-child {
    margin-bottom: 0;
}

.js_humburgerOpen .el_humburger span.el_humburger_bar.top {
    transform: translateY(11px) rotate(-45deg);
}

.js_humburgerOpen .el_humburger span.el_humburger_bar.middle {
    opacity: 0;
}

.js_humburgerOpen .el_humburger span.el_humburger_bar.bottom {
    transform: translateY(-11px) rotate(45deg);
}


@media screen and (min-width: 1420px) {
    .nav_tbspbox {
        display: none;
    }

    .el_humburger {
        display: none;
    }

    /* ナビゲーションメニュー */
    /* 左側（ロゴ + メニューを囲みの中に配置） */
    .nav-left {
        display      : flex;
        align-items  : center;
        border-radius: 50px;
        padding      : 10px 0px 11px 45px;

    }

    /* 右側（エントリーボタン） */
    .nav-right {
        display    : flex;
        align-items: center;
        position   : relative;
    }

}


.btn_box {
    position   : static;
    transform  : none;
    margin-left: auto;
    margin     : 0;
}

.btn_box:nth-child(1){
    margin-left: 35px;
    margin-right: 30px;

}


#btn_animation .btn_ent {
    display: block;
    position: relative;
    width: 200px;
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 1.35px;
    padding: 9px 20px;
    border-radius: 50px;
    text-decoration: none;
    background-color: #fbfbfb;
    color: #000;
    text-align: center;
    overflow: hidden;
    transition: all 600ms ease-out;
}
#btn_animation .btn_login {
    display: block;
    position: relative;
    width: 200px;
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 1.35px;
    padding: 9px 20px;
    border-radius: 50px;
    text-decoration: none;
    background-color: #000;
    color: #fbfbfb;
    text-align: center;
    overflow: hidden;
    transition: all 600ms ease-out;
}

#btn_animation .btn_ent:hover {
    text-decoration: none;
    color          : #000;
    background     : #f4f4f4;
    border         : 1px solid #000;
}

#btn_animation .btn_login:hover {
    text-decoration: none;
    color          : #f4f4f4;
    background     : #000;
    border         : 1px solid #000;
}


.navi {
    position            : fixed;
    /* will-change      : transform; */
    right               : 0;
    height              : 130px;
    background-color    : unset;
    width               : 100%;
    z-index             : 3;

    /*       padding-top: 30px;
 */
    /* box-sizing       : border-box; */
    /* transition       : all 600msease-out; */
    /* transform        : translateZ(0) translateX(0%); */
    /* overflow         : auto; */
}
.nav-left{  transition: background 0.5s ease;
    background: rgba(255, 255, 255, 0);}
.scrolled {
    background: rgba(255, 255, 255, 0.95); /* 少し透けた白に */
  }

.nav-left-logo {
    font-size   : 24px;
    font-weight : bold;
    margin-right: auto;
    width       : 125px;
}


.nav_tbspbox #btn_animation .btn-tb-ent {
    display         : block;
    position        : relative;
    width           : 193px;
    font-weight     : bold;
    font-size       : 18px;
    padding         : 8px 20px;
    border-radius   : 50px;
    text-decoration : none;
    background-color: #fff;
    color           : #000;
    text-align      : center;
    overflow        : hidden;
    transition      : all 600ms ease-out;
    border          : 1px solid #fff;
    margin          : 2.2vw 9vw 0px 0px;
}

.nav_tbspbox #btn_animation .btn-tb-ent:hover {
    text-decoration: none;
    color          : #fff;
    background     : #000;
    border         : 1px solid #000;
}

.nav_tbspbox #btn_animation .btn-tb-login {
    display         : block;
    position        : relative;
    width           : 193px;
    font-weight     : bold;
    font-size       : 18px;
    padding         : 8px 20px;
    border-radius   : 50px;
    text-decoration : none;
    background-color: #000;
    color           : #fff;
    text-align      : center;
    overflow        : hidden;
    transition      : all 600ms ease-out;
    border          : 1px solid #fff;
    margin          : 2.2vw 9vw 0px 0px;
}

.nav_tbspbox #btn_animation .btn-tb-login:hover {
    text-decoration: none;
    color          : #000;
    background     : #fff;
    border         : 1px solid #fff;
}

.navi_inner {
    display        : flex;
    justify-content: flex-end;
    align-items    : center;
    padding        : 25px 100px;
    max-width      : 1980px;
    z-index        : 1000;
    margin         : 20px auto;
    top            : 20px;
    position       : sticky;
    flex-direction : row;
}

.menu {
    display: flex;
}

.menu a {
    text-decoration: none;
    color          : #000;
    font-weight    : bold;
    padding        : 10px;
    margin-right   : 30px;
}

.menu a .hv_ani{
    transform: translateY(0px);
display: inline-block;
}
.menu a:hover .hv_ani {
animation: hv_ani .7s ease 0s 1 alternate backwards;
}

@keyframes hv_ani {
0% { transform: translateY(0); opacity: 1; }
30% {transform: translateY(-.45em); opacity: 0;}
31% {transform: translateY(.45em); opacity: 0;}
100% {transform: translateY(0); opacity: 1;}
}


.js_humburgerOpen .navi {
    width: 100%;
}

@media screen and (max-width: 1420px) {
    .el_humburger {position: absolute;  }
    .nav_tbspbox {
        display        : flex;
        flex-direction : row;
/*         position       : fixed;
 */        z-index        : 1;
        justify-content: space-between;
        width          : 100%;
        padding-right: 50px;
    }

    .nav_logo_tbsp {
        display: block;

        width  : 110px;
        margin : 20px 0px 0px 50px;
        z-index: 1;
    }


    .navi {
        position        : fixed;
        will-change     : transform;
        right           : 0;
        height          : 0;
        background-color: rgba(255, 255, 255, 0.9);
        width           : 100%;
        z-index         : 3;
        padding-top     : 0;
        top             : -100%;
        box-sizing      : border-box;
        transition      : all 600ms ease-out;
        /* transform    : translateZ(0) translateX(0%); */
        overflow        : auto;
    }

    .navi_inner {
        display        : flex;
        justify-content: space-between;
        align-items    : center;
        padding        : 0px 20px;
        z-index        : 1000;
        margin         : 20px auto;
        top            : 20px;
        position       : sticky;
        flex-direction : column;
        background     : #000;

    }

    .nav-left-logo {
        width : 145px;
        margin: 10px auto 0px 20px;
    }

    .nav-right {
        /* background: black; */
        left: 20vw;
        margin: 44px 0px 20px;
        display: flex
;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .nav-left {
        flex-direction: column;

        display: flex;
        width  : 100%;

    }
    #btn_animation .btn_login{
        margin-top: 0px;

    background-color: #fbfbfb;
    color: #000;

    transition: all 600ms ease-out;
    }


    .js_humburgerOpen .el_humburger span.el_humburger_bar {
        display   : block;
        width     : 100%;
        margin    : 0 auto 9px;
        height    : 2px;
        background: #fff;
        transition: all .2s ease-in-out;
    }

    .js_humburgerOpen .navi {
        background: #000;
        height    : 100%;
        top       : 0;
    }

    .js_humburgerClose .navi {
        background: #000;
        height    : 100%;
        top       : -100%;
        transition: top 600ms ease-out;
    }

    .menu {
        display       : flex;
        flex-direction: column;
        margin        : 0 auto;
        align-items   : center;
        margin        : 20px;
    }

    .menu a {
        color       : #fff;
        padding     : 20px 0px;
        margin-right: 0px;
    }

    .menu__link-e {
        margin     : 44px 0px 20px;
        font-size  : 0.9em;
        font-weight: normal !important;
    }

    #btn_animation .btn {
        display         : block;
        position        : relative;
        width           : 305px;
        font-weight     : bold;
        font-size       : 18px;
        padding         : 12px 20px;
        border-radius   : 50px;
        text-decoration : none;
        background-color: #fff;
        color           : #000;
        text-align      : center;
        overflow        : hidden;
        transition      : all 600ms ease-out;
        border          : 1px solid #000;
    }

    #btn_animation .btn:hover {
        text-decoration: none;
        color          : #fff;
        background     : #000;
        border         : 1px solid #fff;
    }

    .menu-header-copyright {
        color         : #fff;
        font-size     : 0.8em;
        letter-spacing: 0.1em;
        font-weight   : 500;
        position      : absolute;
        bottom        : 18px;
        text-align    : center;
        width         : 100%;
        left          : 0px;

    }
    .nav_tb_btn{
        display: flex;
    }

    .nav_tbspbox #btn_animation .btn-tb-ent,.nav_tbspbox #btn_animation .btn-tb-login{          width: 135px;
        font-size: 14px;  margin: 2.2vw 0vw 0px 0px;}
        .nav_tbspbox #btn_animation .btn-tb-login{margin: 2.2vw 6vw 0px 0px;}
}


@media (max-width: 1024px) {


}
@media screen and (max-width: 786px) {

    .navi {
        width        : 100%;
        height       : 0;
        padding-right: 0;
        right        : -100%;
        transition   : right 600ms ease-in-out;
    }


.nav-right {
    flex-direction: column;
    margin: 44px auto 20px; width: 100%;
}
.nav-right  .btn_box {
    display: block;
    margin: 0;
    width: 80%;
}

    .nav_logo_tbsp {

        margin: 20px 0px 0px 18px;

    }
    .nav-left-logo {
        width: 108px;
        margin: 0px auto 0px 0px;
    }
    #btn_animation .btn_ent{
        width: 100%;
    }
    #btn_animation .btn_login{
        width: 100%; margin-top: 30px;

    }


    .el_humburger {
        right: 5vw;
        top  : 4vw;
    }

    .el_humburger_wrapper {
        margin-bottom: 5px;
        width        : 24px;
        display      : inline-block;
    }

    .el_humburger span.el_humburger_bar {

        margin: 0 auto 6px;
        height: 2px;

    }

    .js_humburgerOpen .navi {
        height: 100%;
        right : 0;
    }

    .js_humburgerClose .navi {
        height    : 100%;
        right     : -100%;
        top       : unset;
        transition: right 600ms ease-in-out;
    }
    .menu {

        align-items   : flex-start;
        margin-left: 50px;
    }


    .menu a {

        font-size: 1.2em;
    }

}

@media (max-width: 480px) {
    .nav-right {

        margin: 44px auto 20px;
    }
}
/*copy */
.hero-background-copy {
    display: flex
    ;
        position: absolute;
        top: 36%;
        left: 2vw;
        width: 2%;
        height: 100%;
        writing-mode: vertical-rl;
}

.hero-background-copy p {
    color         : #B3B3B3;
    letter-spacing: 1.7px;
    font-weight   : 600;
    font-size     : 13px;
}




/* Hero Section */
.hero-background {
    position: absolute;
    top: 9vw;
    left: 28vw;
    max-width: 1928px;
    width: 64vw;
    height: 50vw;
    background: url(../img/hero.png) no-repeat top / contain;
    z-index: -1;
    opacity: 0;
    transform: translateY(50px);
    animation: fadeInUp 1s ease-out forwards;
}


.hero-background-bktitle img {
     /* position: absolute; */
     top: 17vw;
     left: 0;
     width: 70%;
     /* font-size: 130px; */
     /* color: white; */
     /* white-space: nowrap; */
     overflow: repeat;
     margin: 0 auto;
     z-index: -2;

}

.hero {
    margin: 0 auto;
    height: 100vh;
    max-width: 1928px;
    width: 100%;
    position: relative;
}


.lead-box-sp{
    display: none;
}

.hero__title {
    position: absolute;
    top: 22%;
    left: 9%;
    /* padding-left: 95px; */
    width: 715px;
    color: #0F53EC;
    opacity: 0;
    transform: translateX(-50px);
    animation: fadeInLeft 0.95s ease-out forwards;
    animation-delay: 0.3s;
}

/* 下からフェードイン */
@keyframes fadeInUp {
    from {
        opacity  : 0;
        transform: translateY(50px);
    }

    to {
        opacity  : 1;
        transform: translateY(0);
    }
}

/* 左からフェードイン */
@keyframes fadeInLeft {
    from {
        opacity  : 0;
        transform: translateX(-50px);
    }

    to {
        opacity  : 1;
        transform: translateX(0);
    }
}

.hero__title h1 {}

.hero__title h2 {
    font-size     : 100px;
    letter-spacing: 0px;

}

.hero__title p {
    margin: 40px 0px 65px;
    letter-spacing: 0.2em;
    line-height: 1.8em;
    font-weight: 500;
    width: 90%;
    background: rgb(255, 255, 255, 0.7);
    padding: 20px;
}

.hero__title h1 img {
   width:95%;
}

.hero__title img {
    margin-top: 7vw;
}

.hero__title .hero_lead {
    margin-top: 5px;
}


.hero__scroll {
    display: flex
    ;
        position: absolute;
        top: 0%;
        right: 5vw;
        width: 2%;
        height: 100%;
        writing-mode: vertical-rl;
}

.hero__scroll p {
    color         : #B3B3B3;
    letter-spacing: 1.7px;
    font-weight   : 600;
    font-size     : 13px;
}

.hero__scroll__bar {
    height: 300px;
}

.hero__scroll__bar-text {
    display       : inline-block;
    position      : absolute;
    top           :430px;
    padding       : 10px 10px 110px;
    font-size     : 17px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    writing-mode  : vertical-lr;
    left          : 75%;
    transform     : translateX(-50%);
    font-weight   : bold;
}

.hero__scroll__bar-line {
    position : absolute;
    left     : 70%;
    transform: translateX(-50%);
    top      : 690px;
}

.hero__scroll__bar-line::after {
    content   : "";
    position  : absolute;
    bottom    : 0;
    left      : 0;
    top       : -90px;
    width     : 1px;
    height    : 140px;
    background: rgb(153, 153, 153);
}

.hero__scroll__bar-line::before {
    content      : "";
    position     : absolute;
    bottom       : 0;
    left         : -4px;
    z-index      : 2;
    width        : 10px;
    height       : 10px;
    border-radius: 50%;
    background   : #0032BF;
    animation    : circlemove 5s ease-in-out infinite, cirlemovehide 5s ease-out infinite;
}

.hero__scroll-sp {
    display: none;
}

@keyframes circlemove {
    0% {
        bottom: 85px;
    }

    100% {
        bottom: -55px;
    }
}

@keyframes cirlemovehide {
    0% {
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    80% {
        opacity: 0.9;
    }

    100% {
        opacity: 0;
    }
}


/* RECRUIT文字のパララックス */
/* .hero__parallax__container {
    position: relative;
    height: 1500px;
}
 */


.hero__parallax__image {
        position: fixed;
        top: 439px;
        left: 0;
        width: 100%;
        height: 90px;
        z-index: -2;
        background-image: url(../img/hero_RECRUIT.svg);
        background-size: auto 100%;
        transform: translateY(0);
        background-repeat: repeat;
    }



@media (max-width: 1410px) {
    .lead-box-sp{
        display: none;
    }

    .hero {
        position: relative;
        margin  : 0 auto;
        height  : 80vh;
        top     : 3vw;
    }

    .hero-background {
        position: absolute;
        top: 39vw;
        right: -8vw;
        width: 82vw;
        background-size: 100%;
        top: 30%;
        height: 69vw;
        background-image: url(../img/hero.png);
        left: 123px;
        opacity: 0;
        transform: translateY(50px);
        animation: fadeInUp 1s ease-out forwards;
    }

    .hero__scroll {
        display     : flex;
        position    : absolute;
        top         : 50vw;
        right       : 45vw;
        width       : 2%;
        height      : 100%;
        writing-mode: vertical-rl;
    }

    .hero__scroll p {
        position: absolute;
        z-index : -2;
        left    : 43vw;
        top     : -23vw;
    }

    .hero__scroll__bar {
        display: none;
    }

    /* タブレット・スマホ用　スクロールダウン */
    .hero__scroll-sp {
        display            : block;
        position           : relative;
        width              : 100%;
        height             : 15vh;
        background-position: 50% 50%;
        background-repeat  : no-repeat;
        background-size    : cover;
        text-align         : center;
    }

    .hero__scroll-sp:after {
        content   : '';
        position  : absolute;
        bottom    : 0;
        left      : 0;
        width     : 100%;
        height    : 80%;
        background: linear-gradient(180deg, rgba(#000, 0) 0, rgba(#000, .8) 80%, rgba(#000, .8) 100%);
    }

    .hero__scroll-sp span {
        display        : inline-block;
        position       : absolute;
        right          : 0;
        bottom         : 0;
        left           : 0;
        z-index        : 2;
        /* width       : 13px; */
        padding        : 10px 10px 110px;
        color          : #000;
        font-size      : 14px;
        /* font-family : 'Josefin Sans', sans-serif; */
        line-height    : 1;
        letter-spacing : .2em;
        text-transform : uppercase;
        text-decoration: none;
        /* writing-mode: vertical-lr; */
        transition     : .2s;
        overflow       : hidden;
        margin         : auto;
        font-size      : 0.8em;
        color          : #A7A7A7;
        text-align     : center;
    }

    .hero__scroll-sp span:before {
    content: '';
        position: absolute;
        bottom: 0;
        left: 50%;
        top: 23%;
        width: 1px;
        height: 150px;
        background: rgb(153, 153, 153);
    }

    .hero__scroll-sp span:after {
        content      : '';
        position     : absolute;
        bottom       : 0;
        text-align   : center;
        left         : 0;
        margin       : 0 auto;
        right        : 0;
        z-index      : 2;
        width        : 10px;
        height       : 10px;
        border-radius: 50%;
        background   : #0032BF;
        animation    : circlemove 3s ease-in-out infinite, cirlemovehide 3s ease-out infinite;
    }

    .hero__scroll-sp span:hover {
        opacity: .5;
    }


    .hero__title {
        top : -8%;
        left: 5vw;
        width: 68%;
        padding-left: 0px;
    }

    .hero__title p {

        font-size: 1em;
    }
    .hero__title p img{
    filter:drop-shadow(1px 1px 1px rgba(255, 255, 255, 1));  }
    .hero__title h2 {
        font-size     : 100px;
        letter-spacing: 0px;
    }

    .content {
        margin-top: 5vh;
        padding   : 80px 0px 0px;
    }


    .hero__title h2 img {
        margin-top: 25px;
        width     : 65vw;
    }

    .hero__parallax__image {     top: 59vw;}
}
@media (1410px <= width < 1700px) {

    .hero__title {

        width: 43vw;

    }
}
@media (max-width:1024px) {

.hero__scroll-sp span{
    top: 17vw;
    overflow: visible;
}
    .hero-background-copy{display: none;}
    .hero-background{
        position: absolute;
        top: 43vw;
        width: 95vw;
        background-size: 100%;
        /* top: 28%; */
        height: 89vw;
        background-image: url(../img/hero.png);
        left: 0;
        opacity: 0;
        overflow: hidden;
        transform: translateY(50px);
        animation: fadeInUp 1s ease-out forwards;
    }
.hero{  height: 45vh

}
.hero__title h1 img {
    width:100%;
}
.hero__title img {
    margin-top: 65px;
}
    }


@media (max-width: 976px) {
    .lead-box-sp{
        display: none;
    }

    .hero{  height: 38vh

    }
    .hero__title {
        top: 4%;
        left: 0vw;
        right: 0vw;
        padding: 0 46px;
        width: 80%;
    }

    .hero__title img {
        margin-top   : 0px;
        margin-bottom: 10px;
    }

    .hero__title h2 {
        font-size     : 12.3vw;
        letter-spacing: 3px;
        text-align    : center;
    }

    .hero__scroll__bar {
        position: absolute;
        width   : 100%;
        top     : 100vw;
        right   : 10vw;
    }

    .hero__scroll__bar-line {

        left: 9vw;
        top : 55vw;
    }

    .hero__scroll__bar-text {

        top: 19vw;
    }

}

@media (767px <= width < 976px) {

    .hero-background {
        top: 50vw;
        width: 100%;
        left: 0;
}
.hero__title p {
    font-size: 1.6vw;
}
}

@media (max-width: 768px) {
/*     .content {
        margin-top: 54vh;
    }
 */
 .hero__scroll-sp span{
    display: none;
 }
    .hero {
        width: 90%;
        height: 20vh;
        top   : 2vw;
    }
    .hero__title h1 img {
        width: 100%;
    }

    .hero__scroll-sp {
        height: 50vh;
    }

    .hero__scroll p {
        display: none;
    }

    .hero-background {
        position: absolute;
        top: 37vw;
        left: 0vw;
        width: 100vw;
        height: 100vw;
        background: url(../img/hero.png) no-repeat top center / cover;
        z-index   : -1;
        opacity   : 0;
        transform : translateY(50px);
        animation : fadeInUp 1s ease-out forwards;
    }

    .lead-box-pc{display: none;}
.lead-box-sp{display: block;}

.hero__title {
    top: 4%;
    left: 0vw;
    right: 0vw;
    padding: 0;
    width: 92vw;
}
    .hero__title h1 {
        padding: 0px;
    }

    .hero__title h2 img {
        margin-top: 15px;
        width     : 100%;
    }

    .hero__title p {
        font-size  : 1.9vw;
        margin     : 15px auto 65px;
        width      : 100%;
        /* margin  : 0 auto; */
        padding    : 0;
        line-height: 25px;
        background-color: none;
    }
    .hero__parallax__image {
        top: 79vw;
        position: fixed;
    }
    .hero-background-bktitle img{
        display: flex;
    }
}



@media (max-width: 430px) {
    .hero-background {
        position: absolute;
        top: 52vw;
        left: 0;
    }
    .hero {

        top   : 0vw;
    }
    .hero__title {

        padding:0 3%;

    }
    .hero__title p {
        font-size  : 0.6em;
        line-height: 17px;
    }
    .hero__scroll-sp {
        height: 37vh;
    }

    .hero__parallax__image {
        top: 100vw;
        height: 50px;
        position:fixed ;
    }

    .hero-background-bktitle img{
        width: 100%;
    padding: 0 20px;
    }

}



@media (max-width: 380px) {
    .hero {
        top   : 0vw;
        height: 0vh;
    }
/*     .hero-background {
        position: unset;
        top     : 83vw;
    } */
    .hero__scroll-sp {
        height: 62vh;
    }
}



.content {
    margin-top      : -10vh;
    position        : relative;
    background      : transparent;

    padding-top     : 80px;
    max-width       : 100%;
}


section {
    max-width    : 1200px;
    margin       : 0 auto 60px;
    background   : rgba(255, 255, 255, 255);
/*     padding      : 20px 67px;
 */    border-radius: 10px;
 padding-top: 60px;
 padding-bottom: 20px;

}

.bkg--none {
    background: none;
    box-shadow: none;
    padding: 0px;
}

section:last-child {
    margin: 0 auto 150px;
}


.button--01 {
    display        : inline-block;
    align-items    : center;
    padding        : 12px 24px;
    font-size      : 13px;
    width          : 190px;
    font-weight    : bold;
    color          : #0F53EC;
    background     : white;
    border         : 2px solid #0F53EC;
    border-radius  : 50px;
    box-shadow     : 0px 4px 0px #0F53EC;
    text-align     : center;
    text-decoration: none;
    cursor         : pointer;
    letter-spacing : 0.2em;
    position       : relative;
    z-index        : 1;
    transition     : .3s;
    margin         : 0 auto 60px;
}

.button--01::after {
    content       : "";
    display       : inline-block;
    width         : 18px;
    height        : 18px;
    margin-left   : 10px;
    vertical-align: -2px;
    background    : #0F53EC;
    /* 通常時の色 */
    -webkit-mask  : url('data:image/svg+xml;utf8,<svg fill="black" height="18px" width="18px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 330 330" xml:space="preserve"><path d="M311.8,87.4H0v-17.8h314.1l-56.4-56,13.5-13.5c4.1,4,89.8,87.4,89.8,87.4"/></svg>') no-repeat center;
    mask          : url('data:image/svg+xml;utf8,<svg fill="black" height="18px" width="18px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 361 87.4" xml:space="preserve"><path d="M311.8,87.4H0v-17.8h314.1l-56.4-56,13.5-13.5c4.1,4,89.8,87.4,89.8,87.4"/></svg>') no-repeat center;
    transition    : .3s;

}

.button--01:hover {
    background     : #0F53EC;
    color          : white;
    transform      : translateY(4px);
    box-shadow     : unset;
    vertical-align : middle;
    background-size: contain;
    /* SVGをコンテナに合わせてリサイズ */
}

.button--01:hover::after {
    background: white;
    /* hover時の色 */
}



.button--02 {
    display        : inline-block;
    align-items    : center;
    padding        : 12px 24px;
    font-size      : 13px;
    width          : 190px;
    font-weight    : bold;
    color          : #000;
    background     : white;
    border         : 2px solid #000;
    border-radius  : 50px;
    box-shadow     : 0px 5px 0px #000;
    letter-spacing : 0.2em;
    text-align     : center;
    text-decoration: none;
    cursor         : pointer;
    position       : relative;
    z-index        : 1;
    transition     : .3s;
    margin         : 0 auto 60px;
}

.button--02::after {
    content       : "";
    display       : inline-block;
    width         : 18px;
    height        : 18px;
    margin-left   : 10px;
    background    : #000;
    vertical-align: -2px;
    -webkit-mask  : url('data:image/svg+xml;utf8,<svg fill="black" height="18px" width="18px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 330 330" xml:space="preserve"><path d="M311.8,87.4H0v-17.8h314.1l-56.4-56,13.5-13.5c4.1,4,89.8,87.4,89.8,87.4"/></svg>') no-repeat center;
    mask          : url('data:image/svg+xml;utf8,<svg fill="black" height="18px" width="18px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 361 87.4" xml:space="preserve"><path d="M311.8,87.4H0v-17.8h314.1l-56.4-56,13.5-13.5c4.1,4,89.8,87.4,89.8,87.4"/></svg>') no-repeat center;
    transition    : transform 0.3s ease-in-out;
}

.button--02:hover {
    background: #000;
    color     : white;
    transform : translateY(4px);
    box-shadow: unset;
}

.button--02:hover::after {
    background: white;
    /* hover時の色 */
}



.content section h2 {
    text-align    : center;
    font-size     : 40px;
    letter-spacing: 4.5px;
}
@media (max-width: 1410px) {
    section {
        max-width: 100%;
        margin: 0 40px 60px;}
}
@media (max-width: 1024px) {
/* section{
    max-width: 970px;
    padding: 56px 60px 20px;
 } */
    .button--01,
    .button--02 {
        padding: 18px 24px;
        width  : 210px;
    }
    .content {
        margin-top: 4vh;
}
.content section h2{
    margin-bottom: 10px;
}
}
@media (max-width: 768px) {
    section {
        max-width: 100%;
        margin: 0 0px 40px;}
        .content section h2{
            font-size: 24px;
            font-weight: 900;
            letter-spacing: 2.71px;
        }
    }

@media (max-width: 480px) {
    .content section h2 {
        margin-bottom: 0px;
        padding: 20px 0px 0px;
    }
    .Features__card {

        padding: 0px 0px 15px;

    }.Features__card-title {
        font-size: 1.2em;
        margin-bottom: 0px;
    }
}

/* マクニカのインターンシップ 3つの特徴 */

.about__Features {
    position: relative;
    padding :  80px;
    width   : 100%;
overflow: hidden;
    display       : flex;
    flex-direction: column;
    align-items   : center;
    scroll-padding-top: 2000px;
}


.about__Features h2 {
    width: 72%;
    margin-bottom: 50px;
}




.about__Features p{padding:72px 0px 80px}


/* 3つの特徴*/
.Features__card-row {
    display: flex;
    gap: 30px;
    align-items: flex-start;
}

.Features__card {
    flex: 1;
    border-radius: 12px;
    padding: 0px;
    position: relative;
    min-height: 648px;
}


.Features__number-badge {
    position: absolute;
    top: -20px;
    left: -20px;
    width: 64px;
    height: 69px;
    display: flex
;
    align-items: center;
    justify-content: center;
    z-index: 2;
}

.Features__img-area {
    width: 100%;
    height: 268px;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 8px;
    margin: 30px 0 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.Features__card:nth-child(1) .Features__img-area {background-image: linear-gradient(239deg, rgba(232, 255, 159, 0.5), rgba(255, 227, 90, 0.5));
}


.Features__card:nth-child(2) .Features__img-area {    background: linear-gradient(50deg, rgba(255, 203, 182, 0.5), rgba(116, 206, 249, 0.5));

}
.Features__card:nth-child(3) .Features__img-area{  background: linear-gradient(50deg, rgba(249, 187, 187, 0.5), rgba(242, 213, 39, 0.5));

}

.Features__img-place {
    color: rgba(0, 0, 0, 0.3);
    font-size: 14px;
    text-align: center;
}

.Features__img-place img{
    width: 100%;
}

.Features__card-title {
    font-size: 23px;
    font-weight: bold;

    text-align: center;
    color: #333;
    letter-spacing: 2.3px;
opacity: 1;
height: 120px;
line-height: 1.3;
}

.Features__card-content {
    font-size: 16px;
    line-height: 1.7;
    color: #555;
    text-align: left;
    font-weight: 500;
    letter-spacing: 1.6px;
}

/* 3つの特徴　画像用のスタイル */
.Features__number-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media (max-width: 1024px) {
    .Features__card {

        min-height: auto;
    }
.about__Features {
    max-width: 100%;
    padding: 56px 60px;
}
.Features__img-area {
    width: 100%;
    height: 211px;padding: 10px 10px;
}


.Features__card:nth-child(2) .Features__img-place{
    padding: 0px 25px;
}

.Features__card-title {
    height: 85px;
    font-size: 18px;
}
.Features__card-content{
    font-size: 16px;

}


}
@media (max-width: 768px) {
    .Features__card-row {
        flex-direction: column;
        gap: 40px;
    }

    .Features__card {
        min-height: 300px;
        padding: 15px;
        width: 320px;
    }

    .Features__number-badge {
        width: 50px;
        height: 50px;
        font-size: 24px;
        top: 18px;
        left: -5px;
    }

    .Features__img-area {
        height: 268px;
        margin: 25px 0 15px;
        width: 100%;
    }
    .Features__number-image {
        width: 50px;
        height: 50px;
        object-fit: contain;
    }

    .Features__card-title {
        font-size: 18px;
        height: auto;
        margin-bottom: 25px;
    }

    .Features__card-content {
        font-size: 13px;
    }
}


@media (max-width: 1420px) {

    .about__Features {
        width  : auto;
        padding: 100px 67px 60px;
    }

    .about__Features p{padding:72px 0px 68px}


}

@media (max-width: 976px) {/*768  */

    .content {
        margin-top: 4vh;
        overflow: hidden;
    }


    .about__Features {
        width: unset;
        padding: 30px 25px;
        margin: 0 40px 60px;
    }


    .about__Features::after {
        width: 130%;
    }


}

@media (430px <= width < 976px) {

    .about__Features h2{
        padding: 35px 0px;
        width: 70%;

    }
    .about__Features p{        padding: 0 60px 30px 60px;
    }

}
@media (768px <= width <1024px) {
    .about__Features::after {background:
url(../img/macnica_building_img.png) left / contain no-repeat;
height: 306px;
}

}

@media (max-width: 768px) {
    .about__Features h2{
        padding: 35px 0px;
        width: 70%;

    }
    .about__Features p {
        padding:0px 7vw 8px;
        margin-bottom: 70px;
    }
    .about__Features::after {
        width: 100%;
        height: 45%;
        bottom: -80px;
    }

    html[lang^="en"] .about__Features::after {
        height: 40vw;
        bottom: -12vw;
    }
    .about__Features {
        width: unset;
        padding: 30px 20px;
        margin: 0px;
    }
}

@media (max-width: 430px) {
    .content {
        padding-top: 30px;
    }

    .Features__img-place img{
        padding: 0 10px;
    }
.about__Features p {
    padding: 0px 0px 60px;
    margin-bottom: 0px;
}

.about__Features h2{
    padding: 25px 0px;
    width: 100%;
}
.about__Features::after {
    width: 100%;
    height: 43%;
    bottom: -112px;
    background: url(../img/macnica_building_img.png) left / cover no-repeat;
}

html[lang^="en"] .about__Features::after {
    height: 23%;
    bottom: -19vw;
}
}

@media (max-width: 380px ) {


    .about__Features::after {
        width: 100%;
        height: 44%;
        bottom: -132px;
    }


    html[lang^="en"] .about__Features::after {
            height: 21%;
            bottom: -25vw;
        }

}

/* 2リンクボックス */
.link__cards-wrapper {
    display: flex;
    gap: 40px;
}

.link__cardBox {
    flex: 1;
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

.link__cardBox:hover {
    transform: translateY(-5px);
}

.link__card-image {
    width: 100%;
    height: 280px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}

.link__business-card .link__card-image  {
    background-image:     url('../img/Link_img01.png');
}

.link__tech-card:nth-child(2) .link__card-image {
    background-image:
    url('../img/Link_img02.png');
}

.link__card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.link__card-title {
    color: white;
    font-size: 40px;
    /* font-weight: bold; */
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
    margin-bottom: 10px;
    letter-spacing: 3.36px;
}

.link__card-title span{

    font-size: 50px;


}

.link__card-title::after {
    content: "";
    display: block;
    height: 40px;
    text-align: center;
    margin: -25px auto;
    background-image: url(../img/arrow-b_01.svg);
    transition: transform 0.3s ease-in-out;
    background-repeat: no-repeat;
    background-position: center;
}

.link-text-display{
    display: inline-block;

}

.link-text-display-sp{
    display: none;
}
@media (max-width: 768px) {
    .link-text-display{
        display: none;
    }
    .link-text-display-sp{
        display: block;
        width: 60%;
        margin: 0 auto;
    }
    .container {
        padding: 0 20px;
    }
    .bkg--none {

        margin: 40px 20px 40px;  }
    .link__cards-wrapper {
        flex-direction: row;
        gap: 15px;
    }

    .link__card-image {
        height: 100px;
    }

    .link__card-title {
        font-size: 24px;    margin-bottom: 18px;
    }
    .link__card-title::after {
        content: "";
        display: block;
        height: 17px;
        text-align: center;
        margin: -12px auto;
    }
}

/* h3タイトル */
.section__title{     font-size: 26px;
    font-size: 26px;
    font-weight: bold;
    border-left: 8px solid #333;
    padding: 10px 24px;
    margin-top: 60px;
    margin: 60px 67px 20px;
    letter-spacing: 3.09px;
  }
  .notes{letter-spacing: 1.58px;
    color: #707070;
    font-size: 14px;
    font-weight: normal;
  }
  .section__title  .notes{
    margin-left: 20px;
     }

     @media (max-width: 768px){
       .notes02{
            margin:10px 20px;
            width: 100%;
             }


     }
     @media (max-width: 480px){
        .notes02{
             margin:0px;

              }


      }



/* 営業系インターンシップ1DAY */
/*  営業系見出しグラデーション */
.sales_1day .sales_1day__h2 {

        width: 100%;
    background: linear-gradient(90deg, rgba(249, 187, 187, 0.9) 5%, rgba(242, 213, 39, 0.5) 30%, rgba(255, 255, 255, 0.5) 70%);
    padding: 1rem;
    font-weight: bold;
    font-size: 1.5rem;
    color: #333;
    height: 80px;
    display: flex
;
  }

  .sales_1day .sales_1day__h2 img{
  width: 40%;
  margin-left: 50px;  }

  @media (max-width: 1024px) {
/*     .section__title{    margin: 40px 0px 20px;}
 */}

/* 営業系インターンシップ1DAY */
/* インターン詳細 */
  .sales_1day__boxes {
    position: relative;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 0 87px;
    margin-top: 40px;
  }
  .sales_1day__part {
    background: #fff;
    border: 1px solid #4D4D4D;
    border-radius: 10px;
    padding: 40px 40px 80px;
    flex: 1;
    text-align: center;
    min-height: 280px;
    position: relative;
    z-index: 1;
  }
  .sales_1day__boxes h3 {
    font-size: 24px;
    font-weight: 900;
    margin-bottom: 15px;
    text-align: left;
    letter-spacing: 4.8px;


  }
  .sales_1day__boxes p {
    font-size: 16px;
    line-height: 1.7;text-align: left;
    font-weight: 500;
  }
  .sales_1day__bar {
    position: absolute;
    bottom: 20px;
    left: 88px;
    width: 85%;
    height: 50px;
    background: linear-gradient(to right, #F6C3B4, #FCEEEE);
    clip-path: polygon(0 0, 95% 0, 100% 85%, 0% 100%);
    opacity: 0.9;
    z-index: 2;
  }
  /* 営業系インターンシップ1DAY */
/* 参加者の声 */
.sales_1day__voices-grid {
    display: grid    ;
        grid-template-columns: 1fr 1fr;
        gap: 20px 35px;
        padding: 0 87px;
        margin: 0 auto;
  }

  .sales_1day__voice-card {
    background-size: cover;
    background-position: center;
    padding:152px 24px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 361px;
    width: 495px;
    position: relative;
  }
  .sales_1day__voice-card:nth-child(1){ background-image: url('../img/sales_voice_01.jpg');  }
.sales_1day__voice-card:nth-child(2) {background-image: url('../img/sales_voice_02.jpg');   }
.sales_1day__voice-card:nth-child(3) { background-image: url('../img/sales_voice_03.jpg');  }
.sales_1day__voice-card:nth-child(4) { background-image: url('../img/sales_voice_04.jpg');  }


  .sales_1day__voice-card img {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    margin-bottom: 16px;
    background: white;
    padding: 4px;
  }

  .sales_1day__voice-card .sales_1day__face-icon {
    width: 116px;
    height: 116px;
    position: absolute;

  }

  .sales_1day__voice-card:nth-child(odd) .sales_1day__face-icon {    top: 70px;
    left: 39%;
    transform: translate(0, -50%); }
    .sales_1day__voice-card:nth-child(even) .sales_1day__face-icon {     top: 70px;
        left: 36.5%;
        transform: translate(0, -50%);}

  .sales_1day__voice-card h4 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 12px;
    text-align: center;
    letter-spacing: 1.2px;
    color: #324266;
    line-height: 25px;
  }

  .sales_1day__voice-card p {
    font-size: 16px;
    line-height: 1.6;
    text-align: left;
    padding: 8px 40px;
    font-weight: 500;
    letter-spacing: 2.24px;
  }


  @media (max-width: 1278px) {

    .sales_1day__boxes{
        gap: 10px;
    }
    .sales_1day__boxes h3{
        font-size: 20px;
    }
    .sales_1day__boxes {font-size: 16px;}

    .sales_1day__bar{
        width: 82%;
    }
}


@media (1024px <= width <1278px) {

    .sales_1day__voice-card {
        min-height: 361px;
        width: 100%;
        position: relative;
      }
    .sales_1day__voices-grid {
        gap:20px 20px;
    }
    .sales_1day__voice-card h4{
        margin-bottom: 10px;}
    .sales_1day__voice-card h4,.sales_1day__voice-card p{
        font-size: 14px;
        padding: 0px;
    }
    .sales_1day__part{
       padding:27px 27px 80px
    }
    .sales_1day__voice-card:nth-child(odd) .sales_1day__face-icon{
        left: 37%;
        width: 110px;
        height: 109px;
    }
    .sales_1day__voice-card:nth-child(even) .sales_1day__face-icon{
        left: 34%;
    }
}

  @media (max-width: 1024px) {
    .sales_1day__voice-card {
        min-height: 286px;
        width: 100%;
        position: relative;
      }
      .sales_1day__voice-card h4,.sales_1day__voice-card p{
        font-size: 14px;
        padding: 0px;
    }
      .sales_1day__voice-card:nth-child(1){ background-image: url('../img/sales_voice_01_tab.jpg');  }
    .sales_1day__voice-card:nth-child(2) {background-image: url('../img/sales_voice_02_tab.jpg');   }
    .sales_1day__voice-card:nth-child(3) { background-image: url('../img/sales_voice_03_tab.jpg');  }
    .sales_1day__voice-card:nth-child(4) { background-image: url('../img/sales_voice_04_tab.jpg');  }

    .sales_1day__voice-card:nth-child(odd) .sales_1day__face-icon {
        display: none;
     }
        .sales_1day__voice-card:nth-child(even) .sales_1day__face-icon {   display: none;}
    .sales_1day__voice-card .sales_1day__face-icon {
        width: 100px;
        height: 100px;
      }
      .sales_1day__voice-card h4{
        font-size: 16px;
      }
     .sales_1day__voice-card p{
        font-size: 14px;
      }
      .sales_1day__bar {
     /*    width: 84%;
        left: 74px; */
        display: none;
    }
      .sales_1day__boxes{
        padding: 0 72px;
        flex-direction: column;
      }
      .sales_1day__part {
        padding: 40px 40px 40px;
        min-height: auto;

    }
      .sales_1day__voices-grid{
        padding: 0 67px;
      }
}

@media (767px <= width < 976px) {

        .sales_1day__bar {
            width: 77%;}
}
  @media (max-width: 768px) {

    .sales_1day__boxes {
        padding: 0 20px;

    }

    .sales_1day__voices-grid {
        padding: 0 20px;
        display: flex
;
        justify-content: center;
        flex-direction: column;
        align-items: center;
    }

    .sales_1day__voice-card {
        min-height: 322px;
        width: 351px;
        position: relative;
        padding: 108px 24px 24px;
    }

    .sales_1day__voice-card p {
      text-align: center;
    }


    .sales_1day__voice-card:nth-child(1){ background-image: url('../img/sales_voice_01_sp.jpg');  }
    .sales_1day__voice-card:nth-child(2) {background-image: url('../img/sales_voice_02_sp.jpg');
        height: 381px; }
    .sales_1day__voice-card:nth-child(3) { background-image: url('../img/sales_voice_03_sp.jpg');
        height: 344px; }
    .sales_1day__voice-card:nth-child(4) { background-image: url('../img/sales_voice_04_sp.jpg');
        height: 363px; }

    .sales_1day .sales_1day__h2{
        flex-direction: column;
        height: 100%;
        background: linear-gradient(90deg, rgba(249, 187, 187, 1) -9%, rgba(242, 213, 39, 10) 30%);
    }


    .sales_1day .sales_1day__h2 img:nth-child(2){
        width: 60%;
        margin-left: 0px;  }
        .sales_1day .sales_1day__h2 img:nth-child(3){
            width: 20%;
            margin-left: 0px;
            margin-top: 10px; }

            .section__title{     font-size: 20px;margin: 40px 20px 20px;
  }

  .sales_1day__voice-card h4{
    font-size: 18px;
  }
  .sales_1day__voice-card p{
    font-size: 16px;
  }
}


@media (max-width: 480px) {
.notes {
    letter-spacing: 1.58px;
    color: #707070;
    font-size: 14px;
    width: 100%;
    font-weight: normal;
    padding: 0 20px 20px;
}
}
/* 営業系インターンシップ1DAY */
/* 概要 */
  .sales_1day__summary {
    margin-top: 40px;
    font-size: 14px;
    border-collapse: collapse;
    width: 86%;
    margin: 0 87px;
    table-layout: fixed;
  }

  .sales_1day__summary th,
  .sales_1day__summary td {
    padding: 35px 8px;
    border-bottom: 1px solid #ccc;
    text-align: left;
    font-weight: bold;
    word-break: break-word;
  }

  .sales_1day__summary th {
    width: 280px;
    text-align: center;
    font-size: 18px;
  }

  .sales_1day__summary td {

    font-size: 16px;
  }


  .sales_1day__summary .sales__box{
    border-radius: 5px;
    background-color: #F9A056;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    padding: 3px 15px;
    margin-left: 10px;
  }

  .sales_1day__summary .tech__box{
    border-radius: 5px;
    background-color: #82BFD8;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    padding: 3px 15px;
    margin-left: 10px;
  }



  .sales_1day__summary .bold{
    border-radius: 10px;
letter-spacing: 2.26px;
    font-weight: 900;
    font-size: 18px;
      }
 @media (1024px <= width <1278px) {

    .sales_1day__summary th{width: 230px;}
}

@media (max-width: 1024px) {

    .sales_1day__summary{
        margin: 0 60px;
    }
    .sales_1day__summary th{width: 230px;}


}
  @media (max-width: 768px) {
    .sales_1day__summary{
        width: 100%;
    }
    .sales_1day__summary .notes
{padding:0px;

}
    .sales_1day__boxes{
      flex-direction: column;
    }
    .sales_1day__bar {
      display: none;
    }
    .sales_1day__summary,
    .sales_1day__summary tbody,
    .sales_1day__summary tr,
    .sales_1day__summary td,
    .sales_1day__summary th {
        display: block;
        width: 98%;
        margin: 0 4px;
        text-align: left;
    }

    .sales_1day__summary tr {
      margin-bottom: 16px;
    }

    .sales_1day__summary th {
      background-color: #f0f0f0;
      font-weight: bold;
      border: none;
      padding: 10px;
      font-size: 16px;

    }

    .sales_1day__summary td {
      padding:10px 0px;
      border: none;
      background: #fff;
    }
    .sales_1day__summary .sales__box {font-size:9px ;padding: 3px 3px;}

    .sales_1day__summary .tech__box{font-size: 9px;
        padding: 3px 3px;
        display: inline-block;
        width: 100px;
        text-align: center;
        margin-left: 0px;}

  }



@media (max-width: 1024px) {
    .bkg--none h2 {
        width:70%;
        margin: 0 auto;
      }
}


/* 営業系インターンシップ1DAY */
/* インターン参加までの流れ */

.sales_1day__flow-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 60px 87px;
}
.sales_1day__flow-step {
    flex: 1;
            background: white;
            border: 2px solid #4D4D4D;
            border-radius: 30px;
            padding:30px 20px 10px;
            text-align: center;
            position: relative;
            min-height: 339px;
            display: flex;
            width: 100%;
            flex-direction: column;
            justify-content: center;
}

.sales_1day__step-number {
    position: absolute;
    left: 50%;          /* 中央基準 */
    top:-42px;
    transform: translateX(-50%); /* 中央寄せ */
}

.sales_1day__step-number img {

    display: block;
}

.sales_1day__step-title {
    font-size: 19px;
    font-weight: 900;
    color: #333;
    margin: 20px 0 10px 0;
    letter-spacing: 0.6px;
    line-height: 1.2;
}

.step1 .sales_1day__step-title  {
    margin-bottom: 50px;

}

.step3 .sales_1day__step-title {
    margin-bottom: 20px;

}

.sales_1day__step-img {
    width: 227px;
    height: 100%;
    margin:0 auto 0px auto;
    display: flex;
    align-items: center;
    justify-content: center;
}


.sales_1day__step-img img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.sales_1day__flow-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 31px;
    height: 22px;
}

.arrow-right-sales {
    background: url(../img/arrow02.png) no-repeat;
}

.arrow-down {
    transform: rotate(90deg);
}

@media (max-width: 1024px) {
    .sales_1day__step-img{
        width: 178px;
    }
    .sales_1day__flow-wrapper{
        gap: 4px;

    }
    .sales_1day__flow-step{
        min-height: 266px;
    }
    .step2 .sales_1day__step-img img{    width: 88%;}
    .sales_1day__step-title{font-size: 16px;margin-top: 10px;}



    .sales_1day__flow-arrow{    width: 32px;
        height: 23px;}

}

@media (768px <= width <976px) {
    .sales_1day__flow-wrapper{
        padding: 30px 43px;
    }
    .sales_1day__step-img {
        width: 126px;
    }

}
@media (max-width: 768px) {

    .sales_1day__flow-wrapper {
        flex-direction: column;
        gap: 0px;
    }

    .sales_1day__flow-step {
        width: 100%;
        padding: 25px 20px;
        min-height: 250px;
    }

    .sales_1day__flow-arrow {
    /*     transform: rotate(90deg); */
    }

    .sales_1day__step-title {
        font-size: 15px;
    }

    .sales_1day__step-img {
        width: 100px;
        height: 80px;
    }

    .sales_1day__step-img img {
        max-width: 100%;
        max-height: 100%;
    }

    .sales_1day__step-number img {
        width: 100%;
        height: auto;
    }
    .sales_1day__flow-arrow {
        height: 22px;
        width: 31px; margin-bottom: 55px; }


}

@media (max-width: 480px) {
    .sales_1day__flow-step {
        padding: 20px 15px;
        min-height: 339px;
    }
    .sales_1day__flow-wrapper{
        padding: 30px 43px;
    }

    .sales_1day__step-title {
        font-size: 20px;
        margin: 15px 0 20px 0;
    }

    .sales_1day__step-img{
        width: 80%;
        height: auto;

    }

    .sales_1day__step-img img {
        max-width: 100%;
        max-height: 100%;
    }




}




/* 営業向けインターン　エントリーはこちら
 */
.button__box{
    margin: 0px 87px;
    padding-bottom: 50px;
 }
.sales_btn-gradient-shadow {
    display: flex
    ;
        padding: 1em 87px;
        font-weight: bold;
        color: #333;
        text-decoration: none;
        background: linear-gradient(to right, #f8bfbf, #f9d423);
        border-radius: 100px;
        position: relative;
        transition: all 0.2s ease;
        box-shadow: 0 10px 0 rgba(243, 133, 121, 0.5);
        height: 100px;
        width: 100%;
        overflow: hidden;
        justify-content: center;
  }


  .sales_btn-gradient-shadow:hover {
    transform: translateY(10px);
    border-bottom: 0px;
    box-shadow: none;
  }


.sales_btn-gradient-shadow img{
    width: 80%;
}

@media (max-width: 1024px) {
.sales_btn-gradient-shadow img{
    width: 85%;
}
.sales_btn-gradient-shadow img{
    width: 90%;
}
}
@media (max-width: 768px) {
.sales_btn-gradient-shadow{
    border-radius: 40px;
    height: 167px;
    flex-direction: column;
    justify-content: space-evenly;
    padding: 1em;
}

.sales_btn-gradient-shadow img:nth-child(2){    width: 66%;}

.sales_btn-gradient-shadow img:nth-child(3){    width: 80%;}

.sales_btn-gradient-shadow img:nth-child(4){
    width: 13%;
}

}


@media (480px <= width <834px) {
    .sales_btn-gradient-shadow img:nth-child(2){    width: 50%;}

.sales_btn-gradient-shadow img:nth-child(3){    width: 60%;}

.sales_btn-gradient-shadow img:nth-child(4){
    width: 10%;
}
}
@media (max-width: 480px) {
    .sales_btn-gradient-shadow img:nth-child(2){    width: 66%;}

    .sales_btn-gradient-shadow img:nth-child(3){    width: 80%;}

    .sales_btn-gradient-shadow img:nth-child(4){
        width: 13%;
    }
}

/* 技術系インターンシップ リアル4DAYオンライン3DAY */
.tech_day{position: relative;}
/*  技術系見出しグラデーション */
.tech_day .tech_day__h2 {
    width: 100%;
background: linear-gradient(90deg, rgba(68, 190, 226, 0.9) 5%, rgba(246, 195, 180, 0.3) 56%,rgba(255, 255, 255, 0.5) 100%);
padding: 1rem;
font-weight: bold;
font-size: 1.5rem;
color: #333;
height: 80px;
display: flex
;    margin-bottom: 30px;
}

.tech_day .tech_day__h2 img{
width: 75%;
margin-left: 50px;  }


@media (max-width: 1024px) {
.tech_day .tech_day__h2 {
    width: 100%;
}}

@media (max-width: 1024px) {
    .tech_day .tech_day__h2{
            flex-direction: column;
        height: 100%;
        background: linear-gradient(90deg, rgba(68, 190, 226, 0.9) 5%, rgba(246, 195, 180, 0.3) 80%);
}
.tech_day .tech_day__h2 img:nth-child(2){
    width: 60%;
    margin-left: 0px;

}
.tech_day .tech_day__h2 img:nth-child(3){
    width: 100%;
    margin-left: 0px;
    margin-top: 10px;

}
}
/* インターン詳細 */
.tech_day .tech__h3{
    position:absolute
}

.tech_day__section-header{
    padding: 0 90px;
    z-index: 2;
    position: relative;
}
.tech_day__header-visual {
    align-items: center;
    display: flex
;
    gap: 20px;
    flex-shrink: 0;
    z-index: 2;
    top: 160px;
    right: 9%;
    justify-content: flex-end;
    margin-bottom: -8px;


}

.tech_day__speech-bubble {
    background-color: #d4e8f0;
    border-radius: 20px;
    padding: 17px 25px;
    position: relative;
    max-width: 50%;
    height: 115px;
    font-size:16px;
    color: #333;
    letter-spacing: 2.52px;
    font-weight: bold;
    margin-top: 16px;

}

.tech_day__speech-bubble::after {
    content: '';
    position: absolute;
    bottom: 30px;
    right: -12px;
    width: 13px;
    z-index: 0;
    height: 16px;
    /* border-top: 15px solid transparent; */
    /* border-bottom: 15px solid transparent; */
    /* border-left: 15px solid #d4e8f0; */
    background-image: url(../img/tech_day__bubble.png);

}

.tech_day__character-img {
    width: 80px;
    height: 100px;
    flex-shrink: 0;
}

.tech_day__character-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
@media (max-width: 1024px) {


    .tech_day__section-header {
        flex-direction: column;
        gap: 20px;
    }

    .tech_day__header-visual {
        align-self: flex-end;
        order: -1;
        top: 142px;
    right: 11%;
    }

    .tech_day__speech-bubble {
        max-width: 40%;
        font-size: 13px;
        padding: 18px 20px;
    }

    .tech_day__character-img {
        width: 70px;
        height: 85px;
    }
}

@media (906px <= width <1024px) {

    .tech_day__header-visual {

        margin-bottom: -2.6vw;

    }

    }

    @media (768px <= width <906px) {
        .tech_day__header-visual {

            margin-bottom: -3.3vw;

        }
        .tech_day__speech-bubble {
            max-width: 70%;
            font-size: 13px;
            padding: 18px 20px;
        }
    }

@media (max-width: 768px) {
    .tech_day .mgnauto{
        margin-bottom: auto;
      }
    .tech_day__section-header {
        margin-bottom: 27px;
         padding: 0 30px 0px 10px;
    }

    .tech_day__section-title {
        font-size: 24px;
        padding-left: 15px;
    }
    .tech_day__header-visual {
        width: 100%;
        order: -1;
        margin-bottom: 20px;
        right: 0vw;

    }

    .tech_day__speech-bubble {
        max-width: 280px;
        font-size: 12px;
        padding: 15px 18px;
    }

    .tech_day__character-image {
        width: 14vw;
        height: 75px;
    }

}

@media (max-width: 480px) {
    .section-title {
        font-size: 20px;
        padding-left: 12px;
    }
    .tech_day__section-header {
        margin-bottom: 0px;
    }
    .tech_day__speech-bubble {
        max-width: 313px;
        font-size: 14px;
        padding: 12px 70px 12px 12px;
        border-radius: 10px;
        height: auto;
    }

    .tech_day__character-image {
        width: 100%;
        height: auto;
        margin-left: -29vw;
        z-index: 1;
        margin-top: 14vw;

    }
    .tech_day__header-visual{
        gap: 40px;
        top: auto;
        margin-bottom:-3vw ;
    }

}

@media (max-width: 390px) {
    .tech_day__speech-bubble {
        max-width: 85%;

    }
}



.tech_day__boxes {
    position: relative;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 0 87px;
    margin-top: auto;
 /*    margin-top: 80px; 5/31*/

 margin-top: auto;
  }
  .tech_day__part {
    background: #fff;
    border: 1px solid #4D4D4D;
    border-radius: 10px;
    padding: 40px 40px 80px;
   /*  flex: 1; */
    text-align: center;
    min-height: 280px;
    position: relative;
    z-index: 1;
  }
.tech_day__day1{width: 354px;}
.tech_day__day2{width: 650px;}
  .tech_day__boxes h3 {
    font-size: 24px;
    font-weight: 900;
    margin-bottom: 15px;
    text-align: left;
    letter-spacing: 4.8px;
  }
  .tech_day__boxes p {
    font-size: 16px;
    line-height: 1.7;text-align: left;
    font-weight: bold;
  }
  .tech_day__bar {
    position: absolute;
    bottom: 20px;
    left: 88px;
    width: 85%;
    height: 50px;
    background: linear-gradient(to right, #3ABDE5, #FFFFFF);
    clip-path: polygon(0 0, 95% 0, 100% 85%, 0% 100%);
    opacity: 0.9;
    z-index: 2;
  }




/* 技術系インターンシップ リアル4DAYオンライン3DAY */
/* 参加者の声 */
.tech_day__voices-grid {
    display: grid    ;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 8px;
        padding: 0 87px;
        margin: 0 auto;
  }

  .tech_day__voice-card {
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    padding: 140px 0px 0px;
    display: flex;    flex-direction: column;
    align-items: center;
    min-height: 485px;
    width: 330px;
    position: relative;
  }
  .tech_day__voice-card:nth-child(1){ background-image: url('../img/tech_voice_01.jpg');  }
.tech_day__voice-card:nth-child(2) {background-image: url('../img/tech_voice_02.jpg');   }
.tech_day__voice-card:nth-child(3) { background-image: url('../img/tech_voice_03.jpg');  }



  .tech_day__voice-card img {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    margin-bottom: 16px;
    background: white;
    padding: 4px;
  }

  .tech_day__voice-card .tech_day__face-icon {
    width: 116px;
    height: 116px;
    position: absolute;

  }

  .tech_day__voice-card:nth-child(1) .tech_day__face-icon {    top: 68px;
    left: 33%;
    transform: translate(0, -50%); }
    .tech_day__voice-card:nth-child(2) .tech_day__face-icon {    top: 68px;
        left: 31%;
        transform: translate(0, -50%); }
        .tech_day__voice-card:nth-child(3) .tech_day__face-icon {    top: 68px;
            left: 31%;
            transform: translate(0, -50%); }


  .tech_day__voice-card h4 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 12px;
    text-align: center;
    letter-spacing: 1.2px;
    color: #324266;
    line-height: 25px;
  }

  .tech_day__voice-card p {
    font-size: 16px;
    line-height: 1.6;
    text-align: left;
    padding: 8px 40px;
    font-weight: 500;
    letter-spacing: 2.24px;
  }
  @media (max-width: 1278px) {

    .tech_day__boxes h3{
        font-size: 20px;
    }
    .tech_day__boxes {font-size: 16px;}
    .tech_day__bar{
        width: 78%;
    }

    .tech_day__voices-grid{gap:20px;}
    .tech_day__voice-card:nth-child(1) .tech_day__face-icon,.tech_day__voice-card:nth-child(2) .tech_day__face-icon,.tech_day__voice-card:nth-child(3) .tech_day__face-icon{
        display: none;
    }

    .tech_day__voice-card:nth-child(1){ background-image: url('../img/tech_voice_tab_01.jpg');  }
    .tech_day__voice-card:nth-child(2) {background-image: url('../img/tech_voice_tab_02.jpg');   }
    .tech_day__voice-card:nth-child(3) { background-image: url('../img/tech_voice_tab_03.jpg');  }

    .tech_day__voice-card{
        width: 100%;
    }
    .tech_day__voice-card h4{
        margin-bottom: 10px;}
    .tech_day__voice-card h4{
        font-size: 14px;
        line-height: 20px;
        margin: 14px 0px 5px;
    }.tech_day__voice-card p{
        font-size: 14px;
        padding: 0px 13px;
    }
    .tech_day__part{
       padding:27px 27px 80px

    }

}
  @media (max-width: 1024px) {
    .tech_day__voice-card {
        min-height: 391px;
        width: 259px;
        position: relative;
        padding: 88px 0px 0px;
      }


    .tech_day__voice-card p{padding: 0 20px 12px;}
    .tech_day__voices-grid{padding: 0 67px;}
      .tech_day__voice-card:nth-child(1){ background-image: url('../img/tech_voice_tab_01.jpg');  }
    .tech_day__voice-card:nth-child(2) {background-image: url('../img/tech_voice_tab_02.jpg');   }
    .tech_day__voice-card:nth-child(3) { background-image: url('../img/tech_voice_tab_03.jpg');  }


    .tech_day__voice-card:nth-child(odd) .tech_day__face-icon {        display: none; }
        .tech_day__voice-card:nth-child(even) .tech_day__face-icon {   display: none;}
    .tech_day__voice-card .tech_day__face-icon {
        width: 100px;
        height: 100px;
      }

}


@media (769px <= width < 1023px) {

    .tech_day__voices-grid {
        justify-content: center;
        align-items: center;
        display: flex;
        flex-direction: column;}
        .tech_day__boxes{
            margin-top:20px
        }
    }




    @media (768px <= width <906px) {
        .tech_day .tech__h3{
            position: relative;
        }

        .tech_day__boxes{
            flex-direction: column;
            padding: 0 20px;}
            .tech_day__bar {
                display: none;
              }

             .tech_day__part {
                padding: 27px;
                min-height: 100%;
            }

             .tech_day__day1, .tech_day__day2 {
                width: 100%;
            }
        }


  @media (max-width: 768px) {
    .tech_day .tech__h3{
        position: relative;
    }
    .tech_day__voice-card h4,.tech_day__voice-card p{
        font-size: 14px;
        padding: 0px;
    }
    .tech_day__voice-card h4{
        margin: 0px 0px 12px;
    }
    .tech_day__boxes{
        flex-direction: column;
        padding: 0 20px;}


    .tech_day__bar {
        display: none;
      }

     .tech_day__part {
        padding: 27px;
        min-height: 100%;
    }

     .tech_day__day1, .tech_day__day2 {
        width: 100%;
    }

    .tech_day__voices-grid {
        padding: 0 20px;
        justify-content: center;
        align-items: center;
        display: flex;
        flex-direction: column;}


    .tech_day__voice-card {
        min-height: 322px;
        width: 351px;
        position: relative;
        padding: 108px 24px 24px;
    }

    .tech_day__voice-card p {
      text-align: center;
      font-size: 16px;
    }

    .tech_day__voice-card h4{
        font-size: 18px;
      }


    .tech_day__voice-card:nth-child(1){ background-image: url('../img/tech_voice_sp_01.jpg');  height: 402px;
    }
    .tech_day__voice-card:nth-child(2) {background-image: url('../img/tech_voice_sp_02.jpg');  height: 384px; }
    .tech_day__voice-card:nth-child(3) { background-image: url('../img/tech_voice_sp_03.jpg'); height: 398px; }
  }

  @media (max-width: 480px) {

    .tech_day__boxes{margin-top: auto;}

}

/* 技術系インターンシップ リアル4DAYオンライン3DAY */
  /* インターン参加までの流れ */

  .tech_day__flow-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0px;
    padding: 60px 87px;
}
.tech_day__flow-step {
    flex: 1;
    background: white;
    border: 2px solid #4D4D4D;
    border-radius: 30px;
    padding: 30px 20px 10px;
    text-align: center;
    position: relative;
    min-height: 294px;
    display: flex
;
    flex-direction: column;
    width: 100%;
    justify-content: center;
}

.step3{    padding-bottom: 0px;}

.tech_day__step-number {
    position: absolute;
    left: 50%;
    top: -42px;
    transform: translateX(-50%);
}

.tech_day__step-number img {

    display: block;
}

.tech_day__step-title {
    font-size: 19px;
    font-weight: 900;
    color: #333;
    margin:20px 0 10px 0;
    letter-spacing: 0.6px;
    line-height: 1.2;
}
.step1 .tech_day__step-title {

margin-bottom: 55px;
}
.tech_day__step-img {
    height: 100%;
    margin: 0 auto 0px auto;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}


.tech_day__step-img img {
    max-width: 93%;
    max-height: 100%;
    object-fit: contain;
}

.tech_day__flow-arrow {

            display: flex;
            align-items: center;
            justify-content: center;
            width: 15px;
            height: 18px;

}

.arrow-right-tech {
    background: url(../img/arrow04.png) no-repeat;

}

.arrow-down {
    transform: rotate(90deg);
}


.step3 span{
    margin-top: 5px;
font-size: 14px;
letter-spacing: 1.4px;
color: #383838;
}

.step3 .tech_day__step-title{
    margin-bottom: 5px;
}
@media (max-width: 1024px) {
.tech_day__step-title{
    font-size: 14px; margin-top: 5px;
}
.tech_day__flow-wrapper{
    gap: 0px;

}
.tech_day__flow-step{
    min-height: 231px;
    padding: 30px 13px 10px;
}

.step1 .tech_day__step-title{
    margin-bottom: 25px;

}
.step2 .tech_day__step-img{
    width: 88%;
}

}
@media (max-width: 768px) {

    .tech_day__flow-wrapper {
        flex-direction: column;
        gap: 0px;
    }

    .tech_day__flow-step {
        width: 100%;
        padding: 25px 20px;
        min-height: 250px;
    }

    .tech_day__flow-arrow {
    /*     transform: rotate(90deg); */
    }

    .tech_day__step-title {
        font-size: 15px;
    }

    .tech_day__step-img {
        width: 100px;
        height: 80px;
    }

    .tech_day__step-img img {
        max-width: 100%;
        max-height: 100%;
    }

    .tech_day__step-number img {
        width: 100%;
        height: auto;
    }
    .tech_day__flow-arrow {
        height: 16px;
        width: 19px;
        margin:-1px auto 55px;
}
.tech_day__flow-arrow img{
width: 100%
;
}

}

@media (max-width: 480px) {
    .tech_day__flow-step {
        padding: 20px 15px;
        min-height: 339px;
    }
    .tech_day__flow-wrapper{
        padding: 30px 43px;
    }
    .tech_day__step-title {
        font-size: 20px;
        margin: 15px 0 20px 0;
    }

    .tech_day__step-img{
        width: 80%;
        height: auto;
    }

    .tech_day__step-img img {
        max-width: 100%;
        max-height: 100%;
    }



}

/* 技術系向けインターン　エントリーはこちら
 */
 .button__box{
    margin: 0px 87px;
    padding-bottom: 50px;
 }


.tech_btn-gradient-shadow {
    display: flex
    ;
        padding: 1em 87px;
        font-weight: bold;
        color: #333;
        text-decoration: none;
        background: linear-gradient(271deg, rgba(68, 190, 226, 0.7) 5%, rgba(246, 195, 180, 0.5) 87%,rgba(255, 255, 255, 0.5) 100%);
        border-radius: 100px;
        position: relative;
        transition: all 0.2s ease;
        box-shadow: 0 10px 0 rgba(156, 192, 203, 0.5);
        height: 100px;
        width: 100%;
        overflow: hidden;
        justify-content: center;
  }


  .tech_btn-gradient-shadow:hover {
    transform: translateY(10px);
    border-bottom: 0px;
    box-shadow: none;
  }


.tech_btn-gradient-shadow img{
    width: 80%;
}



 /*お問い合わせ先セクション */
.contact__section {
    max-width: 1200px;
    margin-bottom: 0px;
    border-radius: 0px;
    box-shadow   : none;
    padding      : 20px 67px;
    text-align   : center;
    background:none ;
}

.contact__section h2 {
    line-height: 150%;
    font-weight: 900;
    text-align: center;
    font-size: 38px;
    letter-spacing: 4.5px;
    /* letter-spacing: 0px; */
    color: #333333;
  }
  .contact__details {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    margin: 2rem 0rem;
    color: #333333;

    font-size: 20px;
  }
  .contact__block {
    line-height: 1.6;
    text-align: left;
  }

  .contact__block:nth-child(2) {
margin-left:60px;}
  .contact__divider {
    height: 1px;
    background-color: #4D4D4D;
    margin: 37px 0 74px;
  }
  .contact__action-buttons {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }


  .contact__action-buttons a{
    display: block;
    width: 100%;
    text-decoration: none;
}



@media (max-width: 768px) {
.button__box {
    margin: 0px 20px;
    padding-bottom: 40px;
}
.tech_btn-gradient-shadow {
    border-radius: 40px;
    height: 167px;
    flex-direction: column;
    justify-content: space-evenly;
    padding: 1em;
    background: linear-gradient(248deg, rgba(68, 190, 226, 0.7) 5%, rgba(246, 195, 180, 0.5) 87%);
}

.contact__block {
font-size: 16px;
  }
  .contact__block:nth-child(2) {
    margin-left: 0px;
}
.contact__divider {
    margin: 37px 0;
}
}
@media (480px <= width <834px) {
    .tech_btn-gradient-shadow img:nth-child(2){    width: 50%;}

    .tech_btn-gradient-shadow img:nth-child(3){    width: 60%;}

    .tech_btn-gradient-shadow img:nth-child(4){
    width: 10%;
    }
}

@media (max-width: 480px) {

    .tech_btn-gradient-shadow img:nth-child(2){    width: 66%;}

    .tech_btn-gradient-shadow img:nth-child(3){    width: 80%;}

    .tech_btn-gradient-shadow img:nth-child(4){
    width: 13%;
    }
}
  @media (min-width: 768px) {
    .contact__details {
      flex-direction: row;
    }
    .contact__action-buttons {
      flex-direction: row;
      justify-content: center;
    }



  }
  .contact__btn-box {

    flex: 1;
    border-radius: 30px;
    padding: 2rem;
    text-align: center;
    transition: transform 0.2s;
  }
  .contact__btn-entry {
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #ddd;
    color: #4D4D4D;
  }
  .contact__btn-login {
    cursor: pointer;
    background-color: #333;
    color: #fff;
  }
  .contact__btn-box:hover svg {
    transform: scale(1.2);
  }
  .contact__btn-box svg {
    width: 24px;
    height: 24px;
    margin: 1rem 0;
    transition: transform 0.2s;
    fill: currentColor;
  }
  .contact__btn-title {
    font-weight: 900;
    font-size: 1.2rem;

    font-size: 35px;


  }

  .contact__btn-title:nth-child(2) {
color: #fff;
}
  .contact__btn-subtitle {
    font-size: 0.8rem;
    color: inherit;

    font-size: 13px;
    font-weight: bold;
  }
  .contact__btn-text {
    font-size: 20px;
    margin-top: 1rem;
    letter-spacing: 1.5px;
    font-weight: bold;

  }





.button--04 {
    display        : inline-block;
    align-items    : center;
    padding        : 22px 34px;
    font-size      : 20px;
    width          : 455px;
    font-weight    : bold;
    color          : #ffffff;
    background     : #0F53EC;
    border         : 2px solid #0F53EC;
    border-radius  : 50px;
    box-shadow     : 0px 7px 0px #0033A4;
    text-align     : center;
    text-decoration: none;
    cursor         : pointer;
    position       : relative;
    letter-spacing : 0.1em;
    z-index        : 1;
    transition     : .3s;
    margin         : 40px auto 20px;
}

.button--04::after {
    content       : "";
    display       : inline-block;
    width         : 28px;
    height        : 28px;
    margin-left   : 10px;
    vertical-align: -4px;
    background    : #fff;
    -webkit-mask  : url('data:image/svg+xml;utf8,<svg fill="black" height="18px" width="18px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 330 330" xml:space="preserve"><path d="M311.8,87.4H0v-17.8h314.1l-56.4-56,13.5-13.5c4.1,4,89.8,87.4,89.8,87.4"/></svg>') no-repeat center;
    mask          : url('data:image/svg+xml;utf8,<svg fill="black" height="28px" width="28px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 361 87.4" xml:space="preserve"><path d="M311.8,87.4H0v-17.8h314.1l-56.4-56,13.5-13.5c4.1,4,89.8,87.4,89.8,87.4"/></svg>') no-repeat center;
    transition    : transform 0.3s ease-in-out;
}




.recruit__section p {
    font-weight: bold;
    font-size  : 1em;
}
@media (max-width: 1024px) {
    .contact__section{
        width: 100%;    padding: 20px 47px;
    }
.contact__btn-box{padding: 2rem;}

.contact__btn-title{
    font-size: 28px;
}
.contact__btn-text{
    font-size: 18px;
    margin-top: 0;
}
.contact__btn-box svg{margin: 1rem 0 0.5rem;}
}

@media (max-width: 976px) {/* 768 */

    .button--04 {

        font-size: 17px;
        width    : 344px;
    }

    .recruit__section {

        background: #fff;
    }
}

@media (max-width: 768px) {
    .contact__section {

        padding: 20px 20px;
    }
.contact__btn-title {
    font-size: 22px;
}
.contact__btn-text {
    font-size: 16px;
    margin-top: 0;
}
.contact__btn-box {
    padding: 0.8rem;
}
}

@media (max-width: 430px) {

    .image-container img {
    width: 55%;
    top: -7vw;
    left: 23vw;
}}
@media (max-width: 380px) {
.button--04 {
    width: 300px;
}
}

/* Footer */
/* ======= フッター ======= */
footer {
    background: #000;

}

.footer {
    display        : flex;
    justify-content: space-between;
    align-items    : flex-end;
    /* 画像とメニューの下端を揃える */
    padding        : 90px 20px 60px;

    color    : white;
    max-width: 890px;
    margin   : 0px auto;
}

/* 左側（ロゴ画像） */
.footer-left img {
    width: 460px;
}

/* 右側（メニュー & コピーライト） */
.footer-right {
    display       : flex;
    flex-direction: column;
    align-items   : flex-end;
    width         : 100%;
}

/* メニュー2段 */
.footer-menus {
    justify-content: flex-start;
    gap            : 40px;
    text-align     : right;
}

.footer-menu {
    list-style     : none;
    display        : flex;
    justify-content: space-between;
    margin-bottom  : 20px;

}

.footer-menu li {
    color: white;

    margin-bottom: 5px;
}

.footer-menu li:nth-child(2) {
    margin-left: 35px;
}

.footer-menu li a {
    text-decoration: none;
    color          : white;
    font-size      : 14px;
}

.footer-menu li a:hover {
    text-decoration: underline;
}

/* コピーライト */
.copyright {
    color    : white;
    font-size: 12px;
}

/* ======= レスポンシブ対応 ======= */



@media (max-width: 1024px) {
    .footer {
        display        : flex;
        justify-content: space-between;
        align-items    : center;
        padding        : 90px 20px;
        color          : white;
        max-width      : 100%;
        flex-direction : column;
        margin         : 0px auto;
    }

    .footer-right {
        display       : flex;
        flex-direction: column;
        align-items   : center;
        width         : 100%;
    }

    .footer-menu {
        list-style     : none;
        display        : flex;
        justify-content: center;
        flex-direction : column;
        margin         : 80px 0px 70px;
        align-items    : center;
    }

    .footer-menu li:nth-child(2) {
        margin-left: 0px;
    }

    .copyright {

        text-align: center;
    }
}

@media (max-width: 976px) {/* 768 */

    .footer {
        display        : flex;
        justify-content: space-between;
        align-items    : center;
        padding        : 64px 20px 43px;
        color          : white;
        max-width      : 100%;
        flex-direction : column;
        margin         : 0px auto;
    }
    .footer-left img{
        width: 100%;
    }
    .footer-left {
        margin-bottom: 20px;
        padding      : 0 14px;
    }

    .footer-menus {
        flex-direction: column;
        gap           : 20px;
        text-align    : center;
    }

    .footer-right {
        align-items: center;
    }
}