@charset "UTF-8";
/* CSS Document */

@keyframes slideranim{
0%{
filter: blur(30px);
transform: scale(1.6);
opacity: 0;
}
100%{
filter: blur(0);
transform: scale(1);
opacity: 1;
}
}

@keyframes txtloop {
0% {
transform: translateX(100%);
}
to {
transform: translateX(-100%);
}
}

@keyframes txtloop2 {
0% {
transform: translateX(0);
}
to {
transform: translateX(-200%);
}
}


@keyframes svg {
0% {
fill: transparent;
stroke-dashoffset: 1600px;
}
80% {
fill: transparent;
}
100%{
stroke-dashoffset: 0;
fill: #FFF;
}
}


/*PC*/
@media print, screen and (min-width: 768px) {

/* slider
--------------------------------------------*/
#mv {
position: relative;
margin:0 auto 70px;
overflow: hidden;
}

#mv .slider_wrap{
width:calc(100% - 20px);
height:calc(100vh - 135px);
height:calc(100dvh - 135px);
overflow: hidden;
border-radius:0 40px 40px 0;
}

#mv .slider_wrap .slider_r{
width:100%;
height:100vh;
height:100dvh;
position: relative;
}

#mv .slider_wrap .slider_r::before {
content: "";
width: 100%;
height: 100%;
background: #011b45;
opacity:.15;
position:absolute;
left: 0;
top: 0;
z-index: 2;
}

#mv .swiper-slide img {
width: 100%;
height: 100%;
object-fit: cover;
}

#mv .swiper-slide-active{
animation-name: slideranim;
animation-duration: 1.5s;
}

#mv .ttl_box{
position: absolute;
left: 80px;
top: 46%;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
z-index:5;
}


#mv .ttl_box .nintei_list li:last-child{
margin-right: 0;
}

#mv .ttl_box .m_catch{
font-size:22px;
font-weight: 500;
line-height: 1;
letter-spacing:.1rem;
color:#FFF;
margin-bottom: 25px;
}

#mv .ttl_box h1{
font-size: 65px;
font-weight: 500;
line-height: 1.5;
letter-spacing: .2em;
margin-bottom: 30px;
color: #FFF;
}

#mv .ttl_box .m_txt{
color: #FFF;
font-weight: 500;
margin-bottom: 60px;
}

#mv .ttl_box .nintei_list{
margin:0;
display: flex;
flex-wrap: wrap;
}

#mv .ttl_box .nintei_list li{
margin-right: 2%;
border: 1px solid #FFF;
padding: 8px 12px;
box-sizing: border-box;
font-size: 14px;
line-height: 1;
font-weight: 800;
color: #FFF;
display: inline-block;
border-radius: 50rem;
}

#mv .topnews_wrap {
background:rgba(0,141,207,.6);
backdrop-filter: blur(8px);
position: absolute;
right: 20px;
bottom:40px;
border-radius:10px 0 0 10px;
padding:20px;
width: 40%;
flex-direction: row;
justify-content: flex-start;
align-items: center;
display: flex;
flex-wrap: nowrap;
z-index: 2;
}

#mv .topnews_wrap .topnews_ttl{
width: 165px;
display: flex;
align-items: center;
font-size: 18px;
line-height: 1;
color: #FFF;
text-decoration: none;
font-weight: bold;
white-space: nowrap;
}

#mv .topnews_wrap .topnews_ttl span{
display:inline-block;
width:20px;
margin-right: 10px;
}

#mv .topnews_wrap .topnews_txt p a{
line-height: 1.5;
font-weight: bold;
color:#FFF;
}


/* fv
--------------------------------------------*/
#fv{
width:calc(100% - 40px);
background: #2973b2;
padding:60px 0;
box-sizing: border-box;
position: relative;
margin:0 auto 80px;
overflow: hidden;
border-radius: 40px;
}

#fv .section_wrap{
position: relative;
width: 1200px;
margin:0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}

#fv .fv_list{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin:0 0 60px;
}

#fv .fv_list li{
width: 15.5%;
background: #FFF;
padding:20px 10px;
box-sizing: border-box;
border-radius:10px;
}

#fv .fv_list li a{
display: block;
}

#fv .fv_list li a .icon{
width: 100px;
height:100px;
background:rgba(197,233,249,.4);
padding:20px 20px;
box-sizing: border-box;
margin: 0 auto 15px;
border-radius: 50%;
display: flex;
align-content: center;
align-items: center;
}

#fv .fv_list li a h2{
font-size: 14px;
text-align: center;
line-height: 1;
}

#fv .fv_list2{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin:0 auto 0;
}

#fv .fv_list2 li{
width: 48%;
border-top: 1px solid #fff;
padding: 20px 0 0 0;
box-sizing: border-box;
margin-bottom: 30px;
}

#fv .fv_list2 li .fv_ttl{
font-size: 18px;
font-weight:bold;
color: #fff;
line-height: 1.77;
letter-spacing: .06em;
margin-bottom: 20px;
}

#fv .fv_list2 li dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
color: #FFF;
}

#fv .fv_list2 li dl dt{
width: 40%;
font-size: 20px;
font-weight: bold;
line-height: 1;
padding:0 0 15px;
box-sizing: border-box;
}

#fv .fv_list2 li dl dd{
width: 60%;
font-size: 32px;
font-weight: bold;
line-height: 1;
padding:0 0 15px;
box-sizing: border-box;
}

#fv .fv_list2 li .fv_txt2{
font-size: 26px;
font-weight:bold;
color: #fff;
line-height: 1.7;
}


#fv .fv_list2 li .fv_txt3{
font-size: 32px;
font-weight:bold;
color: #fff;
line-height:1;
margin-bottom: 10px;
}

#fv .fv_list2 li .fv_txt{
font-size: 16px;
font-weight:bold;
color: #fff;
line-height: 1.7;
}

#fv .fv_list2 li .fv_txt4{
font-size: 16px;
font-weight:bold;
color: #fff;
line-height: 1.7;
}

#fv article{
position: absolute;
bottom:-15px;
left: 0;
overflow: hidden;
}

#fv .loop_wrap {
display: flex;
width: 100%;
overflow: hidden;
margin: 0 auto 0;
}

#fv .loop_wrap div {
flex: 0 0 auto;
white-space: nowrap;
font-size: 7rem;
font-weight: 500;
line-height: 1;
overflow: hidden;
color:rgba(255,255,255,.1);
letter-spacing:2rem;
}

#fv .loop_wrap div:nth-child(odd) {
animation: txtloop 70s -35s linear infinite;
}

#fv .loop_wrap div:nth-child(even) {
animation: txtloop2 70s linear infinite;
}

/* about
--------------------------------------------*/
#about{
background: #f5f9fc;
padding:120px 0 0;
position: relative;
margin-bottom:80px;
overflow: hidden;
}

#about .section_wrap{
position: relative;
width: 1200px;
margin:0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}

#about .section_wrap .txt_box{
width: 48%;
}

#about .section_wrap .txt_box .read_txt{
margin-bottom: 40px;
}

#about .section_wrap .img{
width: 46%;
}

#about .section_wrap .img img{
border-radius: .6rem;
}

#about .btn_list{
width: 1200px;
margin: 120px auto 0;
display: flex;
flex-wrap: wrap;
position: relative;
padding-bottom: 30px;
box-sizing: border-box;
}

#about .btn_list::before{
content: "";
position: absolute;
bottom:-15%;
left: -50%;
width: 200%;
height: 140%;
background:linear-gradient(135deg, #0B60B0 0%, #40A2D8 100%);
}

#about .btn_list li{
width: 31.333%;
margin-right: 2%;
margin-bottom: 2%;
}

#about .btn_list li:nth-child(3n){
margin-right: 0;
}




/* features
--------------------------------------------*/
#features{
padding-top: 100px;
position: relative;
margin-bottom:160px;
overflow: hidden;
}

#features .section_wrap{
position: relative;
width: 1200px;
margin:0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
flex-direction: row-reverse;
align-items: center;
}

#features .section_wrap .txt_box{
width: 48%;
}

#features .section_wrap .txt_box .read_txt{
margin-bottom: 40px;
}

#features .section_wrap .txt_box .com_btn{
margin-top: 40px;
}

#features .section_wrap .img{
width: 46%;
}

#features .section_wrap .img img{
border-radius: .6rem;
}

#features .features_list{
width: 1200px;
margin: 80px auto 0;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#features .features_list li{
width: 32%;
padding: 25px;
box-sizing: border-box;
background: #008dcf;
border-radius: 1rem;
}

#features .features_list li .img{
border-radius: 1rem;
overflow: hidden;
margin: 0 0 10px;
}

#features .features_list li h3{
font-size: 24px;
font-weight: 800;
color: #FFF;
margin-bottom: 20px;
text-align: center;
}

#features .features_list li h4{
font-size: 18px;
margin: 0 0 20px;
color:#FFF;
}

#features .features_list li .txt{
color:#FFF;
font-size: 14px;
}


/* departments
--------------------------------------------*/
#departments{
position: relative;
margin-bottom:180px;
background: #eff4fa;
padding: 120px 0;
box-sizing: border-box;
overflow: hidden;
}

#departments .section_wrap{
position: relative;
width: 1200px;
margin:0 auto;
}

#departments .section_wrap .departments_list{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto 60px;
}

#departments .section_wrap .departments_list li{
width: 23.5%;
background: #fff;
box-shadow: 0 0 16px rgba(56,96,139,.3);
padding: 15px;
box-sizing: border-box;
border-radius: 1rem;
}


#departments .section_wrap .departments_list li a{
display: block;
}

#departments .section_wrap .departments_list li a .icon{
width: 80%;
margin: 0 auto 20px;
padding:25px;
box-sizing: border-box;
border-radius:50%;
background: #eff4fa;
}

#departments .section_wrap .departments_list li a h3{
text-align: center;
line-height: 1;
}

#departments .section_wrap .com_btn{
text-align: center;
}

#departments .slider2{
position: relative;
z-index: 2;
margin: 80px 0 0;
}

#departments .slider2 .slick-list{
overflow:inherit;
}

#departments .slider2 .slick-slide{
margin: 0 16px;
position: relative;
}

#departments .slider2 .slick-slide img{
border-radius: 1rem;
}



/* news
--------------------------------------------*/
#news{
position: relative;
overflow: hidden;
}

#news .section_wrap{
position: relative;
width: 1200px;
margin:0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#news .section_wrap .txt_box{
width: 30%;
}

#news .section_wrap .txt_box .ttl{
margin-bottom: 30px;
}

#news .section_wrap .txt_box ul{
flex-direction: column;
flex-wrap: wrap;
justify-content: flex-start;
align-items: stretch;
display: flex;
row-gap: 6px;
margin-bottom: 60px;
}

#news .section_wrap .txt_box ul li{
margin-bottom: 10px;
}

#news .section_wrap .txt_box ul li a{
font-size: 16px;
font-weight: bold;
color: #888;
line-height: 2;
letter-spacing: .06em;
text-decoration: none;
}


#news .section_wrap .txt_box ul li a.current,
#news .section_wrap .txt_box ul li a:hover{
color: #153b91;
text-decoration: underline;
text-underline-offset: 5px;
}

#news .section_wrap .idx_list{
width: 65%;
height: 600px;
overflow-y: auto;
}

#news .section_wrap .idx_list li{
flex-direction: row;
flex-wrap: nowrap;
justify-content: flex-start;
align-items: flex-start;
display: flex;
column-gap: 14px;
padding: 20px 0;
position: relative;
}

#news .section_wrap .idx_list li .data_box{
flex-direction: row;
flex-wrap: nowrap;
justify-content: flex-start;
align-items: center;
display: flex;
column-gap: 14px;
}

#news .section_wrap .idx_list li .data_box time{
display: inline-block;
font-family: "Poppins",sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 2;
letter-spacing: .06em;
width: 100px;
flex-shrink: 0;
color: #121212;
}

#news .section_wrap .idx_list li .data_box .tag{
display: inline-block;
min-width: 140px;
font-size: 14px;
font-weight:600;
color: #fff;
line-height: 28px;
letter-spacing: .06em;
text-align: center;
border-radius: 999px;
background: #008dcf;
padding: 0 10px;
box-sizing: border-box;
}

#news .section_wrap .idx_list li .data_box .title{
font-weight: 500;
line-height: 1.7;
}

#news .section_wrap .idx_list li .data_box .title:hover{
text-decoration: underline;
}

#news article{
position: relative;
bottom:-16px;
left: 0;
overflow: hidden;
margin-top:80px;
}

#news .loop_wrap {
display: flex;
width: 100%;
overflow: hidden;
margin: 0 auto 0;
}

#news .loop_wrap div {
flex: 0 0 auto;
white-space: nowrap;
font-size: 7rem;
font-weight: 500;
line-height: 1;
overflow: hidden;
color: #443E6E;
letter-spacing:2rem;
}

#news .loop_wrap div:nth-child(odd) {
animation: txtloop 70s -35s linear infinite;
}

#news .loop_wrap div:nth-child(even) {
animation: txtloop2 70s linear infinite;
}


/* recruit
--------------------------------------------*/
#recruit{
position: relative;
margin: 0 auto;
padding: 160px 0;
box-sizing: border-box;
overflow: hidden;
}

#recruit::before{
content: "";
position: absolute;
top: 0;
left: 0;
width: 110%;
height: 110%;
background: url("../images/index/recruit_bg.jpg") no-repeat center/cover;
filter: blur(8px);
}

#recruit::after{
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0,81,134,.5);
}

#recruit .section_wrap{
position:relative;
width: 1200px;
margin: auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
z-index: 5;
}

#recruit .section_wrap .txt_box{
position: relative;
width: 48%;
color: #FFF;
}

#recruit .section_wrap .txt_box .en_ttl {
color: #FFF;
}

#recruit .section_wrap .txt_box .en_ttl::before {
background-color: #FFF;
}

#recruit .section_wrap .txt_box .r_ttl{
color: #FFF;
}

#recruit .section_wrap .txt_box p{
margin-bottom: 60px;
}

#recruit .section_wrap .img{
width: 46%;
}

#recruit .section_wrap .img img{
border-radius: 1rem;
overflow: hidden;
}

}
/*sp*/
@media only screen and (max-width: 767px) {

/* slider
--------------------------------------------*/
#mv {
position: relative;
margin:20px auto 40px;
overflow: hidden;
}

#mv .slider_wrap{
width:100%;
height:calc(100vh - 50px);
overflow: hidden;
border-radius:0 20px 20px 0;
}

#mv .slider_wrap .slider_r{
width:100%;
height:100vh;
height:100dvh;
position: relative;
}

#mv .slider_wrap .slider_r::before {
content: "";
width: 100%;
height: 100%;
background: #011b45;
opacity:.15;
position:absolute;
left: 0;
top: 0;
z-index: 2;
}

#mv .swiper-slide img {
width: 100%;
height: 100%;
object-fit: cover;
}

#mv .swiper-slide-active{
animation-name: slideranim;
animation-duration: 1.5s;
}

#mv .ttl_box{
width: 90%;
position: absolute;
left:5%;
top: 40%;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
z-index:5;
}


#mv .ttl_box .nintei_list li:last-child{
margin-right: 0;
}

#mv .ttl_box .m_catch{
font-size:14px;
font-weight: 500;
line-height: 1;
letter-spacing:.1rem;
color:#FFF;
margin-bottom: 25px;
}

#mv .ttl_box h1{
font-size:22px;
font-weight: 500;
line-height: 1.5;
letter-spacing: .2em;
margin-bottom: 30px;
color: #FFF;
}

#mv .ttl_box .m_txt{
color: #FFF;
font-weight: 500;
margin-bottom: 30px;
}

#mv .ttl_box .nintei_list{
margin:0;
}

#mv .ttl_box .nintei_list li{
margin:0 0 10px;
border: 1px solid #FFF;
padding: 8px 12px;
box-sizing: border-box;
font-size: 12px;
line-height: 1;
font-weight: 800;
color: #FFF;
display: inline-block;
border-radius: 50rem;
}

#mv .ttl_box .nintei_list li:last-child{
margin-bottom: 0;
}

#mv .topnews_wrap {
background:rgba(0,141,207,.6);
backdrop-filter: blur(8px);
position: absolute;
left:0px;
bottom:0px;
width: 100%;
z-index: 2;
padding: 15px;
box-sizing: border-box;
}

#mv .topnews_wrap .topnews_ttl{
width: 100%;
font-size: 16px;
line-height: 1;
color: #FFF;
text-decoration: none;
font-weight: bold;
white-space: nowrap;
margin-bottom: 10px;
}

#mv .topnews_wrap .topnews_ttl span{
display:inline-block;
width:20px;
margin-right: 10px;
}

#mv .topnews_wrap .topnews_txt p a{
line-height: 1.5;
font-weight: bold;
color:#FFF;
}


/* fv
--------------------------------------------*/
#fv{
width:100%;
background: #2973b2;
padding:30px 5%;
box-sizing: border-box;
position: relative;
margin:0 auto 40px;
overflow: hidden;
border-radius: 10px;
}

#fv .section_wrap{
position: relative;
width: 100%;
margin:0 auto;
}

#fv .fv_list{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin:0 0 30px;
}

#fv .fv_list li{
width: 48%;
background: #FFF;
padding:20px 10px;
box-sizing: border-box;
border-radius:10px;
margin-bottom: 4%;
}

#fv .fv_list li a{
display: block;
}

#fv .fv_list li a .icon{
width: 100px;
height:100px;
background:rgba(197,233,249,.4);
padding:20px 20px;
box-sizing: border-box;
margin: 0 auto 15px;
border-radius: 50%;
display: flex;
align-content: center;
align-items: center;
}

#fv .fv_list li a h2{
font-size: 14px;
text-align: center;
line-height: 1;
}

#fv .fv_list2{
width: 100%;
margin:0 auto 0;
}

#fv .fv_list2 li{
width:100%;
border-top: 1px solid #fff;
padding: 20px 0 0 0;
box-sizing: border-box;
margin-bottom: 20px;
}

#fv .fv_list2 li:last-child{
margin-bottom: 0;
}

#fv .fv_list2 li .fv_ttl{
font-size: 16px;
font-weight:bold;
color: #fff;
line-height: 1.77;
letter-spacing: .06em;
margin-bottom: 10px;
}

#fv .fv_list2 li dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
color: #FFF;
}

#fv .fv_list2 li dl dt{
width: 40%;
font-size:18px;
font-weight: bold;
line-height: 1;
padding:0 0 15px;
box-sizing: border-box;
}

#fv .fv_list2 li dl dd{
width: 60%;
font-size: 18px;
font-weight: bold;
line-height: 1;
padding:0 0 15px;
box-sizing: border-box;
}

#fv .fv_list2 li .fv_txt2{
font-size: 18px;
font-weight:bold;
color: #fff;
line-height: 1.7;
}

#fv .fv_list2 li .fv_txt3{
font-size: 20px;
font-weight:bold;
color: #fff;
line-height:1;
margin-bottom: 10px;
}

#fv .fv_list2 li .fv_txt{
font-size: 16px;
font-weight:bold;
color: #fff;
line-height: 1.7;
}

#fv .fv_list2 li .fv_txt4{
font-size: 16px;
font-weight:bold;
color: #fff;
line-height: 1.7;
}

#fv article{
position: absolute;
bottom:-10px;
left: 0;
overflow: hidden;
}

#fv .loop_wrap {
display: flex;
width: 100%;
overflow: hidden;
margin: 0 auto 0;
}

#fv .loop_wrap div {
flex: 0 0 auto;
white-space: nowrap;
font-size: 4rem;
font-weight: 500;
line-height: 1;
overflow: hidden;
color:rgba(255,255,255,.1);
letter-spacing:2rem;
}

#fv .loop_wrap div:nth-child(odd) {
animation: txtloop 70s -35s linear infinite;
}

#fv .loop_wrap div:nth-child(even) {
animation: txtloop2 70s linear infinite;
}

/* about
--------------------------------------------*/
#about{
background: #f5f9fc;
padding:40px 0 0;
position: relative;
margin-bottom:40px;
overflow: hidden;
}

#about .section_wrap{
position: relative;
width: 90%;
margin:0 auto;
padding-bottom: 20px;
box-sizing: border-box;
}

#about .section_wrap .txt_box{
width:100%;
margin-bottom: 20px;
}

#about .section_wrap .txt_box .read_txt{
margin-bottom: 20px;
}

#about .section_wrap .img{
width: 80%;
margin: auto;
}

#about .section_wrap .img img{
border-radius: .6rem;
}

#about .btn_list{
width: 90%;
margin:30px auto;
position: relative;
box-sizing: border-box;
z-index: 2;
}

#about .btn_list::before{
content: "";
position: absolute;
top:-5%;
left:-10%;
width: 120%;
height: 110%;
background:linear-gradient(135deg, #0B60B0 0%, #40A2D8 100%);
}

#about .btn_list li{
width:100%;
margin-bottom:15px;
}

#about .btn_list li:last-child{
margin-bottom: 0;
}


/* features
--------------------------------------------*/
#features{
position: relative;
margin-bottom:40px;
overflow: hidden;
}

#features .section_wrap{
position: relative;
width: 90%;
margin:0 auto;
}

#features .section_wrap .txt_box{
width: 100%;
margin-bottom: 30px;
}

#features .section_wrap .txt_box .read_txt{
margin-bottom: 20px;
}

#features .section_wrap .txt_box .com_btn{
margin-top: 20px;
}

#features .section_wrap .img{
width: 80%;
margin: auto;
}

#features .section_wrap .img img{
border-radius: .6rem;
}

#features .features_list{
width: 90%;
margin: 30px auto 0;
}

#features .features_list li{
width: 100%;
padding: 15px;
box-sizing: border-box;
background: #008dcf;
border-radius: 1rem;
margin-bottom: 20px;
}

#features .features_list li:last-child{
margin-bottom: 0;
}

#features .features_list li .img{
border-radius: 1rem;
overflow: hidden;
margin: 0 0 10px;
}

#features .features_list li h3{
font-size: 18px;
font-weight: 800;
color: #FFF;
margin-bottom:10px;
text-align: center;
}

#features .features_list li h4{
font-size: 16px;
margin: 0 0 20px;
color:#FFF;
}

#features .features_list li .txt{
color:#FFF;
font-size: 14px;
}


/* departments
--------------------------------------------*/
#departments{
position: relative;
margin-bottom:40px;
background: #eff4fa;
padding: 40px 0;
box-sizing: border-box;
overflow: hidden;
}

#departments .section_wrap{
position: relative;
width: 90%;
margin:0 auto;
}

#departments .section_wrap .departments_list{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto 30px;
}

#departments .section_wrap .departments_list li{
width: 48%;
background: #fff;
box-shadow: 0 0 16px rgba(56,96,139,.3);
padding: 10px;
box-sizing: border-box;
border-radius: 1rem;
margin-bottom: 4%;
}


#departments .section_wrap .departments_list li a{
display: block;
}

#departments .section_wrap .departments_list li a .icon{
width: 80%;
margin: 0 auto 20px;
padding:25px;
box-sizing: border-box;
border-radius:50%;
background: #eff4fa;
}

#departments .section_wrap .departments_list li a h3{
text-align: center;
line-height: 1;
}

#departments .section_wrap .com_btn{
text-align: center;
}

#departments .slider2{
position: relative;
z-index: 2;
margin: 30px 0 0;
}

#departments .slider2 .slick-list{
overflow:inherit;
}

#departments .slider2 .slick-slide{
margin: 0 10px;
position: relative;
}

#departments .slider2 .slick-slide img{
border-radius: .6rem;
}



/* news
--------------------------------------------*/
#news{
position: relative;
overflow: hidden;
}

#news .section_wrap{
position: relative;
width: 90%;
margin:0 auto;
}

#news .section_wrap .txt_box{
width:100%;
margin-bottom: 20px;
}

#news .section_wrap .txt_box .ttl{
margin-bottom: 20px;
}

#news .section_wrap .txt_box ul{
flex-wrap: wrap;
justify-content: flex-start;
display: flex;
margin-bottom: 30px;
}

#news .section_wrap .txt_box ul li{
margin-bottom: 10px;
margin-right: 10px;
font-size: 14px;
}

#news .section_wrap .txt_box ul li a{
font-size: 16px;
font-weight: bold;
color: #888;
line-height: 2;
letter-spacing: .06em;
text-decoration: none;
}


#news .section_wrap .txt_box ul li a.current,
#news .section_wrap .txt_box ul li a:hover{
color: #153b91;
text-decoration: underline;
text-underline-offset: 5px;
}

#news .section_wrap .idx_list{
width: 100%;
height: 200px;
overflow-y: auto;
}

#news .section_wrap .idx_list li{
padding: 10px 0;
position: relative;
}

#news .section_wrap .idx_list li a{
display: block;
}

#news .section_wrap .idx_list li .data_box{
flex-direction: row;
flex-wrap: nowrap;
justify-content: flex-start;
align-items: center;
display: flex;
column-gap: 14px;
}

#news .section_wrap .idx_list li a .data_box time{
display: inline-block;
font-family: "Poppins",sans-serif;
font-size: 14px;
font-weight: 400;
line-height: 2;
letter-spacing: .06em;
width: 100px;
flex-shrink: 0;
color: #121212;
}

#news .section_wrap .idx_list li .data_box .tag{
display: inline-block;
min-width: 140px;
font-size: 12px;
font-weight:600;
color: #fff;
line-height: 20px;
letter-spacing: .06em;
text-align: center;
border-radius: 999px;
background: #008dcf;
padding: 0 10px;
box-sizing: border-box;
}

#news .section_wrap .idx_list li .data_box .title{
font-weight: 500;
line-height: 1.7;
}

#news .section_wrap .idx_list li .data_box a .title:hover{
text-decoration: underline;
}

#news article{
position: relative;
bottom:-16px;
left: 0;
overflow: hidden;
margin-top:30px;
}

#news .loop_wrap {
display: flex;
width: 100%;
overflow: hidden;
margin: 0 auto 0;
}

#news .loop_wrap div {
flex: 0 0 auto;
white-space: nowrap;
font-size: 4.5rem;
font-weight: 500;
line-height: 1;
overflow: hidden;
color: #443E6E;
letter-spacing:1rem;
}

#news .loop_wrap div:nth-child(odd) {
animation: txtloop 70s -35s linear infinite;
}

#news .loop_wrap div:nth-child(even) {
animation: txtloop2 70s linear infinite;
}


/* recruit
--------------------------------------------*/
#recruit{
position: relative;
margin: 0 auto;
padding: 40px 0;
box-sizing: border-box;
overflow: hidden;
}

#recruit::before{
content: "";
position: absolute;
top: 0;
left: 0;
width: 110%;
height: 110%;
background: url("../images/index/recruit_bg.jpg") no-repeat center/cover;
filter: blur(8px);
}

#recruit::after{
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0,81,134,.5);
}

#recruit .section_wrap{
position:relative;
width: 90%;
margin: auto;
z-index: 5;
}

#recruit .section_wrap .txt_box{
position: relative;
width: 100%;
color: #FFF;
margin-bottom: 20px;
}

#recruit .section_wrap .txt_box .en_ttl {
color: #FFF;
}

#recruit .section_wrap .txt_box .en_ttl::before {
background-color: #FFF;
}

#recruit .section_wrap .txt_box .r_ttl{
color: #FFF;
}

#recruit .section_wrap .txt_box p{
margin-bottom: 30px;
}

#recruit .section_wrap .img{
width: 80%;
margin: auto;
}

#recruit .section_wrap .img img{
border-radius: 1rem;
overflow: hidden;
}


}