@charset "UTF-8";


/* mainvisual
------------------------------------------------- */
.mainvisual {
    position: relative;
    z-index: 3;
}
.mainvisual h1 {
    font-size: 0.52rem;
    font-weight: 400;
    line-height: 1.54;
    letter-spacing: 0.14em;
    color: #fff;
    position: absolute;
    left: 0;
    top: 29vw;
    opacity: 0;
}
.mainvisual.isAnimate h1 {
    animation: fadeIn 1s ease 0.3s 1 forwards;
}
.mainvisual .nami1 {
    width: 12.5178rem;
    height: 1.5rem;
    position: absolute;
    right: 50%;
    bottom: -0.8rem;
    margin-right: 1.91rem;
    z-index: 2;
}
.mainvisual .nami1 .st0 {
    fill: none;
    stroke: #fff;
    stroke-width: 200px;
    stroke-dasharray: 3000px;
    stroke-dashoffset: 3000px;
}
.mainvisual.isAnimate .nami1 .st0 {
    animation: nami 1.5s 0.3s forwards;
}
.mainvisual .nami1 #nami1 {
    mask: url(#mask-wrapper1);
}
@media screen and (max-width:750px){
.mainvisual h1 {
    font-size: 0.24rem;
    top: 40vw;
    z-index: 3;
}
.mainvisual .nami1 {
    margin-right: -30vw;
}
.mainvisual .nami1 .st0 {
    fill: none;
    stroke: #fff;
    stroke-width: 200px;
    stroke-dasharray: 3000px;
    stroke-dashoffset: 3000px;
}
.mainvisual.isAnimate .nami1 .st0 {
    animation: nami 1.5s 0.3s forwards;
}
.mainvisual .nami1 #nami1 {
    mask: url(#mask-wrapper1);
}
}


/* /job-people/people--.html
------------------------------------------------- */
/*  common  */
#contents {
    padding-top: 0;
}
.ttl1 {
    margin-bottom: 0.3rem;
}
.ttl1 b {
    font-size: 0.52rem;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0.14em;
    color: rgba(10,211,138,0.42);
}
.ttl1 span {
    display: block;
    font-size: 0.14rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.08em;
    color: #04AD70;
    padding-left: 0.45rem;
    margin-top: 0.15rem;
    position: relative;
}
.ttl1 span::before {
    content: '';
    width: 0.33rem;
    height: 0.01rem;
    background-color: #04AD70;
    position: absolute;
    left: 0.06rem;
    top: 50%;
}
.ttl2 {
    font-size: 0.3rem;
    font-weight: 500;
    line-height: 1.66;
    margin-bottom: 0.15rem;
}
.txt {
    line-height: 2.1875;
    letter-spacing: 0.04em;
}
.txt span {
    display: block;
    font-size: 0.15rem;
    line-height: 1.875;
    padding-top: 0.1rem;
}
.pic .photo {
    position: relative;
}
.pic .photo::after {
    content: '';
    width: calc(100% + 0.17rem);
    height: 100%;
    background: linear-gradient(180deg, rgba(138,253,211,1), rgba(146,245,209,0));
    border-radius: 0.15rem;
    position: absolute;
    top: 0.15rem;
    z-index: 1;
}
.pic .photo img {
    position: relative;
    z-index: 2;
}
.bg {
    background: url("../img/job-people/people_bg.jpg") center top no-repeat;
    background-size: 100% 100%;
    margin-top: -0.45rem;
    z-index: 2;
}
@media screen and (max-width:750px){
#contents {
    padding-top: 0.5rem;
}
.ttl1 {
    margin-bottom: 0.2rem;
}
.ttl1 b {
    font-size: 0.48rem;
}
.ttl1 span {
    margin-top: 0.1rem;
}
.ttl2 {
    font-size: 0.24rem;
    line-height: 1.5;
}
.txt {
    line-height: 1.75;
    letter-spacing: normal;
}
.txt span {
    line-height: 1.75;
    letter-spacing: normal;
}
.pic .photo {
    position: relative;
}
.pic .photo::after {
    content: '';
    width: calc(100% + 0.17rem);
    height: 100%;
    background: linear-gradient(180deg, rgba(138,253,211,1), rgba(146,245,209,0));
    border-radius: 0.15rem;
    position: absolute;
    top: 0.15rem;
    z-index: 1;
}
.pic .photo img {
    position: relative;
    z-index: 2;
}
.bg {
    background: url("../img/job-people/people_bg.jpg") center top no-repeat;
    background-size: 100% 100%;
    margin-top: -0.45rem;
    z-index: 2;
}
}

/*  profile  */
.profile {
    margin: 0.2rem 0 1.5rem;
    position: relative;
}
.profile .name {
    width: 4rem;
}
.profile .name h2 {
    font-size: 0.21rem;
    font-weight: 400;
    line-height: 1.45;
    margin-bottom: 0.1rem;
}
.profile .name h2 span {
    display: block;
    font-size: 0.14rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    margin-bottom: 0.05rem;
}
.profile .name h2 span::before {
    content: '■';
    color: #046AEC;
    padding-right: 0.5em;
}
.profile .name h2 span.cat2::before {
    color: #04AD70;
}
.profile .name h2 span.cat3::before {
    color: #F59131;
}
.profile .name p {
    font-size: 0.12rem;
    line-height: 1.66;
    letter-spacing: 0.04em;
}
.profile .con {
    width: 6.5rem;
    margin-top: 0.4rem;
}
.profile .con h3 {
    font-size: 0.14rem;
    font-weight: 700;
    line-height: 1.45;
    color: #0AD38A;
    letter-spacing: 0.06em;
    padding-bottom: 0.1rem;
}
.profile .con p {
    font-size: 0.14rem;
    letter-spacing: 0.04em;
    line-height: 2.14;
}
.profile .nami2 {
    width: 16.0342rem;
    height: 1.3025rem;
    position: absolute;
    left: 50%;
    top: 1.25rem;
    margin-left: -0.98rem;
    z-index: 1;
}
.profile .nami2 .st0 {
    fill: none;
    stroke: #fff;
    stroke-width: 200px;
    stroke-dasharray: 3000px;
    stroke-dashoffset: 3000px;
}
.profile.isAnimate .nami2 .st0 {
    animation: nami 1.5s 1.5s forwards;
}
.profile .nami2 #nami2 {
    mask: url(#mask-wrapper2);
}
@media screen and (max-width:750px){
.profile {
    margin: 0.2rem 0 1.5rem;
    position: relative;
}
.profile .name {
    width: 100%;
    position: relative;
}
.profile .name h2 {
    padding-left: 0.21rem;
    letter-spacing: normal;
}
.profile .name h2 span {
    margin-left: -0.21rem;
    letter-spacing: normal;
}
.profile .name p {
    letter-spacing: normal;
    position: absolute;
    left: 40vw;
    bottom: 0;
}
.profile .con {
    width: 100%;
    margin-top: 0.3rem;
}
.profile .con p {
    font-size: 0.14rem;
    letter-spacing: normal;
    line-height: 1.75;
}
.profile .nami2 {
    top: 1.75rem;
    margin-left: -1.2rem;
    z-index: 1;
}
}

/*  cont1  */
.cont1 {
    margin-bottom: 0.9rem;
    position: relative;
}
.cont1 .con {
    width: 46.36%;
}
.cont1 .pic {
    width: 48vw;
    margin-left: calc(5.5rem - 50cqw);
}
.cont1 .pic ul li:nth-child(1) {
    margin-bottom: 0.65rem;
}
.cont1 .pic ul li .photo img {
    border-radius: 0 0.15rem 0.15rem 0;
}
.cont1 .pic ul li .photo::after {
    right: -0.17rem;
}
@media screen and (max-width:750px){
.cont1 {
    margin-bottom: 0.7rem;
}
.cont1 .con {
    width: 100%;
    margin-bottom: 0.3rem;
}
.cont1 .pic {
    width: 90vw;
    margin-left: -5vw;
}
.cont1 .pic ul li:nth-child(1) {
    margin-bottom: 0.25rem;
}
}

/*  cont2  */
.cont2 {
    margin-bottom: 1rem;
}
@media screen and (max-width:750px){
.cont2 {
    margin-bottom: 0.7rem;
}
}

/*  oneday  */
.oneday {
    background-color: #C6F5E4;
    border-radius: 0.22rem;
    padding: 0.75rem 0 1.5rem;
    position: relative;
    z-index: 3;
}
.oneday h4 {
    font-size: 0.3rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.14em;
    color: rgba(10,211,138,0.74);
    margin-bottom: 0.53rem;
}
.oneday .oneday-slider {
    overflow: visible;
    position: relative;
    cursor: grab;
}
.oneday .oneday-slider::before {
    content: '';
    width: 100vw;
    height: 100%;
    background: #C6F5E4;
    position: absolute;
    right: 100%;
    top: 0;
    z-index: 3;
}
.oneday .oneday-slider::after {
    content: '';
    width: 100vw;
    height: 100%;
    background: linear-gradient(180deg, #fff 0%, #fff 20%, #0AD38A 55%, #04AD70 100%);
    border-radius: 0.22rem;
    position: absolute;
    left: 0;
    top: 0;
}
.oneday .oneday-slider .swiper-slide {
    width: 3.32rem;
    position: relative;
    z-index: 2;
}
.oneday .oneday-slider .swiper-slide::after {
    content: '';
    width: 0.01rem;
    height: 86%;
    background-color: rgba(113,111,111,0.32);
    position: absolute;
    right: 0;
    top: 7%;
}
.oneday .oneday-slider .swiper-slide .con {
    padding: 0.3rem 0.35rem 0.2rem;
    color: #fff;
    position: relative;
}
.oneday .oneday-slider .swiper-slide .con dl dt {
    font-size: 0.2rem;
    font-weight: 700;
    line-height: 1;
    color: #0AD38A;
    letter-spacing: 0.14em;
    padding-bottom: 0.35rem;
}
.oneday .oneday-slider .swiper-slide .con dl dd h5 {
    font-size: 0.2rem;
    font-weight: 500;
    line-height: 1.5;
    padding-bottom: 0.15rem;
}
.oneday .oneday-slider .swiper-slide .con p {
    font-size: 0.14rem;
    line-height: 1.785;
}
.oneday .swiper-button-next,
.oneday .swiper-button-prev {
    width: 0.58rem;
    height: 0.58rem;
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: auto;
    bottom: -1.04rem;
}
.oneday .swiper-button-next {
    left: 0.7rem;
}
.oneday .swiper-button-next::after,
.oneday .swiper-button-prev::after {
    content: '';
    width: 0.12rem;
    height: 0.24rem;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213.511%22%20height%3D%2224.901%22%20viewBox%3D%220%200%2013.511%2024.901%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_14%22%20data-name%3D%22%E3%83%91%E3%82%B9%2014%22%20d%3D%22M288.874%2C3356.56l11.92%2C11.92-11.92%2C11.92%22%20transform%3D%22translate(-288.343%20-3356.03)%22%20fill%3D%22none%22%20stroke%3D%22%230ad38a%22%20stroke-width%3D%221.5%22%2F%3E%3C%2Fsvg%3E') center center no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -0.12rem 0 0 -0.06rem;
    transition: 0.4s;
}
.oneday .swiper-button-prev::after {
    transform: scale(-1, 1);
}
@media only screen and (min-width:751px){
.oneday .swiper-button-next:hover::after,
.oneday .swiper-button-prev:hover::after {
    margin-left: 0;
}
.oneday .swiper-button-prev:hover::after {
    margin-left: -0.12rem;
}
}
@media screen and (max-width:750px){
.oneday {
    padding: 0.5rem 0 1rem;
}
.oneday h4 {
    margin-bottom: 0.3rem;
}
.oneday .oneday-slider .swiper-slide {
    width: 3rem;
}
.oneday .oneday-slider .swiper-slide .con {
    padding: 0.3rem 0.25rem 0.25rem;
}
.oneday .oneday-slider .swiper-slide .con dl dt {
    font-size: 0.2rem;
    padding-bottom: 0.35rem;
}
.oneday .oneday-slider .swiper-slide .con dl dd h5 {
    font-size: 0.18rem;
}
.oneday .oneday-slider .swiper-slide .con p {
    line-height: 1.6;
}
.oneday .swiper-button-next,
.oneday .swiper-button-prev {
    width: 0.4rem;
    height: 0.4rem;
    left: 0;
    top: auto;
    bottom: -0.6rem;
}
.oneday .swiper-button-next {
    left: 0.5rem;
}
.oneday .swiper-button-next::after,
.oneday .swiper-button-prev::after {
    width: 0.1rem;
    height: 0.2rem;
    margin: -0.1rem 0 0 -0.05rem;
}
.oneday .swiper-button-prev::after {
    transform: scale(-1, 1);
}
}

/*  cont3  */
.cont3 {
    padding-top: 1.55rem;
    position: relative;
    z-index: 3;
}
.cont3 .con {
    width: 46.36%;
}
.cont3 .pic {
    width: 48vw;
    margin-right: calc(5.5rem - 50cqw);
    margin-top: 1.3rem;
}
.cont3 .pic .photo img {
    border-radius: 0.15rem 0 0 0.15rem;
}
.cont3 .pic .photo::after {
    left: -0.17rem;
}
@media screen and (max-width:750px){
.cont3 {
    padding-top: 1.2rem;
}
.cont3 .con {
    width: 100%;
    margin-bottom: 0.3rem;
}
.cont3 .pic {
    width: 90vw;
    margin: 0 0 0 5vw;
}
}

/*  cont4  */
.cont4 {
    margin: -0.5rem 0 3.45rem;
    position: relative;
    z-index: 2;
}
.cont4 .inner::before,
.cont4 .inner::after {
    content: '';
    width: 100vw;
    height: calc(100% + 0.94rem);
    background-color: #fff;
    border-radius: 0.22rem;
    position: absolute;
    left: 0;
    top: -0.52rem;
    z-index: 2;
}
.cont4 .inner::after {
    height: calc(100% + 4rem);
    background-color: rgba(255,255,255,0.56);
    left: -0.72rem;
    top: -3.1rem;
    z-index: 1;
}
.cont4 .con {
    padding-left: 0.5rem;
    position: relative;
    z-index: 5;
}
@media screen and (max-width:750px){
.cont4 {
    margin: -0.5rem 0 1.5rem;
}
.cont4 .inner::before,
.cont4 .inner::after {
    width: 100vw;
    height: calc(100% + 0.94rem);
    left: -5vw;
    top: -0.52rem;
    z-index: 2;
}
.cont4 .inner::after {
    height: calc(100% + 6rem);
    left: auto;
    right: 10vw;
    top: -5rem;
}
.cont4 .con {
    padding: 1.2rem 0 0;
}
}

/*  otherlink  */
.otherlink h4 {
    font-size: 0.14rem;
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0.06em;
    color: #0AD38A;
    text-align: center;
    margin-bottom: 0.15rem;
}
.otherlink .onav ul {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.6rem;
}
.otherlink .onav ul li {
    width: 29.27%;
}
.otherlink .onav ul li:nth-child(2) {
    margin-top: 0.65rem;
}
.otherlink .onav ul li a {
    display: block;
}
.otherlink .onav ul li a .photo {
    width: 100%;
    height: 4.37rem;
    border-radius: 0.15rem;
    margin-bottom: 0.2rem;
    overflow: hidden;
    position: relative;
}
.otherlink .onav ul li a .photo::after {
    content: '';
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,0.5) 80%, rgba(0,0,0,0.7) 100%);
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
    transition: 0.4s;
    opacity: 0;
}
.otherlink .onav ul li a .photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.4s;
}
.otherlink .onav ul li a .photo span {
    font-family: "fot-udkakugoc60-pro", sans-serif;
    font-style: normal;
    color: #fff;
    font-size: 0.24rem;
    letter-spacing: 0.1em;
    line-height: 1.5;
    position: absolute;
    left: 0.2rem;
    bottom: -3rem;
    z-index: 4;
    transition: 0.4s;
}
.otherlink .onav ul li a .photo .nami {
    width: 240%;
    position: absolute;
    left: 0.2rem;
    bottom: 0.2rem;
    opacity: 0.8;
    z-index: 3;
}
.otherlink .onav ul li a .photo .nami .st0 {
    fill: none;
    stroke: #fff;
    stroke-width: 200px;
    stroke-dasharray: 3000px;
    stroke-dashoffset: 3000px;
}
.otherlink .onav ul li a .photo .nami #nami01 {
    mask: url(#mask-wrapper01);
}
.otherlink .onav ul li a .photo .nami #nami02 {
    mask: url(#mask-wrapper02);
}
.otherlink .onav ul li a .photo .nami #nami03 {
    mask: url(#mask-wrapper03);
}
.otherlink .onav ul li a .photo .nami #nami04 {
    mask: url(#mask-wrapper04);
}
.otherlink .onav ul li a .photo .nami #nami05 {
    mask: url(#mask-wrapper05);
}
.otherlink .onav ul li a .photo .nami #nami06 {
    mask: url(#mask-wrapper06);
}
.otherlink .onav ul li a .photo .nami #nami07 {
    mask: url(#mask-wrapper07);
}
.otherlink .onav ul li a .photo .nami #nami08 {
    mask: url(#mask-wrapper08);
}
.otherlink .onav ul li a .photo .nami #nami09 {
    mask: url(#mask-wrapper09);
}
.otherlink .onav ul li a h5 {
    font-size: 0.21rem;
    font-weight: 400;
    line-height: 1.45;
    margin-bottom: 0.1rem;
}
.otherlink .onav ul li a h5 span {
    display: block;
    font-size: 0.14rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    margin-bottom: 0.05rem;
}
.otherlink .onav ul li a h5 span::before {
    content: '■';
    color: #046AEC;
    padding-right: 0.5em;
}
.otherlink .onav ul li a h5 span.cat2::before {
    color: #04AD70;
}
.otherlink .onav ul li a h5 span.cat3::before {
    color: #F59131;
}
.otherlink .onav ul li a p {
    font-size: 0.12rem;
    line-height: 1.66;
    letter-spacing: 0.04em;
}
.otherlink .btnst1 a {
    background-color: rgba(146,245,209,0.48);
    margin: 0 auto;
}
.otherlink .btnst1 a span::before {
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220.061%22%20height%3D%229.061%22%20viewBox%3D%220%200%2020.061%209.061%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_153%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%20153%22%20transform%3D%22translate(1.061%200.53)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_3%22%20data-name%3D%22%E3%83%91%E3%82%B9%203%22%20d%3D%22M786.5%2C2130l-4%2C4%2C4%2C4%22%20transform%3D%22translate(-782.5%20-2130)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.5%22%2F%3E%20%3Cline%20id%3D%22%E7%B7%9A_28%22%20data-name%3D%22%E7%B7%9A%2028%22%20x1%3D%2219%22%20transform%3D%22translate(0%204)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.5%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E') left center no-repeat;
    background-size: cover;
    right: auto;
    left: 0.1rem;
}
.otherlink .btnst1 a span::after {
    left: auto;
    right: -106%;
}
@media only screen and (min-width: 751px) {
.otherlink .onav ul li a:hover .photo::after {
    opacity: 1;
}
.otherlink .onav ul li a:hover .photo img {
    transform: scale(1.1);
}
.otherlink .onav ul li a:hover .photo span {
    bottom: 0.25rem; 
}
.otherlink .onav ul li a:hover .photo .nami .st0 {
    animation: nami 1s 0.4s forwards;
}
.otherlink .btnst1 a:hover span::before {
    animation: move-arrow2 1.2s 0.1s infinite;
}
.otherlink .btnst1 a:hover span::after {
    left: auto;
    right: 2%;
}
}
@media screen and (max-width:750px){
.otherlink {
    margin-bottom: 0.5rem;
}
.otherlink h4 {
    font-size: 0.16rem;
}
.otherlink .onav {
    width: 95vw;
    margin-bottom: 0.3rem;
    overflow-x: auto;
}
.otherlink .onav ul {
    width: 223.98vw;
    margin-bottom: 0.2rem;
    overflow-x: auto;
}
.otherlink .onav ul li {
    width: 66.66vw;
    margin-right: 8vw;
}
.otherlink .onav ul li:nth-child(2) {
    margin-top: 0;
}
.otherlink .onav ul li a {
    display: block;
}
.otherlink .onav ul li a .photo {
    width: 66.66vw;
    height: 83.2vw;
    border-radius: 0.15rem;
    margin-bottom: 0.2rem;
}
.otherlink .onav ul li a h5 {
    font-size: 0.18rem;
    letter-spacing: normal;
    padding-left: 0.21rem;
}
.otherlink .onav ul li a h5 span {
    letter-spacing: normal;
    margin-bottom: 0.05rem;
    margin-left: -0.21rem;
}
.otherlink .onav ul li a p {
    letter-spacing: normal;
    margin-left: 0.21rem;
}
}