@charset "UTF-8";

@keyframes fadeIn {

0% {
    opacity: 0;
    transform: translateY(-10px);
}

100% {
    opacity: 1;
    transform: none;
}

}

@keyframes scroll-left {

from {
    transform: translateX(0);
}

to {
    transform: translateX(-100%);
}

}


/* ========================================
   @media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px),print {
.p-page__ttl {
    padding-block: 180px 0;
}

.p-page__ttl .p-page__ttl-en {
    margin-bottom: -23px;
    text-align: center;
}

.p-page__ttl .p-page__ttl-ja {
    background: #1A1A1A;
    color: #ffffff;
    font-size: 28.8px;
    font-weight: 400;
    letter-spacing: 1.442px;
    line-height: 1.6006944444;
    margin-bottom: -29px;
    margin-inline: auto;
    padding: 2px 74px;
    position: relative;
    text-align: center;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 1;
}

.p-page__ttl .p-page__ttl-con {
    border-bottom: 6px solid #1A1A1A;
    border-top: 6px solid #1A1A1A;
}

.p-page__ttl .p-page__ttl-con-inner {
    align-items: center;
    display: grid;
    grid-template-columns: 513px minmax(0, 1fr);
    justify-content: flex-end;
    margin-left: auto;
    width: min(95%, 1510px);
}

.p-page__ttl .p-page__ttl-con-left h3 {
    font-size: 49px;
    font-weight: 800;
    letter-spacing: 3.43px;
    line-height: 1.6;
    margin-bottom: 23px;
}

.p-page__ttl .p-page__ttl-con-left p {
    font-size: 16px;
    font-weight: 350;
    letter-spacing: 0.8px;
    line-height: 1.875;
}

.p-page__ttl .slick-slider .slick-track,
.p-page__ttl .slick-slider .slick-list {
    margin-bottom: 0;
}

.p-style {
    background: url(../images/jobs/style_bg.jpg) repeat top center/contain;
    margin-inline: auto;
    max-width: 1920px;
    padding-block: 20px 0;
    width: 100%;
}

.p-style .p-style__en-loop {
    margin-bottom: 85px;
}

.p-style .p-style__en-loop-wrap {
    align-items: center;
    display: flex;
    gap: 0 16px;
    width: 7056px;
}

.p-style .p-style__en-slider {
    animation: scroll-left 60s linear infinite;
}

.p-style .p-style__items {
    display: grid;
    gap: 89px 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    width: min(95%, 1285px);
}

.p-style .p-jobs__item {
    background: #FFF;
    border: 4px solid #E94A08;
}

.p-style .p-jobs__item-top {
    display: grid;
    grid-template-columns: 552px minmax(0, 1fr);
    margin-block: 0 -2px;
}

.p-style .p-jobs__item-top-img {
    position: relative;
}

.p-style .p-jobs__item-top-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.p-style .p-jobs__item-top-img p {
    bottom: -16px;
    color: #ffffff;
    font-size: 112px;
    font-weight: 700;
    left: 14px;
    letter-spacing: 0px;
    line-height: 1;
    position: absolute;
}

.p-style .p-jobs__item-top-con {
    background: rgba(255, 255, 255, 0.85);
    padding: 61px 58px 40px;
}

.p-style .p-jobs__item-top-con-ttl {
    align-items: center;
    display: flex;
    gap: 0 20px;
    margin-bottom: 6px;
}

.p-style .p-jobs__item-top-con-ttl h3 {
    font-size: 35px;
    font-weight: 800;
    letter-spacing: 0px;
    line-height: 1.6;
}

.p-style .p-jobs__item-top-con-ttl h3.style04 {
    white-space: nowrap;
}

.p-style .p-jobs__item-top-con-ttl div {
    align-items: center;
    display: flex;
    gap: 0 28px;
}

.p-style .p-jobs__item-top-con-ttl div .icon.style01 {
    position: relative;
    right: 0;
    top: -9px;
}

.p-style .p-jobs__item-top-con-ttl div .icon.style02 {
    position: relative;
    right: 0;
    top: 5px;
}

.p-style .p-jobs__item-top-con-ttl div .icon.style03 {
    position: relative;
    right: 0;
}

.p-style .p-jobs__item-top-con-ttl div .icon.style04 {
    position: relative;
    right: 17px;
    top: -10px;
}

.p-style .p-jobs__item-top-con-ttl div .icon.style05 {
    position: relative;
    right: 0;
}

.p-style .p-jobs__item-top-con-ttl div .icon.style06 {
    position: relative;
    right: 8px;
    top: -6px;
}

.p-style .p-jobs__item-top-txt {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.8px;
    line-height: 1.875;
    margin-bottom: 21px;
}

.p-style .p-jobs__item-top-fukidashi {
    background: #FFEC0A;
    border-radius: 10px;
    box-shadow: 6px 6px 0 0 #FFF;
    padding: 7px 20px;
    position: relative;
}

.p-style .p-jobs__item-top-fukidashi p {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.8px;
    line-height: 1.875;
}

.p-style .p-jobs__item-top-fukidashi:before {
    background: url(../images/jobs/fukidashi.svg) no-repeat center center/contain;
    content: "";
    height: 24.5px;
    left: -20px;
    position: absolute;
    top: 26.7px;
    width: 24.5px;
}

.p-style summary {
    display: block;
}

.p-style summary::-webkit-details-marker {
    display: none;
}

.p-style .p-jobs__item-bottom-watch-ttl {
    position: relative;
    text-align: center;
    display: block;
}

.p-style .p-jobs__item-bottom-watch-ttl::after {
    background: url(../images/jobs/plus.svg) no-repeat center center/contain;
    content: "";
    height: 42px;
    position: absolute;
    right: 28px;
    top: 50%;
    translate: 0 -50%;
    width: 40px;
}

.p-style details[open] .p-jobs__item-bottom-watch-ttl::after {
    background: url(../images/jobs/plus02.svg) no-repeat center center/contain;
}

.p-style .p-jobs__item-bottom-watch[open] .p-jobs__item-bottom-schedule-con {
    animation: fadeIn 0.5s ease;
}

.p-style .p-jobs__item-bottom-watch-txt {
    background: #FF6708;
    color: #ffffff;
    display: block;
    font-size: 24px;
    font-weight: 800;
    letter-spacing: 1.2px;
    line-height: 1.6;
    padding: 27px 30px;
    position: relative;
}

.p-style .p-jobs__item-bottom-schedule-con {
    display: grid;
    gap: 0 60px;
    grid-template-columns: minmax(0, 1fr) 400px;
    padding: 60px 60px;
}

.p-style .p-jobs__item-bottom-schedule {
    display: grid;
    gap: 17px 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-style .p-jobs__item-bottom-schedule li {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    font-size: 20px;
    font-weight: 400;
    gap: 0 46px;
    letter-spacing: 1px;
    line-height: 1.4;
}

.p-style .p-jobs__item-bottom-schedule li time span {
    color: #FF6708;
}

.p-style .p-jobs__item-bottom-schedule li span {
    color: #FF6708;
}

.p-jobs__loop {
    background: #FFF8E9;
    padding-block: 153px 0;
}

.p-jobs__loop .p-jobs__loop-wrap {
    align-items: center;
    display: flex;
    gap: 0 30px;
    width: 200%;
}

.p-jobs__loop .p-jobs__slider {
    animation: scroll-left 60s linear infinite;
}

.p-bnr {
    background: #FFF8E9;
}

.p-bnr .l-inner.l-bnr {
    margin-inline: auto;
    padding-block: 128px 119px;
    width: min(95%, 1280px);
}

.p-bnr .p-bnr__ttl {
    font-size: 38px;
    font-weight: 800;
    letter-spacing: 1.9px;
    line-height: 1.6;
    margin-bottom: 32px;
    margin-inline: auto;
    padding-inline: 60px;
    position: relative;
    text-align: center;
    width: -moz-fit-content;
    width: fit-content;
}

.p-bnr .p-bnr__ttl:before {
    background: url(../images/jobs/line.svg) no-repeat center center/contain;
    bottom: 7px;
    content: "";
    height: 107px;
    left: -6px;
    position: absolute;
    width: 41px;
}

.p-bnr .p-bnr__ttl:after {
    background: url(../images/jobs/line.svg) no-repeat center center/contain;
    bottom: 5px;
    content: "";
    height: 107px;
    position: absolute;
    right: -7px;
    transform: scale(-1, 1);
    width: 41px;
}

.p-bnr .p-bnr__items {
    display: grid;
    gap: 0 20px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.p-bnr .p-bnr__item a {
    display: block;
}

@media (any-hover: hover) {

    .p-style .p-jobs__item-bottom-watch-ttl:hover {
        cursor: pointer;
    }
    
    }
    
}



/* ========================================
   @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {
.p-page__ttl {
    padding-block: 14.493vw 8.077vw;
}

.p-page__ttl .p-page__ttl-en {
    margin-bottom: -1.522vw;
    text-align: center;
}

.p-page__ttl .p-page__ttl-ja {
    background: #1A1A1A;
    color: #ffffff;
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0.193vw;
    line-height: 1.6;
    margin-bottom: -5.449vw;
    margin-inline: auto;
    padding: 0px 2.415vw;
    position: relative;
    text-align: center;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 1;
}

.p-page__ttl .p-page__ttl-con {
    border: none;
}

.p-page__ttl .p-page__ttl-con-inner {
    display: grid;
    /* gap: 9.662vw 0; */
    grid-template-columns: repeat(1, minmax(0, 1fr));
    width: 100%;
}

.p-page__ttl .p-page__ttl-con-left {
    order: 2;
    padding: 6.662vw 7.246vw 0.662vw;
}

.p-page__ttl .p-page__ttl-con-left h3 {
    font-size: 5.797vw;
    font-weight: 800;
    letter-spacing: 0.406vw;
    line-height: 1.6;
    margin-bottom: 0.797vw;
}

.p-page__ttl .p-page__ttl-con-left p {
    font-size: 3.865vw;
    font-weight: 350;
    letter-spacing: 0px;
    line-height: 1.875;
}

.p-page__ttl .p-page__ttl-con-right {
    border-bottom: 6px solid #1A1A1A;
    border-top: 6px solid #1A1A1A;
    order: 1;
}

.p-page__ttl .slick-slider .slick-track,
.p-page__ttl .slick-slider .slick-list {
    margin-bottom: 0;
}

.p-style {
    background: url(../images/jobs/style_bg.jpg) repeat top center/contain;
    margin-inline: auto;
    max-width: 100%;
    padding-block: 1.831vw 0;
    width: 100%;
}

.p-style .p-style__en-loop {
    margin-bottom: 13.976vw;
}

.p-style .p-style__en-loop-wrap {
    align-items: center;
    display: flex;
    gap: 0 3.865vw;
    width: 1136.232vw;
}

.p-style .p-style__en-slider {
    animation: scroll-left 60s linear infinite;
}

.p-style .p-style__items {
    display: grid;
    gap: 7.662vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    width: min(95%, 91.338164vw);
}

.p-style .p-jobs__item {
    background: #FFF;
    border: 4px solid #E94A08;
}

.p-style .p-jobs__item-top {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-style .p-jobs__item-top-con {
    background: rgba(255, 255, 255, 0.85);
    padding: 8.662vw 4.831vw;
}

.p-style .p-jobs__item-top-con-ttl {
    display: grid;
    gap: 0vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: 0vw;
}

.p-style .p-jobs__item-top-con-ttl.style04 {
    margin-bottom: 8vw;
}

.p-style .p-jobs__item-top-con-ttl h3 {
    font-size: 7.246vw;
    font-weight: 800;
    letter-spacing: 0px;
    line-height: 1.6;
}

.p-style .p-jobs__item-top-con-ttl h3.style04 {
    white-space: nowrap;
}

.p-style .p-jobs__item-top-con-ttl .icon.style01 img {
    height: auto;
    width: 13.111vw;
}

.p-style .p-jobs__item-top-con-ttl .icon.style02 img {
    height: auto;
    width: 14.111vw;
}

.p-style .p-jobs__item-top-con-ttl .icon.style03 img {
    height: auto;
    width: 12.111vw;
}

.p-style .p-jobs__item-top-con-ttl .icon.style04 {
    left: 24.155vw;
    position: relative;
    top: -15.459vw;
}

.p-style .p-jobs__item-top-con-ttl .icon.style04 img {
    height: auto;
    width: 11.111vw;
}

.p-style .p-jobs__item-top-con-ttl .icon.style05 img {
    height: auto;
    width: 11.111vw;
}

.p-style .p-jobs__item-top-con-ttl .icon.style06 img {
    height: auto;
    width: 14.111vw;
}

.p-style .p-jobs__item-top-con-ttl div {
    display: flex;
    gap: 0 2.415vw;
}

.p-style .p-jobs__item-top-con-ttl div.style04 {
    display: grid;
    gap: 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-bottom: -7.729vw;
}

.p-style .p-jobs__item-top-con-ttl .icon.style01 {
    position: relative;
    top: -4vw;
    right: 0;
} 

.p-style .p-jobs__item-top-con-ttl .icon.style02 {
    position: relative;
    top: 0;
    right: -1vw;
} 

.p-style .p-jobs__item-top-con-ttl .icon.style03 {
    position: relative;
    top: -4vw;
    right: -3vw;
} 

.p-style .p-jobs__item-top-con-ttl .icon.style04 {
    position: relative;
    top: -21vw;
    right: 0;
} 

.p-style .p-jobs__item-top-con-ttl .icon.style05 {
    position: relative;
    top: 0;
    right: 0;
} 

.p-style .p-jobs__item-top-con-ttl .icon.style06 {
    position: relative;
    top: -5vw;
    right: -9vw;
} 

.p-style .p-jobs__item-top-txt {
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0.193vw;
    line-height: 1.875;
    margin-bottom: 5.246vw;
}

.p-style .p-jobs__item-top-fukidashi {
    background: #FFEC0A;
    border-radius: 2.415vw;
    box-shadow: 6px 6px 0 0 #FFF;
    padding: 3.5vw 3.831vw;
    position: relative;
}

.p-style .p-jobs__item-top-fukidashi p {
    font-size: 3.865vw;
    font-weight: 400;
    letter-spacing: 0.193vw;
    line-height: 1.6;
}

.p-style .p-jobs__item-top-fukidashi:before {
    background: url(../images/jobs/fukidashi_sp.svg) no-repeat center center/contain;
    content: "";
    height: 5.918vw;
    left: 5.382vw;
    position: absolute;
    top: -4.517vw;
    width: 5.918vw;
}

.p-style summary {
    display: block;
}

.p-style summary::-webkit-details-marker {
    display: none;
}

.p-style .p-jobs__item-bottom-watch-ttl {
    position: relative;
    text-align: left;
    display: block;
}

.p-style .p-jobs__item-bottom-watch-ttl::after {
    background: url(../images/jobs/plus.svg) no-repeat center center/contain;
    content: "";
    height: 10.145vw;
    position: absolute;
    right: 6.899vw;
    top: 50%;
    translate: 0 -50%;
    width: 9.662vw;
}

.p-style details[open] .p-jobs__item-bottom-watch-ttl::after {
    background: url(../images/jobs/plus02.svg) no-repeat center center/contain;
}

.p-style .p-jobs__item-bottom-watch[open] .p-jobs__item-bottom-schedule-con {
    animation: fadeIn 0.5s ease;
}

.p-style .p-jobs__item-bottom-watch-txt {
    background: #FF6708;
    color: #ffffff;
    display: block;
    font-size: 4.831vw;
    font-weight: 800;
    letter-spacing: 0.242vw;
    line-height: 1.6;
    padding: 2.831vw 7.246vw;
}

.p-style .p-jobs__item-bottom-schedule-con {
    display: grid;
    gap: 7.246vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    padding: 7.246vw 4.831vw;
}

.p-style .p-jobs__item-bottom-schedule {
    display: grid;
    gap: 1.208vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-style .p-jobs__item-bottom-schedule li {
    font-size: 3.865vw;
    font-weight: 400;
    gap: 0 6.865vw;
    letter-spacing: 0.193vw;
    display: grid;
    grid-template-columns: 14.7vw minmax(0, 1fr);
    line-height: 1.6;
}

.p-style .p-jobs__item-bottom-schedule li time span {
    color: #FF6708;
}

.p-style .p-jobs__item-bottom-schedule li span {
    color: #FF6708;
}

.p-jobs__loop {
    background: #FFF8E9;
    padding-block: 17.324vw 0;
}

.p-jobs__loop .p-jobs__loop-wrap {
    align-items: center;
    display: flex;
    gap: 0 3.623vw;
    width: 789.372vw;
}

.p-jobs__loop .p-jobs__slider {
    animation: scroll-left 60s linear infinite;
}

.p-bnr {
    background: #FFF8E9;
}

.p-bnr .l-inner.l-bnr {
    margin-inline: auto;
    padding-block: 7.662vw 14.493vw;
    width: min(95%, 90.3381642512vw);
}

.p-bnr .p-bnr__ttl {
    font-size: 4.348vw;
    font-weight: 800;
    letter-spacing: 0.217vw;
    line-height: 1.4;
    margin-bottom: 6.246vw;
    margin-inline: auto;
    padding-inline: 12.493vw;
    position: relative;
    text-align: center;
    width: -moz-fit-content;
    width: fit-content;
}

.p-bnr .p-bnr__ttl:before {
    background: url(../images/jobs/line_sp.svg) no-repeat center center/contain;
    bottom: 0;
    content: "";
    height: 23.256vw;
    left: 2vw;
    position: absolute;
    width: 6.314vw;
}

.p-bnr .p-bnr__ttl:after {
    background: url(../images/jobs/line_sp.svg) no-repeat center center/contain;
    bottom: 0;
    content: "";
    height: 23.256vw;
    position: absolute;
    right: 2vw;
    transform: scale(-1, 1);
    width: 6.314vw;
}

.p-bnr .p-bnr__items {
    display: grid;
    gap: 2.415vw 0;
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-bnr .p-bnr__item a {
    display: block;
}

}
