@charset "UTF-8";
/* ----------------------------------------------------------
Common
---------------------------------------------------------- */
:root {
    --primary-green: #006428;
    --primary-red: #ED8772;
    --primary-warmgreen: #E4F3EA;
    --primary-lightgreen: #1A9D43;
    --primary-white: #FAFAFA;
}

html {
    font-size: 62.5%
}

img {
    max-width: 100%;
}
body {
    font-family:
        "Noto Sans JP",
        "Zen Kaku Gothic New",
        "Tilt Neon",
        "Rampart One",
        serif;
    font-style: normal;
    color: var(--primary-green);
    line-height: 1.8;
}

.message-txt hgroup p,
.about-txt hgroup p,
.job-txt hgroup p,
.task-title hgroup p,
.advantage hgroup p,
.working-txt hgroup p,
.entry hgroup p,
.inqiry-title hgroup p,
.movie-title p {
    font-family: "Tilt Neon";
    font-size: 7rem;
    line-height: 1.5;
}

.section-title {
    display: block;
    font-family: "Zen Kaku Gothic New";
    font-size: 3.2rem;
    margin-top: 16px;
    font-weight: 900;
    line-height: 1.5;
}

.btn a {
    font-family: "Tilt Neon";
    font-size: 2.4rem;
    background-color: var(--primary-green);
    color: #fff;
    border-radius: 53px;
    border: 2px solid var(--primary-green);
    text-align: center;
    padding: 20px 49px;
    width: 350px;
    display: flex;
    align-items: center;
    gap: 16px;
    line-height: 91%;
    letter-spacing: 0.27em;
    transition: .4s;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
    z-index: 1;
}


.btn a::before {
    content: '';
    width: 100%;
    height: 100%;
    background-color: #FAFAFA;
    position: absolute;
    left: -100%;
    top: 0;
    transition: .4s;
    z-index: -1;
}

.btn a:hover {
    color: var(--primary-green);
    border: 2px solid var(--primary-green);
}

.btn a:hover::before {
    left: 0;
}

.btn span {
    display: block;
    font-size: 1.5rem;
    letter-spacing: 1;
    line-height: 1.5;
    letter-spacing: 0.1em;
}

.btn a::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 10px solid var(--primary-white);
    border-right: 0;
    position: absolute;
    right: 45px;
    top: 50%;
    transform: translateY(-50%);
  }

.btn a:hover::after {
    border-left: 10px solid var(--primary-green);
}


/* common pc */
@media screen and (max-width: 768px) {
    .message-txt hgroup p,
    .about-txt hgroup p,
    .job-txt hgroup p,
    .task-title hgroup p,
    .advantage hgroup p,
    .working-txt hgroup p,
    .entry hgroup p,
    .inqiry-title hgroup p,
    .movie-title p  {
        font-size: 4rem;
    }

    .section-title {
        font-size: 2.4rem;
    }

    .btn a {
        width: 300px;
        padding: 15px 8%;
        gap: 8px;
    }

    .btn a::after {
        right: 8%;
    }


}/* sp 768px */

/* ----------------------------------------------------------
header
---------------------------------------------------------- */
.header {
    width: 100%;
    height: 64px;
    background: url(../img/nav-bg.png) no-repeat center / cover;
    padding: 47px 4.4%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.logo {
    width: 213px;
    z-index: 200;
}

.nav ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 46px;
    padding: 0 0 0 64px;
}

.nav-item {
    font-family: "Zen Kaku Gothic New";
    font-size: 1.6rem;
    font-weight: 500;
}

.nav-item a {
    position: relative;
    display: block;
    padding: 4px 0;
}

.nav-item a::before,
.nav-item a::after {
    content: '';
    width: 100%;
    height: 2px;
    background-color: var(--primary-green);
    position: absolute;
    transform: scale(0, 1);
    transition: transform .3s;
    opacity: 0.4;
}

.nav-item a::before {
    top: 0;
    right: 0;
    transform-origin: left bottom;
}

.nav-item a:hover::before {
    transform-origin: right bottom;
    transform: scale(1, 1);
}

.nav-item a::after {
    bottom: 0;
    left: 0;
    transform-origin: right top;
}

.nav-item a:hover::after {
    transform-origin: left top;
    transform: scale(1, 1);
}

.hamburger {
    display: none;
}

/* header pc */
@media screen and (max-width: 1200px) {
    .header {
        width: 100%;
        height: 60px;
        background: url(../img/sp-header.png);
        padding: 20px 2%;
        position: fixed;
        top: 0;
        left: 0;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 100;
    }

    .logo {
        width: 150px;
    }

    .nav {
        width: 100%;
        height: 100vh;
        position: fixed;
        top:0;
        left:0;
        z-index: 100;
        background: url(../img/nav-bg.png) no-repeat center / cover;
        transform: translateX(-100%);
        transition: transform 0.4s;
    }

    .nav ul {
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        gap: 15px;
        padding:150px 20%;
        position: relative;
    }

    .nav ul::after {
        content: '';
        display: block;
        width: 430px;
        height: 340px;
        background: url(../img/menu-img.png) no-repeat center / contain;
        position: absolute;
        bottom : -240px;
        left: 50%;
        transform: translateX(-50%);
    }

    .nav-item {
        font-size: 2.4rem;
        font-weight: 700;
    }

    .hamburger {
        display: block;
        position: relative;
        cursor: pointer;
        width: 60px;
        height: 60px;
        top: 0;
        right: 0;
        z-index:100;
    }

    .hamburger span {
        display: inline-block;
        transition: all .4s;
        position: absolute;
        left: 16px;
        height: 2px;
        width: 28px;
        background-color: var(--primary-green);
    }
    .hamburger span:nth-of-type(1) {
            top: 22px;
    }

    .hamburger span:nth-of-type(2) {
            top: 30px;
    }

    .hamburger span:nth-of-type(3) {
            top: 38px;
    }

    .hamburger.active span:nth-of-type(1) {
        top: 30px;
        transform: rotate(-45deg);
    }

    .hamburger.active span:nth-of-type(2) {
        opacity: 0;
    }

    .hamburger.active span:nth-of-type(3) {
        top: 30px;
        transform: rotate(45deg);
    }

    /* nav.active表示  */
    .nav.active {
        transform: translateX(0);
    }

}/* header 768px */

/* ----------------------------------------------------------
mv
---------------------------------------------------------- */
.mv {
    width: 100%;
    height: 840px;
    padding: 333px 40% 192px 7.4%;
    overflow: hidden;
    position: relative;
}

.mv p:nth-of-type(1),
.mv p:nth-of-type(2),
.mv p:nth-of-type(3),
.mv p:nth-of-type(4) {
    background-color: var(--primary-white);
    padding: 0 48px;
    width: fit-content;
}

.mv p:nth-of-type(1) {
    font-family: "Zen Kaku Gothic New";
    font-size: 6rem;
    font-weight: 700;
    line-height: 1.5;
    z-index: 11;
    position: absolute;
    top: 430px;
    left: 7.4%;
    animation: fadetxt 1s 2s ease-out forwards;
    opacity: 0;
}

.mv p:nth-of-type(2)  {
    font-family: "Zen Kaku Gothic New";
    font-size: 6rem;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 16px;
    z-index: 11;
    position: absolute;
    top: 520px;
    left: 7.4%;
    opacity: 0;
    animation: fadetxt 1s 3s ease-out forwards;
}

.mv p:nth-of-type(3)  {
    font-family: "Zen Kaku Gothic New";
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 16px;
    z-index: 11;
    position: absolute;
    top: 650px;
    left: 7.4%;
    opacity: 0;
    padding: 0 48px;
    animation: fadetxt2 1s 4s ease-out forwards;
}

.mv p:nth-of-type(4)  {
    font-family: "Zen Kaku Gothic New";
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 16px;
    z-index: 11;
    position: absolute;
    top: 700px;
    left: 7.4%;
    opacity: 0;
    padding: 0 48px;
    animation: fadetxt2 1s 4s ease-out forwards;
}

@keyframes fadetxt {
    0% {
        transform: translateX(-100%);
        opacity: 0;
    }

    100% {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes fadetxt2 {
    0% {
        transform: translateY(-100%);
        opacity: 0;
    }

    100% {
        transform: translateY(0);
        opacity: 1;
    }
}

.mv-img {
    opacity: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    animation: fadein 30s infinite;
  }

  .mv-img.item1 {
    opacity: 1;
    animation-delay: 0s;
}
.mv-img.item2 { animation-delay: 5s; }
.mv-img.item3 { animation-delay: 10s; }
.mv-img.item4 { animation-delay: 15s; }
.mv-img.item5 { animation-delay: 20s; }
.mv-img.item6 { animation-delay: 25s; }

@keyframes fadein {
    0% { opacity: 0; z-index: 1; }
    5% { opacity: 1; z-index: 2; }
    25% { opacity: 1; }
    30% { opacity: 0; z-index: 1; }
    100% { opacity: 0; }
}

.item1 {
    background: url(../img/mv1.jpg) no-repeat center / cover;
}
.item2 {
    background: url(../img/mv2.jpg?2) no-repeat center / cover;
}
.item3 {
    background: url(../img/mv3.jpg) no-repeat center / cover;
}
.item4 {
    background: url(../img/mv4.jpg) no-repeat center / cover;
}
.item5 {
    background: url(../img/mv5.jpg) no-repeat center / cover;
}
.item6 {
    background: url(../img/mv6.jpg) no-repeat center / cover;
}


/* ふわっとアニメーション */
/* @keyframes fadein {
    0% {
        opacity: 0;
    }
    30% {
        opacity: 1;
    }
    35% {
        opacity: 1;
    }
    50% {
        opacity: 0;
        z-index: 9;
    }
    100% {
        opacity: 0;
    }
} */


.scroll-box {
    height: 240px;
    background: url(../img/scroll-bg.png) no-repeat center top / cover;
    padding: 72px 0;
    text-align: center;
    position: relative;
}

.scroll-box::before {
    content: '';
    display: block;
    width: 100px;
    height: 132px;
    background: url(../img/scroll-text.png) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation: rotate 6s .5s linear infinite;

}

.scroll-box::after {
    content: '';
    display: block;
    width: 13px;
    height: 64px;
    background: url(../img/scroll-golf.png) no-repeat center / contain;
    position: absolute;
    top:50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

  @keyframes rotate {
    0% {
        transform: translate(-50%, -50%) rotate(0);
      }

    100% {
        transform:translate(-50%, -50%) rotate(360deg);
    }
  }


/* mv pc */
@media screen and (max-width: 768px) {
    .mv {
        margin-top: 60px;
        /* padding: 508px 0 373px 8%; */
        height: 600px;
    }

    .mv p:nth-of-type(1)  {
        font-size: 3.2rem;
        font-weight: 700;
        line-height: 1.5;
        background-color: var(--primary-white);
        padding: 0 15px;
        width: fit-content;
        left: 3%;
        top: 340px;
    }

    .mv p:nth-of-type(2)  {
        font-size: 3.2rem;
        font-weight: 700;
        line-height: 1.5;
        background-color: var(--primary-white);
        padding: 0 15px;
        display: inline-block;
        left: 3%;
        top: 380px;
    }

    .mv p:nth-of-type(3)  {
        font-size: 1.7rem;
        font-weight: 700;
        line-height: 1.5;
        padding: 0 15px;
        display: inline-block;
        /* color: #FAFAFA;
        text-shadow: 0px 4px 4px #99D7B2; */
        left: 3%;
        top: 470px;
    }

    .mv p:nth-of-type(4)  {
        font-size: 1.7rem;
        font-weight: 700;
        line-height: 1.5;
        padding: 0 15px;
        display: inline-block;
        /* color: #FAFAFA;
        text-shadow: 0px 4px 4px #99D7B2; */
        left: 3%;
        top: 505px;
    }

    .scroll-box {
        height: 190px;
        background: url(../img/scroll-bg.png) no-repeat center top / cover;
        padding: 47px 0;
    }

    .scroll-box::before {
        width: 72px;
        height:97px;
    }
    .scroll-box::after {
        width: 10px;
        height: 50px;
    }

    .item1 {
        background: url(../img/sp-mv1.jpg) no-repeat center / cover;
    }
    .item2 {
        background: url(../img/sp-mv2.jpg?2) no-repeat center / cover;
    }
    .item3 {
        background: url(../img/sp-mv3.jpg) no-repeat center / cover;
    }
    .item4 {
        background: url(../img/sp-mv4.jpg) no-repeat center / cover;
    }
    .item5 {
        background: url(../img/sp-mv5.jpg) no-repeat center / cover;
    }
    .item6 {
        background: url(../img/sp-mv6.jpg) no-repeat center / cover;
    }

}/* mv 768px */


/* ----------------------------------------------------------
message
---------------------------------------------------------- */
.message {
    padding: 53px 0;
    background: linear-gradient(180deg, #E9FEF7 0%, #FAFAFA 100%);
    position: relative;
}

.message-txtbox {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 100px;
}

.message-img {
    width: 45%;
}

.message-img img {
    width: 100%;
    border-radius: 30px;
    object-fit: cover;
    height: 327px;
}

.message .section-title {
    text-align: center;
    margin-bottom: 60px;
}

.message-txt hgroup p {
    text-align: center;
}

.message-txt {
    width: 58%;
}

.message-txt__content {
    font-family: "Zen Kaku Gothic New";
    font-size: 2rem;
    line-height: 2;
    text-align: center;
    font-weight: 700;
}

.message-txt__content span {
    color: var(--primary-red);
}

.message-txt__content p:last-child {
    margin-top: 28px;
}

.message::after {
    content: '';
    width: 100%;
    height: 265px;
    background: url(../img/message-bg-bottom.png) no-repeat center / cover;
    position: absolute;
    bottom: -265px;
    left: 0;
}

.scroll-infinity {
    margin-top: 60px;
}

.scroll-infinity__wrap {
    display: flex;
    overflow: hidden;
  }
.scroll-infinity__list {
    display: flex;
    padding: 0
}
.scroll-infinity__list--left {
    animation: infinity-scroll-left 50s infinite linear 0.5s both;
}
.scroll-infinity__item {
    width: calc(100vw / 4);
}
.scroll-infinity__item>img {
    width: 100%;
}

@keyframes infinity-scroll-left {
    from {
      transform: translateX(0);
    }
      to {
      transform: translateX(-100%);
    }
}

/* message sc */
@media screen and (max-width: 768px) {
    .message {
        padding: 53px 0 0 0;
        background: (180deg, #E9FEF7 0%, #FAFAFA 140.87%);
    }

    .message-txtbox {
        flex-direction: column-reverse;
        gap: 64px;
    }

    .message-img {
        width: 100%;
    }

    .message .section-title {
        text-align: center;
        margin-bottom: 64px;
    }

    .message-txt {
        width: 100%;
    }

    .message-txt__content {
        font-size: 2rem;
        text-align: left;
        padding: 0 8%;
    }

    .message-txt__content:last-child {
        margin-top: 20px;
    }

    .message::after {
        content: '';
        width: 100%;
        height: 240px;
        background: url(../img/sp-message-bg-bottom.png) no-repeat center / cover;
        position: absolute;
        bottom: -240px;
        left: 0;
    }

    .pcbr {
        display: none;
    }


    .scroll-infinity__item {
        width: calc(100vw / 2);
    }


}/* message 768px */


/* ----------------------------------------------------------
about
---------------------------------------------------------- */
.about {
    margin: 265px auto 0 auto;
}

.about-txtbox {
    padding: 53px 7.2% 0 7.2%;
    background: url(../img/about-bg1.png) no-repeat center / cover;
    display: flex;
    align-items: center;
    gap: 30px;
}

.about-txt {
    width: 38%;
}

.about-txt__content {
    margin-top: 32px;
    font-size: 2rem;
    font-weight: 500;
}

.about-txtbox img {
    width: 58%;
    border-radius: 250px 0px;
}

.about ul {
    padding: 104px 14.2% 136px 14.2%;
    background: url(../img/about-bg2.png) no-repeat center / cover;
}

.about li {
    background-color: var(--primary-white);
    margin-top: 56px;
    border-radius: 50px;
    padding: 64px 4.6% 72px 4.6%;
    display: flex;
    justify-content: center;
    gap: 60px;
}

.about li:first-child {
    margin-top: 0;
}

.about .point {
    width: 70%;
}

.about .point h3 {
    font-family: "Zen Kaku Gothic New";
    font-size: 3.2rem;
    font-weight: 700;
}

.about .point h3 span {
    font-family: "Rampart One";
    font-size: 4.8rem;
    line-height: 1;
    margin-right: 24px;
}

.about .point p {
    margin-top: 32px;
    font-size: 2rem;
}

.about-img {
    width: 150px;
}

.about li img {
    width: 100%;
    object-fit: cover;
}

/* about pc */
@media screen and (max-width: 768px) {
    .about {
        margin-top: 240px;
    }

    .about-txtbox {
        padding: 0 8.5% 104px 8.5%;
        background: url(../img/sp-about-bg1.png) no-repeat center / cover;
        flex-direction: column;
        align-items: flex-start;
        gap: 48px;
    }

    .about-txt hgroup p {
        text-align: left;
    }

    .about-txt {
        width: 90%;
    }

    .about-txt__content {
        font-size: 1.6rem;
    }

    .about ul {
        padding: 0 8.5% 60px 8.5%;
        background: url(../img/sp-about-bg2.png) no-repeat center / cover;
    }

    .about li {
        padding: 40px 7.7% 56px 7.7%;
        flex-direction: column;
        justify-content: center;
        gap: 40px;
    }

    .about .point {
        width: 100%;
    }

    .about .point h3 {
        font-size: 2.4rem;
    }

    .about .point h3 span {
        font-size: 4rem;
    }

    .about .point p {
        font-size: 1.6rem;
    }

    .about-img {
        width: 100px;
        margin: 0 auto;
    }

    .about-txtbox img {
        width: 100%;
        border-radius: 170px 0px;
    }

}/* about 768px */


/* ----------------------------------------------------------
job
---------------------------------------------------------- */

.job-txt {
    background: url(../img/job-bg.png) no-repeat center / cover;
    padding: 192px 29% 104px 29%;
    text-align: center;
}

.job-txt p {
    margin-top: 32px;
    font-size: 2rem;
}

.job-wrapper {
    padding: 0 7.7% 142px 7.7%;
    text-align: center;
    background-color: #E4F8FF;
}

li.job-box {
    background-color: var(--primary-white);
    padding: 88px 7.7% 88px 7.7%;
    border-radius: 30px;
    margin-top: 148px;
    border: 1px solid var(--primary-green);
}

li.job-box:first-child {
    margin-top: 0;
}

li.job-box h4 {
    font-family: "Zen Kaku Gothic New";
    font-size: 4rem;
    line-height: 1.5;
    font-weight: 900;
    position: relative;
    box-sizing: border-box;
    border-width: 0px 1px 1px 0px;
    border-style: solid;
    border-color: #006428;
    border-radius: 0px 0px 30px 0px;
    padding: 40px 88px 40px 172px;
    width: fit-content;
}

li.job-box:nth-of-type(1) h4,
li.job-box:nth-of-type(2) h4,
li.job-box:nth-of-type(3) h4,
li.job-box:nth-of-type(4) h4 {
    margin-right: auto;
}


li.job-box:nth-of-type(1) h4::before {
    content: '';
    display: block;
    width: 60px;
    height: 60px;
    background: url(../img/icon-restaurant.svg) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left: 88px;
    transform: translateY(-50%);
}
li.job-box:nth-of-type(2) h4::before {
    content: '';
    display: block;
    width: 60px;
    height: 60px;
    background: url(../img/icon-course.svg) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left: 88px;
    transform: translateY(-50%);
}
li.job-box:nth-of-type(3) h4::before {
    content: '';
    display: block;
    width: 60px;
    height: 60px;
    background: url(../img/icon-office.svg) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left: 88px;
    transform: translateY(-50%);
}
li.job-box:nth-of-type(4) h4::before {
    content: '';
    display: block;
    width: 60px;
    height: 60px;
    background: url(../img/icon-caddie.svg) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left: 88px;
    transform: translateY(-50%);
}

.job-titlebox {
    padding: 0 8.2%;
}

.job-content {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
    margin-top: 40px;
    padding-top: 40px;
}

.job-content__img {
    width: 47%;
    border-radius: 30px;
}

.job-content__txt {
    width: 47%;
    text-align: left;
}

.job-content__img img {
    width: 100%;
    object-fit: cover;
    border-radius: 30px;
}

.job-content__txt p:first-child {
    font-family: "Zen Kaku Gothic New";
    font-size: 2.4rem;
    font-weight: 700;
}

.job-content__txt p:last-child {
    font-family: "Zen Kaku Gothic New";
    font-size: 2rem;
    margin-top: 24px;
    line-height: 1.5;
    font-weight: 500;
}

.worker-wrapper {
    margin-top: 108px;
}

.worker {
    display: flex;
    justify-content: center;
    gap: 64px;
    align-items: center;
    margin-top: 44px;
}

.topic {
    font-family: "Zen Maru Gothic";
    font-size: 2.5rem;
    font-weight: 700;
    background: linear-gradient(transparent 50%, #EFFFE2 50%);
    width: fit-content;
    display: inline;
}


.worker img {
    width: 33%;
    border-radius: 30px;
}

.worker div {
    width: 60%;
    text-align: left;
}

.worker div p:first-child {
    font-family: "Zen Kaku Gothic New";
    font-size: 2rem;
    font-weight: 700;
    margin-top: 16px;
    border: 1px solid var(--primary-green);
    width: fit-content;
    padding: 4px 20px;
    border-radius: 20px;
    margin-bottom: 10px;

}

.worker div p:last-child {
    font-family: "Zen Kaku Gothic New";
    font-size: 2rem;
    margin-top: 10px;
    font-weight: 500;
    line-height: 1.5;
}

.job .btn {
    display: flex;
    justify-content: flex-end;
    margin: 44px 0 0 auto;
}

.search {
    padding: 0 10%;
    margin-top: 35px;
}

.search p {
    font-family: "Zen Kaku Gothic New";
    font-size: 2.4rem;
    text-align: left;
    font-weight: 500;
}

.search ul {
    display: flex;
    justify-content:flex-start;;
    align-items: center;
    gap: 24px;
    margin-top: 24px;
}

.search li {
    font-size: 2rem;
    font-weight: 500;
    position: relative;
    padding-left: 48px;
}

.search li::before {
    content: '';
    display: block;
    width: 32px;
    height: 32px;
    background: url(../img/icon-check.svg) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.task-title {
    padding: 166px 0 64px 0;
    background: url(../img/task-title-bg.png) no-repeat center top / cover;
}

.task-title .section-title {
    text-align: left;
}

.task-title hgroup p {
    text-align: left;
}

.job .spbtn {
    display: none;
}

.job .swiper-pagination span:nth-child(1):after,
.job .swiper-pagination span:nth-child(2):after,
.job .swiper-pagination span:nth-child(3):after,
.job .swiper-pagination span:nth-child(4):after{
    display:none;
}

.job .swiper-pagination-bullet::before {
    display: none;
}

.job .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 20px);
    display: none;
}

.job .swiper-button-next,
.job .swiper-button-prev {
  position: absolute;
}

.job .swiper-button-next::after,
.job .swiper-button-prev::after {
    content: "";
    position: absolute;
    width: 30px; /* 背景画像の幅を必ず指定 */
    height: 30px; /* 背景画像の高さを必ず指定 */
    top: 50%;
    transform: translateY(-50%);
}

.job .swiper-button-next::after{
    background: url(../img/btn-next.png) no-repeat center / contain;
}
.job .swiper-button-prev::after{
    background: url(../img/btn-prev.png) no-repeat center / contain;
}

.job .swiper-button-next {
    right: 25px;
}

.job .swiper-button-prev {
    left: 25px;
}

.name {
    font-size: 2.3rem;
    font-weight: 700;
    margin-bottom: 10px;
}


/* job sp */
@media screen and (max-width: 768px) {
    .job-txt {
        padding: 60px 17.8% 60px 17.8%;
    }

    .job-txt p {
        font-size: 1.6rem;
    }

    .job-wrapper {
        padding: 0 8% 60px 8%;
    }

    li.job-box {
        padding: 40px 5% 40px 5%;
        margin-top: 60px;
    }

    li.job-box:last-child {
        padding: 40px 0;
    }

    li.job-box:first-child {
        margin-top: 0;
    }

    li.job-box h4 {
        font-size: 2.4rem;
        padding: 20px 40px 20px 56px;
    }

    li.job-box:nth-of-type(1) h4::before {
        width: 30px;
        height: 30px;
        left: 20px;
    }
    li.job-box:nth-of-type(2) h4::before {
        width: 30px;
        height: 30px;
        left: 20px;
    }

    li.job-box:nth-of-type(3) h4::before {
        width: 30px;
        height: 30px;
        left: 20px;
    }
    li.job-box:nth-of-type(4) h4::before {
        width: 30px;
        height: 30px;
        left: 20px;
    }

    .job-titlebox {
        padding: 0;
    }

    .job-content {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 40px;
        margin-top: 40px;
        padding-top: 0;
    }

    .job-content__img {
        width: 100%;
    }

    .job-content__img img {
        width: 100%;
        object-fit: cover;
        height: auto;
    }

    .job-content__txt {
        width: 100%;
        text-align: left;
    }

    .job-content__txt p:first-child {
        font-size: 2rem;
        text-align: center;
    }

    .job-content__txt p:last-child {
        font-size: 1.6rem;
    }

    .worker-wrapper {
        margin-top: 80px;
    }

    .worker {
        flex-direction: column;
        gap: 20px;
        margin-top: 60px;
    }

    .worker img {
        width: 70%;
    }

    .worker div {
        width: 100%;
        text-align: left;
    }

    .worker div p:last-child {
        font-size: 1.6rem;
        margin-top: 24px;
    }

    .job .btn {
        display: flex;
        justify-content: center;
        margin: 44px 0 0 auto;
    }

    .job .pcbtn {
        display: none;
    }

    .search {
        padding: 0 5%;
        margin-top: 72px;
    }

    .search p {
        font-family: "Zen Kaku Gothic New";
        font-size: 2rem;
        text-align: center;
        font-weight: 500;
    }

    .search ul {
        flex-direction: column;
        justify-content:center;
        align-items: flex-start;
        gap: 10px;
        width: fit-content;
        margin: 24px auto 0 auto;
    }

    .search li {
        font-size: 1.6rem;
        padding-left: 30px;
    }

    .caddie-box {
        padding: 0 8.5%;
    }

    li.job-box:nth-of-type(1) h4,
    li.job-box:nth-of-type(2) h4,
    li.job-box:nth-of-type(3) h4,
    li.job-box:nth-of-type(4) h4 {
        margin: 0 auto;
    }

    .worker div p:first-child {
        font-size: 1.6rem;
        margin-top: 0;
        margin-bottom: 10px;
    }

    .topic {
        margin-top: 20px;
    }

    .search li::before {
        width: 20px;
    }

    .job .swiper-button-next {
        right: 10px;
    }

    .job .swiper-button-prev {
        left:  10px;
    }

    .name {
        font-size: 2rem;
        font-weight: 700;
        margin-bottom: 10px;
    }


}
/* job 768px */

/* ----------------------------------------------------------
task
---------------------------------------------------------- */
.task-txt {
    font-size: 2rem;
    font-weight: 500;
    margin-top: 32px;
    text-align: left;
}

.add {
    font-size: 1.6rem;
    margin-top: 10px;
    text-align: left;
}

.task .swiper-slide {
    padding: 0 10% 100px 10%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
}

.task .swiper-slide img {
    width: 48%;
    border-radius: 30px;
}

.slide-box {
    width: 48%;
    text-align: left;
}

.slide-box p:first-child {
    font-size: 3.6rem;
    font-family: "Zen Kaku Gothic New";
    font-weight: 900;
}

.small {
    font-size: 2.4rem;
    font-weight: 700;
}
.time {
    font-family: "Tilt Neon";
    font-size: 3.6rem;
}

.slide-box p:last-child {
    font-size: 2rem;
    font-family: "Zen Kaku Gothic New";
    font-weight: 500;
    line-height: 1.5;
}

/* swiper */

.swiper-pagination span {
    position: relative;
}

.task .swiper-pagination span:nth-child(1):after {
    content: '7:00';
    display: block;
    font-size: 2.4rem;
    color: var(--primary-green);
    font-family: "Tilt Neon";
    padding: 0 20px;
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);

}
.task .swiper-pagination span:nth-child(2):after {
    content: '12:00';
    display: block;
    font-size: 2.4rem;
    color: var(--primary-green);
    font-family: "Tilt Neon";
    padding: 0 20px;
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);

}
.task .swiper-pagination span:nth-child(3):after {
    content: '14:30';
    display: block;
    font-size: 2.4rem;
    color: var(--primary-green);
    font-family: "Tilt Neon";
    padding: 0 20px;
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);

}

.task .swiper-pagination span:nth-child(4):after {
    content: '15:30';
    display: block;
    font-size: 2.4rem;
    font-family: "Tilt Neon";
    padding: 0 20px;
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);

}

.task .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 60px);
    display: inline-block;
}

.task .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: var(--swiper-pagination-bottom, 30px);
}

.task .swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
    color: var(--primary-green);
}

.task .swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    color: var(--primary-green);
}

.swiper-pagination-bullet {
    background-color: var(--primary-green);
}

.task .swiper-pagination-bullet::before {
    content: '';
    display: block;
    width: 76px;
    height: 3px;
    background-color: #99D7B2;
    position: absolute;
    top: 50%;
    left: -80px;
    transform: translateY(-50%);
}

.task .swiper-pagination-bullet-active::before{
    background-color: var(--primary-green);
}

.task .swiper-pagination-bullet-active {
    background-color: var(--primary-green);
}

.task .swiper-button-next::after,
.task .swiper-button-prev::after {
    content: "";
    position: absolute;
    width: 60px; /* 背景画像の幅を必ず指定 */
    height: 60px; /* 背景画像の高さを必ず指定 */
    top: 50%;
    transform: translateY(-50%);
}

/* task sp */
@media screen and (max-width: 768px) {
    .task-txt {
        font-size: 1.6rem;
        text-align: left;
        padding: 0 8.5%;
    }

    .task .swiper-slide {
        padding: 0 6% 20px 6%;
        flex-direction: column;
        gap: 40px;
    }

    .task .swiper-slide img {
        width: 100%;
    }

    .slide-box {
        width: 70vw;
        text-align: left;
    }

    .slide-box p:first-child {
        font-size: 2.4rem;
    }

    .small {
        font-size: 2rem;
    }
    .time {
        font-size: 3.2rem;
    }

    .slide-box p:last-child {
        font-size: 1.6rem;
        margin-bottom: 20px;
    }

    .task-title {
        padding: 80px 0 64px 0;
        background: url(../img/sp-task-bg.png) no-repeat center right / cover;
    }

    .task-title::before {
        display: none;
    }

    .task-title .section-title {
        text-align: center;
    }

    .task-title hgroup p {
        text-align: center;
    }

    .swiper-pagination span:nth-child(1):after,
    .swiper-pagination span:nth-child(2):after,
    .swiper-pagination span:nth-child(3):after,
    .swiper-pagination span:nth-child(4):after {
        font-size: 1.6rem;
        padding: 0 10px;
    }

    .task .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
        margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 30px);
    }

    .task .swiper [class^="swiper-button-"]{
        top: 80px;
    }/* 矢印の高さを変更 */

    /* .task .swiper swiper-slide{
        width: 90%;
        display: block;
        margin: 0 auto;
    }矢印を枠の外へ */


    .task .swiper [class^="swiper-button-"]::after{
        font-size: 30px;
    } /* 矢印のサイズを変更 */

    .task .swiper-button-next::after,
    .task .swiper-button-prev::after {
    content: "";
    position: absolute;
    width: 30px; /* 背景画像の幅を必ず指定 */
    height: 30px; /* 背景画像の高さを必ず指定 */
    top: 50%;
    transform: translateY(-50%);
    }

.task .swiper-pagination-bullet::before {
    width: 45px;
    height: 3px;
    left: -45px;
    }

    .task .swiper-button-next {
    right: 25px;
    }

    .task .swiper-button-prev {
    left:  25px;
    }

    .add {
        padding: 0 10%;
        font-size: 1.2rem;
    }



}

/* task 768px */


/* ----------------------------------------------------------
advantage
---------------------------------------------------------- */
.advantage .advantage-title {
    padding-top: 216px;
    background: url(../img/advantage-bg.png) no-repeat center / cover;
}

.advantage-wrapper {
    margin-top: 58px;
}

.advantage-box {
    display: flex;
    justify-content: center;
    gap: 80px;
}

.advantage-img {
    width: 50%;
    border-radius: 30px;
    object-fit: cover;
    margin: 80px 0;
}

.advantage-img img {
    width: 100%;
    object-fit: cover;
    border-radius: 30px;
}

.advantage-txt {
    width: 41%;
}

.advantage-txt :nth-of-type(1),
.advantage-txt :nth-of-type(3) {
    font-family: "Zen Kaku Gothic New";
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 96px;
    position: relative;
}

.advantage-txt :nth-of-type(1)::before,
.advantage-txt :nth-of-type(3)::before {
    content: '';
    display: block;
    width: 80%;
    height: 1px;
    background-color: var(--primary-green);
    position: absolute;
    bottom: -16px; 
    left: 50%;
    transform: translateX(-50%);
}

.advantage-txt :nth-of-type(1) {
    margin-top: 0;
}

.advantage-txt :nth-of-type(2),
.advantage-txt :nth-of-type(4) {
    font-family: "Zen Kaku Gothic New";
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.5;
    margin-top: 32px;
    text-align: left;
}

/* advantage sp */
@media screen and (max-width: 768px) {
    .advantage {
        padding: 0 5%;
    }
    .advantage .advantage-title {
        padding-top: 104px;
        background: url(../img/sp-advantage.png) no-repeat center / cover;
    }

    .advantage-wrapper {
        margin-top: 44px;
    }

    .advantage-box {
        flex-direction: column-reverse;
        justify-content: center;
        gap: 44px;
        margin-top: 44px;
    }

    .advantage-box:last-child {
        flex-direction: column;
    }

    .advantage-img {
        width: 100%;
        margin: 0 0;
    }

    .advantage-txt {
        width: 100%;
    }

    .advantage-txt :nth-of-type(1),
    .advantage-txt :nth-of-type(3) {
        font-family: "Zen Kaku Gothic New";
        font-size: 2rem;
        margin-top: 44px;
        padding: 0 2%;
    }

    .advantage-txt :nth-of-type(1) {
        margin-top: 0;
    }
    
    .advantage-txt :nth-of-type(2),
    .advantage-txt :nth-of-type(4) {
        font-family: "Zen Kaku Gothic New";
        font-size: 1.6rem;
        padding: 0 8%;
    }

    .advantage-txt :nth-of-type(1)::before,
    .advantage-txt :nth-of-type(3)::before {
        width: 90%;
    }
}
/* sp 768px */

/* ----------------------------------------------------------
working
---------------------------------------------------------- */
.working-txt-box {
    padding: 142px 7.2%;
    background: url(../img/working-bg.png) no-repeat center top / cover;
    display: flex;
    justify-content: center;
    gap: 120px;
}

.working-txt {
    width: 47%;
}

.working-txt__content p {
    font-size: 2rem;
    margin-top: 16px;
}

.working-txt__content p:first-child {
    margin-top: 32px
}

.working-txt__content p:last-child {
    margin-top: 32px;
    text-align: right;

}

.working-txt__img {
    width: 36.6%;
    border-radius: 30px;

}

.working-txt__img img {
    width: 100%;
    object-fit: cover;
    border-radius: 30px;
    margin-top: 201px;
}

/* scroll-txt-container */
.scroll-txt-container {
    overflow: hidden;
    background-color: #EFFFE2;
}

.scroll-txt-wrapper {
    display: flex;
    animation: loop-text 30s linear infinite;
}

.double-content {
    font-family: "Tilt Neon";
    display: inline-block;
    font-size: 8rem;
    white-space: nowrap;
    color: #99D7B2;
    margin-right: 40px;
    opacity: 0.5;
}

.scroll-txt-wrapper-re {
    display: flex;
    animation: loop-text-re 30s linear infinite;
}



@keyframes loop-text {
    0% {
      transform: translateX(0%);
    }
    100% {
      transform: translateX(-100%);
    }
}

@keyframes loop-text-re {
    0% {
      transform: translateX(-100%);
    }
    100% {
      transform: translateX(0%);
    }
}



/* scroll-images */
.scroll-images {
    background: url(../img/images-bg.png) no-repeat center top / cover;
    padding: 104px 8% 0 8%;
}
.scroll-list {
    position: relative;
    width: 100%;
    height: 650px;
    overflow: hidden;
}

.scroll-list img {
    width: 100%;
    object-fit: cover;
    border-radius: 30px;
}

.scroll-item:nth-child(1) {
    position: absolute;
    top: 21px;
    left: 0;
    width: 37%;
}
.scroll-item:nth-child(2) {
    position: absolute;
    top: 274px;
    left: 20%;
    width: 29%;
    z-index: 10;
    overflow: hidden;
    border-radius: 30px;
}
.scroll-item:nth-child(2) img {
    transform: scale(1.4);
    object-position: top left;
    position: relative;
    left: 53px;
}
@media screen and (max-width: 768px) {
    .scroll-item:nth-child(2) img {
        transform: scale(1.7);
    }
}
.scroll-item:nth-child(3) {
    position: absolute;
    top: 140px;
    right: 25%;
    width: 33%;
}
.scroll-item:nth-child(4) {
    position: absolute;
    top: 0;
    right: 0;
    width:27%;
}

.working-txt__content img {
    display: none;
}


/* .scroll-list::before {
    content: "";
    display: block;
    padding-top: calc(5 / 14 * 100%);
}

.scroll-list li {
    position: absolute;
    height: auto;
    width: 40%;
    margin: 0;
}

.scroll-item img {
    width: 100%;
    object-fit: cover;
    border-radius: 30px;
    opacity: 0;
    /* animation: fade-bubble 12s infinite forwards;
}*/




/* 画像の位置とサイズ(*5)
.scroll-list li:nth-of-type(1) {
    top: 0;
    left: 0;
}
.scroll-list li:nth-of-type(2) {
    left: 50%;
    bottom: -10%;
    transform: translateX(-50%);
    width: 35%;
}
.scroll-list li:nth-of-type(3) {
    right: 0;
    top: 10%;
}
.scroll-list li:nth-of-type(4) {
    left: 0;
    bottom: 10%;
}
.scroll-list li:nth-of-type(5) {
    left: 50%;
    top: -10%;
    transform: translateX(-50%);
    width: 35%;
}
.scroll-list li:nth-of-type(6) {
    right: 0;
    bottom: 0;
} */

/* 画像表示タイミング(*6)
.scroll-list li:nth-of-type(1) img {
    animation-delay: 0s;
}
.scroll-list li:nth-of-type(2) img {
    animation-delay: 2s;
}
.scroll-list li:nth-of-type(3) img {
    animation-delay: 4s;
}
.scroll-list li:nth-of-type(4) img {
    animation-delay: 6s;
}
.scroll-list li:nth-of-type(5) img {
    animation-delay: 8s;
}
.scroll-list li:nth-of-type(6) img {
    animation-delay: 10s;
} */


/* アニメーション設定(*7)
@keyframes fade-bubble {
    0% {
        transform: scale(90%);
        opacity: 0;
    }
    20% {
        transform: scale(100%);
        opacity: 1;
    }
    40% {
        transform: scale(100%);
    }
    45% {
        opacity: 1;
    }
    55% {
        opacity: 0;
    }
} */


/* working sp */
@media screen and (max-width: 768px) {
    .working-txt-box {
        background: url(../img/sp-working-bg.png) no-repeat center top / cover;
        padding: 60px 8.5% 0 8.5%;
        flex-direction: column;
        gap: 32px;
    }

    .working-txt {
        width: 100%;
    }

    .working-txt p {
        margin-top: 32px;
        font-size: 1.6rem;
    }

    .working-txt__img {
        width: 100%;
        margin-top: 32px;
    }

    .working-txt__img img {
        margin-top: 0;
    }

    /* scroll-txt-container */
    .double-content {
        font-size: 6rem;
        margin-right: 20px;
    }

    /* scroll-images sp */
    .scroll-images {
        padding-top: 0;
    }

    .scroll-item img {
        border-radius: 20px;
    }

    .scroll-item:nth-child(1) {
        position: absolute;
        top: 150px;
        left: 0;
        width: 50%;
        z-index: 10;
    }
    .scroll-item:nth-child(2) {
        position: absolute;
        top: 480px;
        left: 0;
        width: 50%;
        z-index: 10;
    }
    .scroll-item:nth-child(3) {
        position: absolute;
        top: 320px;
        right: 0;
        width: 60%;
    }
    .scroll-item:nth-child(4) {
        position: absolute;
        top: 0;
        right: 0;
        width:60%;
    }

    .working-txt__content img {
        display: block;
        margin-top: 40px;
        border-radius: 30px;
    }

    .working-txt__img {
        display: none;
    }

    .working-txt__content p:last-child {
        margin-top: 20px;
    }
}



/* sp 768px */

/* ----------------------------------------------------------
movie
---------------------------------------------------------- */
.movie {
    width: 100%;
    padding: 104px 8.5%;
    background-color: #EFFFE2;
    text-align: center;
}

.movie-title {
    padding: 104px 0;
}

.mv__bg {
    width: 80%;
    margin: 58px auto 0 auto;
}

video {
    width: 100%;
}

@media screen and (max-width: 768px) {
    .movie {
        padding: 0 8.5% 80px 8.5%;
    }

    .movie-title {
        padding: 0 0;
    }

    .mv__bg {
        margin-top: 40px;
        width: 100%;
    }

}


/* ----------------------------------------------------------
entry
---------------------------------------------------------- */
.entry {
    padding: 104px 8.5%;
    background: url(../img/jobdescription-bg.png) no-repeat center top / cover;
    text-align: center;
    position: relative;
}

.entry::after {
    content: '';
    display: block;
    width: 100%;
    height: 265px;
    background: url(../img/jobdescription-bg-bottom.png) no-repeat center / cover;
    position: absolute;
    bottom: -265px;
    left:0;
}

.entry dl {
    margin-top: 104px;
}
@media screen and (min-width: 769px) {
    .entry dl {
        max-width: 70%;
        margin-inline: auto;
    }
}

.entry dl {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

.entry dt {
    width:35%;
    font-size: 2.4rem;
    font-weight: 500;
    color: #FAFAFA;
    background-color: #006428;
    text-align: left;
    padding: 20px 0 20px 30px;
}

.entry dt:first-child {
    border-top: 1px solid var(--primary-green);
    border-left: 1px solid var(--primary-green);
    border-bottom: 1px solid #fafafa;
}

.entry dd {
    width: 65%;
    font-size: 2.4rem;
    font-weight: 500;
    background-color: #fafafa;
    text-align: left;
    padding: 20px 0 20px 20px;
    border: 1px solid var(--primary-green);
}


.entry dd:last-child {
    border-top: none;
}

/* .button-box {
    margin-top: 104px;
}

.button a {
    font-family: "Zen Kaku Gothic New";
    font-size: 3rem;
    background-color: var(--primary-green);
    color: #fafafa;
    border-radius: 53px;
    border: 2px solid var(--primary-green);
    text-align: center;
    width: 100%;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    line-height: 91%;
    transition: .4s;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
    z-index: 1;
    font-weight: 700;
}

.lg a {
    background-color: var(--primary-lightgreen);
    border: 2px solid var(--primary-lightgreen);
    margin-top: 27px;
}


.button a::before {
    content: '';
    width: 100%;
    height: 100%;
    background-color: #FAFAFA;
    position: absolute;
    left: -100%;
    top: 0;
    transition: .4s;
    z-index: -1;
}

.button a:hover {
    color: var(--primary-green);
    border: 2px solid var(--primary-green);
}

.button a:hover::before {
    left: 0;
}

.button a::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 10px solid var(--primary-white);
    border-right: 0;
    position: absolute;
    right: 45px;
    top: 50%;
    transform: translateY(-50%);
  }

.button a:hover::after {
    border-left: 10px solid var(--primary-green);
}

.lg a:hover::after {
    border-left: 10px solid var(--primary-lightgreen);
} */


/* entry sp */
@media screen and (max-width: 768px) {
    .entry {
        padding: 0 8.5% 0 8.5%;

    }
    /* .button a {
        font-size: 2rem;
        width: 100%;
        height: 60px;
        margin: 0 auto;
    }

    .lg a {
        margin-top: 40px;
    }

    .entry::after {
        height: 150px;
        bottom: -150px;
    }

    .button-box {
        margin-top: 40px;
    }

    .lg a {
        margin-top: 20px;
    } */

    .entry dl {
        margin-top: 32px;
    }

    .entry dt {
        font-size: 1.6rem;
        padding: 10px 0 10px 10px;
    }

    .entry dd {
        width: 65%;
        font-size: 1.6rem;
        padding: 10px 0 10px 10px;
    }

}
/* sp 768px */

/* ----------------------------------------------------------
inqiry
---------------------------------------------------------- */
.inqiry {
    margin-top: 100px;
    text-align: center;
    padding: 56px 8.5% 104px 8.5%;
}

.inqiry .inqiry-title {
    padding: 104px 0;
    background: url(../img/inqiry-title-bg.png) no-repeat center top / cover;
}

.inqiry dl {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
@media screen and (min-width: 769px) {
    .inqiry dl {
        max-width: 70%;
        margin-inline: auto;
    }
}

.inqiry dt {
    width:35%;
    font-size: 2.4rem;
    font-weight: 500;
    color: #FAFAFA;
    background-color: #006428;
    text-align: left;
    padding: 20px 0 20px 30px;
    border-bottom: 1px solid var(--primary-white);
}

.inqiry dt:nth-of-type(1){
    border-top: 1px solid var(--primary-green);
}
.inqiry dt:nth-of-type(8){
    border-bottom: 1px solid var(--primary-green);
}

.inqiry dd {
    width: 65%;
    font-size: 2.4rem;
    font-weight: 500;
    background-color: #fafafa;
    text-align: left;
    padding: 20px 0 20px 20px;
    border-bottom: 1px solid var(--primary-green);
    border-right: 1px solid var(--primary-green);
}

.inqiry dd:nth-of-type(1){
    border-top: 1px solid var(--primary-green);
}


/* .inqiry p.inqury-txt {
    margin-top: 62px;
    background-color: #E4F3EA;
    padding: 32px 48px;
    font-size: 2.4rem;
    text-align: left;
    line-height: 1.5;
    border-radius: 30px;
    position: relative;
}

.inqiry p.inqury-txt::after {
    content: '';
    display: block;
    width: 22px;
    height: 32px;
    background: url(../img/arrow.png) no-repeat center / contain;
    position: absolute;
    bottom: -32px;
    left: 50%;
    transform: translateX(-50%);
}

.inqiry img {
    width: 175px;
    object-fit: cover;
    margin-top: 88px;
}

.inqiry ul {
    margin-top: 62px;
    padding: 0;
    width: fit-content;
    margin: 62px auto;
}

.inqiry li {
    text-align: left;
    font-size: 2.4rem;
    margin-top: 24px;
    position: relative;
    padding-left: 56px;
}

.inqiry li a{
    position: relative;
    display: inline-block;
}

.inqiry li a::after {
    background-color: var(--primary-green);
    bottom: 0;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform .3s;
    width: 100%;
}

.inqiry li a:hover::after {
    transform: scale(1, 1);
}

.inqiry li:nth-of-type(1):before {
    content: '';
    display: block;
    width: 40px;
    height: 40px;
    background: url(../img/icon-mail.svg) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left:0;
    transform: translateY(-50%);
}
.inqiry li:nth-of-type(2):before {
    content: '';
    display: block;
    width: 40px;
    height: 40px;
    background: url(../img/icon-phone.svg) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left:0;
    transform: translateY(-50%);
}
.inqiry li:nth-of-type(3):before {
    content: '';
    display: block;
    width: 40px;
    height: 40px;
    background: url(../img/icon-time.svg) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left:0;
    transform: translateY(-50%);
}
.inqiry li:nth-of-type(4):before {
    content: '';
    display: block;
    width: 40px;
    height: 40px;
    background: url(../img/icon-adress.svg) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left:0;
    transform: translateY(-50%);
}

.inqiry li:first-child {
    margin-top: 0;
}

.map {
    width: 80%;
    margin: 80px auto 0 auto;
}

.map iframe {
    width: 100%;
} */

/* inqiry sp */
@media screen and (max-width: 768px) {
    .inqiry {
        margin-top: 150px;
        padding: 0 8.5% 0 8.5%;
    }

    .inqiry .inqiry-title {
        padding: 40px 0;
    }

    .inqiry dt {
        width:35%;
        font-size:1.6rem;
        padding: 10px 0 10px 10px;
    }

    .inqiry dd {
        width: 65%;
        font-size: 1.6rem;
        padding: 10px 0 10px 10px;
    }


    /* .inqiry p.inqury-txt {
        margin-top: 0;
        padding: 32px 48px;
        font-size: 1.6rem;
    }

    .inqiry li {
        text-align: left;
        font-size: 1.6rem;
        margin-top: 24px;
        position: relative;
        padding-left: 36px;
    }

    .inqiry li:nth-of-type(1):before {
        width: 20px;
        height: 20px;
    }
    .inqiry li:nth-of-type(2):before {
        width: 20px;
        height: 20px;
    }
    .inqiry li:nth-of-type(3):before {
        width: 20px;
        height: 20px;
    }
    .inqiry li:nth-of-type(4):before {
        width: 20px;
        height: 20px;
    }

    .map {
        width: 100%;
        margin: 56px auto 0 auto;
    }

    .map iframe {
        width: 100%;
    } */
}
/* sp 768px */

/* ----------------------------------------------------------
footer
---------------------------------------------------------- */
.footer {
    padding: 80px 4.4%;
    text-align: center;
}

.footer-logo img {
    width: 271px;
    object-fit: cover;
}

.nav-footer ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    font-size: 1.4rem;
    margin-top: 32px;
}

.nav-footer ul li {
    margin-right: 30px;
}

.nav-footer ul li:last-child {
    margin-right: 0;
}

.nav-footer ul a {
    display: inline-block;
    position: relative;
}

.privacy a::after,
.nav-footer ul a::after {
    background-color: var(--primary-green);
    bottom: 0;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transform: scale(0, 1); /* 下線を横方向に0倍、縦方向に1倍に変形（非表示） */
    transform-origin: left top; /* 変形の原点を左上に指定 */
    transition: transform .3s; /* 変形をアニメーション化 */
    width: 100%; /* 要素の幅 */
}

.privacy a:hover::after,
.nav-footer ul a:hover::after {
    transform: scale(1, 1); /* 下線を横方向に1倍、縦方向に1倍に変形（表示） */
}

.copy-box {
    margin-top: 80px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1.4rem;
    border-top: 1px solid var(--primary-green);
    padding-top: 33px;
}

.privacy a{
    margin-left: 24px;
    display: inline-block;
    position: relative;
}

.privacy a::after {
    background-color: var(--primary-green);
    bottom: 0;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transform: scale(0, 1); /* 下線を横方向に0倍、縦方向に1倍に変形（非表示） */
    transform-origin: left top; /* 変形の原点を左上に指定 */
    transition: transform .3s; /* 変形をアニメーション化 */
    width: 100%; /* 要素の幅 */
}

.privacy a:hover::after {
    transform: scale(1, 1); /* 下線を横方向に1倍、縦方向に1倍に変形（表示） */
}

/* footer sp */
@media screen and (max-width: 768px) {
    .footer {
        padding: 80px 13.8%;
    }

    .nav-footer ul {
        flex-direction: column;
        width: fit-content;
        align-items: flex-start;
        margin: 32px auto 0 auto;
    }

    .copy-box {
        margin-top: 56px;
        flex-direction: column;
        gap: 24px;
    }
}