@charset "UTF-8";
body #carees-page, #carees-page h1,h2,h3,h4,h5,h6{font-family:'Noto Sans JP', sans-serif;}
.link-btn{font-family:'Noto Serif JP';}
.mx-auto{margin:0 auto;}
.py-1{padding-top:1rem;padding-bottom:1rem;}.py-2{padding-top:2rem;padding-bottom:2rem;}

h2.black-tit{background-color:var(--color__black);color:var(--color__white);text-align:center;width:fit-content;padding:0.5rem;margin:0 auto;margin-bottom:1rem;}

.f-size__s{font-size:var(--fs-s);}

.f-color__blue{color:var(--color__blue);}
.f-color__white{color:var(--color__white);}
.border-btm__gary{border-bottom:var(--color__gray) solid 1px;}

.check-icon{display:inline-flex;align-items:center;gap:8px;font-weight:bold;color:var(--color__blue);}
.check-icon::before{content:"✔";display:inline-block;color:var(--color__blue);line-height:1;font-size:1rem;}

.point-icon{display:inline-flex;align-items:center;gap:8px;font-weight:bold;}
.point-icon::before{content:"▶";display:inline-block;color:var(--color__blue);line-height:1;font-size:0.7rem;}

.title-bg__blue{background-color:var(--color__blue);color:var(--color__white);text-align:center;width:fit-content;padding:0.2rem 0.5rem;}

.round-tit__blue{border-radius:4px;text-align:center;width:fit-content;padding:0.3rem 2rem;margin:0 auto;margin-bottom:2rem;line-height:1.5;background-color:var(--color__blue);color:var(--color__white);}

.slanted-title{padding:0.5rem 2rem;-webkit-transform:skew(-15deg);transform:skew(-15deg);color:var(--color__white);background-image:-webkit-gradient(linear, left top, right top, from(#0e3b9d), to(#2f6ffe));background-image: -webkit-linear-gradient(left, #0e3b9d 0%, #2f6ffe 100%);background-image: linear-gradient(to right, #0e3b9d 0%, #2f6ffe 100%);width:fit-content;font-family:'Noto Serif JP';}

.gradient_btm__blue{position: relative;padding: 1rem .5rem;}
.gradient_btm__blue:after {position: absolute;bottom: 0;left: 0;width: 100%;height: 6px;content: '';border-radius: 3px;background-image: -webkit-gradient(linear, right top, left top, from(#2f6ffe), to(#0e3b9d));background-image: -webkit-linear-gradient(right, #2f6ffe 0%, #0e3b9d 100%);background-image: linear-gradient(to left, #2f6ffe 0%, #0e3b9d 100%);
}

.carees-intro{background:var(--sky-blue-gradient);padding:1.5rem;}
.check-list {display:flex;flex-wrap:wrap;gap:16px;margin:0;padding:0;list-style:none;}
.check-list li {display:flex;align-items:center;width:calc(33.333% - 16px);background-color:var(--color__white);  border-radius:10px;box-shadow:0 2px 6px rgba(0,0,0,0.05);padding:1rem;}
.check-list li::before{content:"✔";color:var(--color__blue);font-weight:bold;margin-right:8px;}
@media (max-width: 768px) {.check-list li{width:100%;}}
.carees-intro__text{border:solid 1px #FFF;color:var(--color__white);padding:1rem;}

.carees-card-section{background-color:var(--color__blue);padding:1rem;}
.carees-card-section .container{max-width:1200px;margin:0 auto;padding:40px 20px;}
.card-list {display:grid;grid-template-columns:repeat(4, 1fr);gap:20px;}
.card {background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0, 0, 0, 0.08);display:flex;flex-direction:column;padding:1rem;}
.card img {width:100%;aspect-ratio:16 / 9;object-fit:cover;display:block;}
.card-content {padding:1rem 0;}
.card-title {margin:0 0 12px;font-size:20px;font-weight:bold;color: var(--color__black);}
.card-text {margin:0;line-height:1.8;}

.point-item {display:flex;flex-direction:column;gap:6px;}
.point-label{color:var(--color__blue);letter-spacing:1px;font-weight:bold;font-size:0.8rem;}
.point-main{color:var(--color__blue);display:flex;flex-direction:column;}
.point-number{font-size:var(--fs-l);font-weight:bold;color:var(--color__blue);}
.point-title{margin:0;font-size:var(--fs-l);font-weight:bold;color:var(--color__black);margin-bottom:0.5rem;}

@media screen and (max-width: 1024px) {.card-list {  grid-template-columns: repeat(2, 1fr);}}
@media screen and (max-width: 767px) {.card-list {  grid-template-columns: 1fr;}
.card img {  height: 220px;}}


.feature-item{display:flex;align-items:stretch;flex-direction:row;background:var(--color__gray);}
.feature-img{width:100%;height:50vh;flex:1;position: relative;}
.feature-img img{width:100%;height:100%;object-fit:cover;display: block;}
.feature-img__txt{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);color:white;font-weight:bold;font-size:2rem;text-shadow:2px 2px 8px rgba(0, 0, 0, 0.8);text-align:center;border:solid 1px var(--color__white);border-radius:4px;padding:1rem;}
.feature-wrap{flex:1;}
.feature-wrap h3{margin:0 0 16px;}
.feature-wrap p{margin:0;line-height:1.8;}
.feature-cont{padding:1rem 2rem;}
.feature-item.reverse{flex-direction:row-reverse;}
@media screen and (max-width:800px) {
    .feature-item, .feature-item.reverse {flex-direction:column;}
    .feature-img{height:20vh;flex:none;}
}

.chevron-list {list-style:none;padding:0;margin:0;}
.chevron-list li{display:flex;align-items:center;background:#fff;padding:16px 20px;margin-bottom:12px;box-shadow:0 2px 6px rgba(0,0,0,0.05);}
.chevron-list .icon{position:relative;width:24px;height:24px;background:var(--color__blue);border-radius:50%;margin-right:12px;flex-shrink:0;}
.chevron-list .icon::after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;border-top:2px solid #fff;border-right:2px solid #fff;transform:translate(-60%, -50%) rotate(45deg);}
.chevron-list .text {line-height:1.6;}

.salary-section {background-color:var(--color__sky-blue);}
.salary-card {padding-bottom:20px;gap:1rem;}
.salary-card img {width:240px;}
.salary-card .salary {margin:0;font-weight: bold;color:var(--color__blue);}
.salary-card .meta {margin:0;font-size:0.8rem;}
.salary-card h3.title {margin:0;border-bottom:var(--color__blue) solid 4px;color:var(--color__black);width:fit-content;}
.salary-card__btm{line-height:1.8;background:var(--color__white);padding:1rem;}
.salary-card__top{display:flex;flex-direction:column;align-items:center;}


.job-info-section {padding: 40px 20px;background: #f5f5f5;}
.job-info-section p{margin:0;}
.job-info-list {max-width: 1200px;margin: 0 auto;column-count: 2;column-gap:24px;}
.job-info-item {background: #fff;border: 2px solid var(--color__blue);padding: 18px 20px;break-inside: avoid;-webkit-column-break-inside: avoid;display: inline-block;width: 100%;box-sizing: border-box;margin-bottom:16px;}
.job-info__title {position: relative;margin: 0 0 12px;padding-left: 14px;line-height: 1.4;font-weight: bold;color:var(--color__black);}
.job-info__title::before {content: "";position: absolute;top: 0.1em;left: 0;width: 4px;height: 1.2em;background:var(--color__blue);border-radius: 2px;}
.job-info__text {margin: 0;line-height: 1.8;}
.job-info-section .job-info__list{margin:0.5rem 0;}
.job-info-section .job-info__list li{padding:0.5rem 0;}
/* SPでは1列 */
@media screen and (max-width: 767px) {.job-info-list {column-count: 1;}}

.message{background:var(--blue-gradient);}
.message__wrap{background-color:var(--color__white);padding:1rem;border-radius:8px;gap:1rem;}
.message img{width:100%;max-width:240px;aspect-ratio:16 / 9;object-fit:cover;}

.pre-application .container_inner{gap:1rem;}
.pre-app__txt{border:solid 1px var(--color__blue);flex:1;padding:1rem;}
.pre-app__title{color:var(--color__black);}
.pre-app__txt .link-btn{max-width:200px;}


.career-form__img{max-width:1024px;height:400px;margin:0 auto;padding-top:1rem;}
.career-form__img img{object-fit:cover;width:100%;height:100%;border-radius:8px;object-position: 50% 50%;}
@media screen and (max-width: 768px){
    .career-form__img{max-width:240;height:auto;padding:0;}
    .career-form__img img{border-radius:0;}
}