* {
    margin: 0;
    padding: 0;
    outline: none;
    border: none;
    box-sizing: border-box;
}

body {
    font-family: 'db_heaventlight', sans-serif;
    font-size: 26px;
    color: rgba(20, 20, 20, 1);
    margin: 0 auto;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background-color: rgba(255, 255, 255, 1);
    scroll-behavior: smooth;
    text-align: center;
}

section {
    clear: both;
}

figure {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

h1,
h2,
h3,
h4,
h5,
h6,
select {
    font-family: 'db_heaventregular', sans-serif;
}

h1 {
    font-size: 2.7em;
}

h2 {
    font-size: 1.8em;
}

h3 {
    font-size: 1.6em;
}

h4 {
    font-size: 1.4em;
}

h5 {
    font-size: 1.2em;
}

h6 {
    font-size: 1em;
}

p {
    font-size: 1em;
}

a {
    text-decoration: none;
    color: inherit;
}

table {
    border-collapse: collapse; 
}

input {
    font-size: 1em;
    padding: 0.5em;
}

label {
    display: block;
}

img {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0 auto;
}

header {
    width: 100%;
    height: 56px;
    margin: 0 auto;
    background-color: rgba(255, 255, 255, 1);

    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;

    position: fixed;
    top: 0;
    z-index: 10;

    box-shadow: 0px 2px 10px 0px rgba(0,0,0,0.5);
    -webkit-box-shadow: 0px 2px 10px 0px rgba(0,0,0,0.5);
    -moz-box-shadow: 0px 2px 10px 0px rgba(0,0,0,0.5);

    
}

header div {
    width: 90%;
    max-width: 1600px;
    margin: 0 auto;

    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;
}

header div figure {
    width: 140px;
}

header div nav a {
    font-weight: 600;
}

.wrapper {
    width: 100%;
    max-width: 1920px;
    margin: auto;
    padding-top: 56px;
}
.bg-grey {
    background-color: rgba(241, 241, 242, 1);
}
.bg-gradient-cyan {
    background: linear-gradient(180deg, #BCD7DD 0%, #B1D5DD 18%, #96D1DD 48%, #6ACADD 86%, #59C8DD 100%);
}
.bg-gradient-green {
    background: linear-gradient(180deg, #CEEBC8 0%, #ACE0C0 19%, #57C5AF 60%, #00A99D 100%);
}
.bg-gradient-orange {
    background: linear-gradient(180deg, #F79C84 0%, #F9B396 17%, #FCCAA8 39%, #FED3AF 53%, #D3D5D0 77%, #A7D8F3 100%)
}

.slider {
    width: 100%;
    height: 630px;
    margin: 56px auto 0;
}
.slider div figure {
    width: 100%;
    height: 100%;
    background-size: cover;

    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;

    position: relative;
}

.slider div:nth-child(2) figure{
    background-image: url(../img/TNCareer_img01.webp);
    background-position: 15%;
}
.slider div:nth-child(4) figure{
    background-image: url(../img/TNCareer_img02.webp);
    background-position: 90%;
}

.slider div:nth-child(2) figure div,
.slider div:nth-child(4) figure div{
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);

    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
}

.slider div:nth-child(2) figure h1 span {
    display: block;
}
.slider div figure h1 {
    margin: auto;
    font-family: 'db_heaventlight', sans-serif;
    font-weight: 300;
    color: rgba(255, 255, 245, 1);

    font-size: 2em;
    width: 80%;

    z-index: 10;
}

.slick-slide {
    margin: 0px auto;
  }

  .slick-slide img {
    width: 100%;
  }

  .slick-prev:before,
  .slick-next:before {
    color: black;
  }


  .slick-slide {
    transition: all ease-in-out .3s;
    opacity: .2;
  }
  
  .slick-active {
    opacity: .5;
  }

  .slick-current {
    opacity: 1;
  }


.banner {
    width: 100%;
    margin: 0 auto;
    background-repeat: no-repeat;
    background-size: cover;
}
.banner-img01 {
    height: 440px;
    background-image: url(../img/TNCareer_img03.webp);
    background-position: 50%;
}
.banner-img02 {
    height: 450px;
    background-image: url(../img/TNCareer_img15.webp);
    background-position: 90%;
}
.box-txt div {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;

    display: flex;
    flex-flow: column wrap;
    align-items: baseline;
    justify-content: space-around;
}
.box-txt div * {
    text-align: left;
    margin: 0.5em 0;
}
.box1 div{
    height: auto;
}
.box2 div{
    height: auto;
}
.box3 div{
    height: auto;  
}
.box3 div h1 {
    width: 100%;
    max-width: 450px;
    margin: 3em auto;
    font-family: 'db_heaventlight', sans-serif;
    font-size: 1.9em;
    font-weight: 300;
    text-align: center;
    color: rgba(64, 64, 65, 1);
}
.box4 div{
    height: 600px;
    padding: 5em 0;
}
.box4 div h1,
.box4 div h2 {
    font-family: 'db_heaventlight', sans-serif;
    font-weight: 300;
    text-align: center;
    margin: auto;
}
.box4 div h1 {
    font-size: 2.2em;
}
.box4 div h2 {
    font-size: 2.6em;
    background: linear-gradient(180deg, #BCD7DD 0%, #B1D5DD 18%, #96D1DD 48%, #6ACADD 86%, #59C8DD 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.box5 div {
    height: auto;
}
.box5 div h4,
.box5 div h5 {
    font-family: 'db_heaventlight', sans-serif;
    font-weight: 300;
}
.box5 div h4 {
    color: rgba(255, 255, 255, 1);
}
.box5 div h5 {
    color: rgba(64, 64, 65, 1);
}
.culture {
    width: 100%;
    margin: auto;  
}
.culture h2 {
    margin: 0.5em 0.5em 0;
    text-align: left;
}
.culture section {
    width: 100%;
    max-width: 1600px;
    margin: auto;

    display: flex;
    flex-flow: column wrap;
    align-items:flex-start;
    justify-content: space-around;
}

.culture section div figure{
    height: 450px;
    margin: 0.8em 0;
    background-repeat: no-repeat;
    background-size: cover;

}
.culture section div figcaption {
    width: 90%;
    margin: auto;
    height: auto;
    background-color: rgba(241, 241, 241, 1);
    border-radius: 40px;
    padding: 1em;
    text-align: left;
}
.culture section div figcaption h4 {
    margin-bottom: 0.5em;
}
.culture section div:first-child figure{
    background-image: url(../img/TNCareer_img04.webp);
    background-position: 50%;
}
.culture section div:nth-child(2) figure{
    background-image: url(../img/TNCareer_img05.webp);
    background-position: 25%;
}
.culture section div:last-child figure{
    background-image: url(../img/TNCareer_img06.webp);
    background-position: 85%;
}

.join section{
    width: 96%;
    max-width: 1600px;
    margin: auto;  
}

.join section div {
    width: 100%;
    margin: 1em auto;
    display: flex;
    flex-flow: row wrap;
    align-items:center;
    justify-content: space-between;
}
.join section div figure {
    height: 450px;
    background-repeat: no-repeat;
    background-size: cover;

    flex-basis: 100%;
}
.join section div:first-child figure {
    background-image: url(../img/TNCareer_img07.webp);
    background-position: 35%;
}
.join section div:nth-child(2) figure {
    background-image: url(../img/TNCareer_img08.webp);
    background-position: 68%;
}
.join section div:nth-child(3) figure {
    background-image: url(../img/TNCareer_img09.webp);
    background-size: auto;
    background-position: 50%;
}
.join section div:last-child figure {
    background-image: url(../img/TNCareer_img10.webp);
    background-position: 35%;
}
.join section div figcaption {
    text-align: left;
}
.join section div figcaption h4 {
    margin: 0.5em 0;
}

.meet {
    width: 96%;
    margin: auto;
}
.meet h2 {
    text-align: left;
}

.meet section {
    width: 100%;
    margin: auto;

    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
}
.meet section > div a {
    cursor: default;
}
.meet section > div {
    flex-basis: 100%;
    margin: 0.5em auto;
}
.meet section div a figure {
    height: 440px;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 20px;

    position: relative;
}

.meet section div:first-child a figure {
    background-image: url(../img/TNCareer_img11.webp);
    background-position: 30%;
}
.meet section div:nth-child(2) a figure {
    background-image: url(../img/TNCareer_img12.webp);
    background-position: 55%;
}
.meet section div:nth-child(3) a figure {
    background-image: url(../img/TNCareer_img13.webp);
    background-position: 60%;
}
.meet section div:last-child a figure {
    background-image: url(../img/TNCareer_img14.webp);
    background-position: 75%;
}
.meet section div a figure figcaption {
    width: 100%;
    margin: auto;
    position:absolute;
    bottom: 1em;
    z-index: 5;
}
.meet section div a figure figcaption h5 {
    font-size: 2em;
    color: rgba(255, 255, 255, 1);
}
.meet section div a figure div{
    width: 100%;
    height: 100%;

    mix-blend-mode: multiply;
    
    position:absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 20px;
}
.meet section div:first-child a figure div {
    background: linear-gradient(180deg, #FFFFFF 0%, #FDFEFD 31%, #F7FBF6 42%, #ECF7EA 50%, #DDF1D9 56%, #CEEBC8 61%, #ACE0C0 68%, #57C5AF 84%, #00A99D 100%);
}
.meet section div:nth-child(2) a figure div {
    background: linear-gradient(180deg, #FFFFFF 0%, #FCFDFE 21%, #F3F8FC 33%, #E5F0F8 44%, #D1E5F3 53%, #BEDBEE 60%, #97A8D0 75%, #7379B5 91%, #6667AB 100%);
}
.meet section div:nth-child(3) a figure div {
    background: linear-gradient(180deg, #FFFFFF 1.46%, #FEFDFD 28.88%, #FEF8F6 38.33%, #FDEEEA 44.94%, #FCE0D9 50.62%, #FBCFC3 55.34%, #F9B9A8 59.12%, #F79F88 62.9%, #F79C84 63.85%, #D2B7B7 78.03%, #A7D8F3 95.99%);
}
.meet section div:last-child a figure div{
    background: linear-gradient(180deg, #FFFFFF 0.55%, #FEFDFD 30.26%, #FDF6F8 41.16%, #FBEAEF 48.09%, #F9D9E3 55.02%, #F6C3D3 59.97%, #F1B2C8 66.91%, #E283AB 88.69%, #DD71A0 99.59%);
}
.benefit {
    width: 96%;
    margin: 4em auto;
    
}
.benefit h2 {
    text-align: left;
}
.benefit section{
    width: 100%;
    max-width: 1600px;
    margin: auto;
    
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-around;
}
.benefit section div {
    flex-basis: 48%;
    margin: 1em auto;
}
.benefit section div figure {
    width: 90px;
    height: auto;
    margin: 1em auto;
}

/* job */
.box-job1 {
    height: 500px;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: space-around;
}
.box-job1 div h3,
.box-job1 div h1 {
    width: 90%;
    margin: 0.6em auto;
    font-family: 'db_heaventlight', sans-serif;
    font-weight: 300;
    color: rgba(255, 255, 255, 1);
}

.box-job2 div {
    height: auto;
    padding: 2em 0;
}
.box-job2 div h2,
.box-job2 div h5 {
    font-family: 'db_heaventlight', sans-serif;
    font-weight: 300;
    margin: auto;
    width: 100%;
    max-width: 800px;
}
.jobList div{
    background-color:rgba(255, 255, 255, 1);
    width: 90%;
    max-width: 930px;
    border-radius:10px ;
    margin: 1.5em auto;
    text-align: left;
}
.jobList div a {
    padding: 0.8em;
    display: flex;
    flex-flow: row wrap;
    align-items: baseline;
    justify-content: space-between;
}
.jobList div a h4 {
    flex-basis: 100%;
}
.jobList div a h4,
.jobList div a p,
.jobList div a h6 {
    font-family: 'db_heaventlight', sans-serif;
    font-weight: 300;
    margin: 0.2em 0;
}
.jobList div a h4 {
    font-size: 1.3em;
}
.jobList div a h6 {
    font-size: 0.7em;
    text-align: right;
}
.jobList div a p {
    color: rgba(109, 110, 112, 1);
}

/* apply page */
.apply-banner {
    width: 100%;
    height: 500px;
    margin: 0 auto;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}
.apply-banner div {
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: space-around;
    padding: 3em 0;
}
.apply-banner div *{
    font-family: 'db_heaventlight', sans-serif;
    font-weight: 300;
    color: rgba(255, 255, 255, 1);
}
.apply-banner div h1 {
    width: 90%;
    font-size: 2.1em;
}

.apply01 {
    background-image: url(../img/TNCareer_img16.webp);
    background-position: 60%;
}

.apply01 div {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .4);

    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.apply-container,
.consent-container {
    width: 90%;
    max-width: 1150px;
    margin: 1em auto;
    text-align: left;
}
.apply-container h3,
.apply-container p,
.consent-container h5,
.consent-container p {
    margin: 0.5em 0;
}
.apply-container ul,
.consent-container ol {
    margin-left: 1em;
}
.consent-container > ol > li ol li {
    list-style: none;
    text-indent: -1em;
}

.consent-banner div {
    height: 350px;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: space-around;
    padding: 3em 0;
}
.consent-banner div h2,
.consent-banner div h5 {
    color: rgba(255, 255, 255, 1);
}

/* form */
.apply_form {
    width: 100%;
    background-color: rgba(241, 241, 242, 1);
    padding: 1em 0;
}

.apply_form form fieldset{
    width: 80%;
    max-width: 920px;
    margin: auto;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content:space-between;
}

.apply_form form fieldset div{
    width: 100%;
    margin: 0.4em 0;
    flex-basis: 50%;
    text-align: left;
}

.apply_form form fieldset div input {
    width: 100%;
    border-radius: 10px;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

.apply_form form fieldset div:nth-child(9) input::before {
    padding: 0.4em 1em;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 1);
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    font-family: 'db_heaventlight';
    font-size: 1em;
    content: 'Choose file';
    cursor: pointer;
    visibility: visible;
}
.apply_form form fieldset div:nth-child(9) input { 
    visibility: hidden;
}
.apply_form form > div {
    width: 96%;
    max-width: 1400px;
    margin: auto;
}
.apply_form form > div p,
.apply_form form > div > div {
    margin: 1em auto;
}
.apply_form form > div > div {
    display: flex;
    flex-flow: row nowrap;
    align-items: baseline;
    justify-content: center;
}

.apply_form form > div > div input,
.apply_form form > div > div label{
    margin: 0 0.3em;
}

.apply_form form > div > div label {
    text-align: left;
}
.apply_form form div label a {
    text-decoration: underline;
    color: rgba(41, 112, 204, 1);
}

.apply_form form div input[type=submit] {
    font-family: 'db_heaventlight';
    width: 220px;
    margin: auto;
    padding: 0.3em;
    cursor: pointer;
    color:rgba(255, 255, 255, 1);
    font-size: 36px;
    text-align: center;
    background: linear-gradient(90deg, #5C69FF 0%, #257FE6 100%);
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 10px;
}
.confirmed {
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.7);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;

    display: flex;
    flex-flow: column wrap;
    align-items: center;
    justify-content: center;

    /* confirm popup */
    display: none;    
}
.confirmed div {
    width: 80%;
    max-width: 600px;
    padding: 2em 0;
    background-color: rgba(255, 255, 255, 1);
}
.confirmed div figure img{
    width: 90%;
    max-width: 400px;
    height: auto;
}
.confirmed div button,
.confirmed div h6 {
    font-family: 'db_heaventlight';
    font-weight: 300;
}
.confirmed div button {
    font-size: 1em;
    padding: 0.8em 1.2em;
    margin: 0.5em auto;
    background: linear-gradient(0deg, #5C69FF 0%, #257FE6 100%);
    border-radius: 10px;
    color: rgba(255, 255, 255, 1);
    cursor: pointer;
}

/* footer */
footer {
    width: 100%;
    margin: 50px auto;
}
footer section {
    width: 94%;
    max-width: 1400px;
    margin: auto;
    padding: 1em 2em;
    background-color: rgba(0,0,0,1);
    border-radius: 40px;
    
    color: rgba(255, 255, 255, 1);
    text-align: left;

    position: relative;
    
    display: flex;
    flex-flow: column wrap;
    align-items: baseline;
    justify-content:space-between;
}
footer section div {
    margin: 0.8em 0;
}
footer section div:first-child {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0.8em;
}
footer section div:first-child a img{
    width: 36px;
    margin: 0.2em;
    display: inline;
}
footer section div:nth-child(2) img{
    height: fit-content;
    width: 145px;
    margin: 0;
}

footer section div:last-child {
    margin-right: 20%;
}
footer section div:last-child p span img {
    width: 36px;
    margin: 0.5em;
}
footer section div:last-child p {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: flex-start;
}
footer hr {
    width: 90%;
    max-width: 1500px;
    margin: 1em auto;
    border-top: 1px dotted rgba(50, 50, 50, 1);
}
footer ul {
    width: 80%;
    max-width: 1200px;
    margin: auto;

    display: flex;
    flex-flow: column wrap;
    align-items: baseline;
    justify-content: flex-start;
}
footer ul li {
    list-style: none;
}