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

/*---------scrollアイコン-----------*/
.arrowWrap {
position: absolute;
right: 0;
bottom: 0px;
z-index: 10;
width: 80px;
}

.arrowInner p {
  font-size: 12px;
  text-align: end;
  width: 100px;
  line-height: 1em;
  color: #000;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
/*  text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF,  0-1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF;*/
}

.arrow {
  width: 1px;
  height: 100px;
  margin: 50px auto 0;
  background-color: #eee;
  position: relative;
  overflow: hidden;
}

.arrow::before {
  content: '';
  width: 1px;
  height: 100px;
  margin: 50px auto 0;
  background-color: #000;
  position: absolute;
  top: -150px;
  left: 0;
  -webkit-animation: arrow 2.5s ease 0s infinite normal;
  animation: arrow 2.5s ease 0s infinite normal;
}

.arrowInner { position: absolute; bottom: 0px; right: -10px; }

@keyframes arrow {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
  }

  60% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }

  100% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }
}
/*PC*/
@media print, screen and (min-width: 768px) {

.hed_box {
position: absolute; left: 0; z-index: 90; top: 30%;
}
.logo_Hed { display: none; }

.logo_indexHed {
display: block;
-moz-transition: all 0.3s;
position: absolute;
top: 35px;
left: 20px;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
width: 230px;
}

.logo_indexHed img {
width: 100%;
height: auto;
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}

.logo_indexHed a {
display: block;
width: 100%;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}

/*--------------------*/

.scroll_btn { margin: 0 auto; width: 160px; margin: auto auto auto 0; margin-top: 30px; }
.scroll_btn a { display: flex; flex-wrap: wrap; align-items: center;  }
.scroll_btn a span.btn_ar { width: 46px; height: 46px; border-radius: 46px; border: 1px solid #074ca2; display: block; margin-right: 15px; position: relative; text-align: center; }
.scroll_btn a span.btn_ar::before { position: absolute; top: 15px; left: 0; right: 0; margin: auto; font-family: "Font Awesome 5 Free"; content: "\f107"; font-weight: bold; display: block;margin: auto; color: #074ca2; font-size: 16px; }

.scroll_btn a:hover .btn_ar { border: 1px solid #074ca2; background: #074ca2; color: #fff; -moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;}
.scroll_btn a:hover .btn_ar::before { color: #fff;-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }
.scroll_btn a span.en { font-weight: bold; -moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;  }
.scroll_btn a:hover span.en { letter-spacing: 0.09em; -moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;  }

.hedTitWrap {
width: 100%;
height: 500px;
position: relative;
}

.headerslider {
width: 60%;
margin: auto 0 auto auto;
padding-top: 200px;
position: relative;
height: 400px;
z-index: 10; 
}
.hed_slider_bg { width: 100%; position: relative; height: 900px; }
.hed_slider_bg::before { position: absolute; content: ""; display: block; width: 50%; top: 0; right: 0; /*background: rgba(7,76,162,1);*/ z-index: -1; height: 100%; display: block; background: linear-gradient(to right,#5194e8,#074ca2); }

.w1100s {
position: relative;
margin: 0 auto;
padding-left: 100px;
}


.idxHedTit {
width: 100%;
height: 100%;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}

.idxHedTitIn h2 {
color: #074ca2;
letter-spacing: 0.02em;
margin-bottom: 20px;
font-weight: 800;
margin-bottom: 50px;
}

.idxHedTitIn h2 span.sp01 { display: block; font-weight: bold; font-size: 5.5vw;  background: -webkit-linear-gradient(0deg, #5194e8, #074ca2);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }
.idxHedTitIn h2 span.sp02 { display: block; font-size: 25px;   }

.idxHedTit_txt { font-size: 18px; text-align: left; color: #000; font-weight: bold; letter-spacing: 0.02em; line-height: 2em;  }

.slider_btn { width: 350px; margin: 50px auto auto 0;}
.slider_btn a { padding: 30px; background: rgba(208,18,27,0.7); color: #fff; width: 100%; box-sizing: border-box; display: block; text-align: center; position: relative; font-weight: bold; font-size: 16px; font-family: 'Open Sans', sans-serif; letter-spacing: 0.1em; }
.slider_btn a::before {position: absolute; display: block; content: "\f0a9"; font-family: "Font Awesome 5 Free"; color: #fff; font-weight: bold; right: 50px;  font-size: 18px; top: 30px;  -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }
.slider_btn a:hover::before {right: 40px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}

/*----------------index------------------------------------*/


.idx_txtbox_35l { width: 35%; float: left; }
.idx_imgbox_60r { width: 60%; float: right; }
.idx_txtbox_35r { width: 35%; float: right; }
.idx_imgbox_60l { width: 60%; float: left; }

/*-------idx_main-----------*/

.idx_main { width: 100%; margin: 0 auto 50px; display: flex; flex-wrap: wrap; align-items: center; }
.idx_main_tit { flex-basis: 47%; margin-right: 3%; font-size: 100px;  font-family: 'Open Sans', sans-serif; font-weight: 800; color: rgba(208,18,27,0.1); line-height: 1.2em; }
.idx_main_tit2 { flex-basis: 47%; margin-right: 3%; font-size: 80px;  font-family: 'Open Sans', sans-serif; font-weight: 800; color: rgba(208,18,27,0.1); line-height: 1em; }
.idx_main_txt { flex-basis: 49%; font-size: 20px;  color: #333; line-height: 2.5em; }

.idx_img_r { width: 90%; position: relative; margin: auto 0 auto auto; }
.idx_img_r img { width: 100%; height: auto; }
.idx_img_r::before { content: ""; position: absolute; top: 35px; right: 13px; width: 100%; height: 96%; border: 1px solid #074ca2; z-index: -1; }
.idx_img_l { width: 90%; position: relative; margin: auto auto auto 0; }
.idx_img_l img { width: 100%; height: auto; }
.idx_img_l::before { content: ""; position: absolute; top: 35px; left: 13px; width: 100%; height: 96%; border: 1px solid #074ca2; z-index: -1; }

.idx_tit_sub { font-size: 25px; color: #333; margin-bottom: 30px; text-align: left; }
.idx_tit_sub_white { font-size: 25px; color: #fff; margin-bottom: 30px; text-align: left; font-weight: bold; }

.idx_btn01 { width: 250px; position: relative; background: #074ca2; padding: 30px; box-sizing: border-box;  margin-top: 50px; }
.idx_btn01 a::after { position: absolute; display: block; content: "\f0a9"; font-family: "Font Awesome 5 Free"; color: #fff; font-weight: bold; right: 20px; top: 38%; font-size: 18px;  -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.idx_btn01 a:hover::after { right: 10px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.idx_btn01 a { display: block; }
.idx_btn_tit { font-family: 'Open Sans', sans-serif; font-weight: normal!important; color: #fff; font-weight: 400; letter-spacing: 0.2em;  }

.b_img { width: 100%; margin: 0 auto; }
.b_img img { width: 100%; height: auto; }

.read_btn { font-size: 16px; color: #074ca2; position: relative; text-align: right; padding-right: 50px; margin-top: 30px; }
.read_btn a { color: #074ca2; font-size: 16px; font-weight: bold; display: block; }
.read_btn a::before {position: absolute; display: block; content: "\f0a9"; font-family: "Font Awesome 5 Free"; color: #074ca2; font-weight: bold; right: 20px;  font-size: 18px; top: 2px;  -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }
.read_btn a:hover::before {right: 10px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}

.idx_tit { text-align: center; margin-bottom: 50px; }
.idx_tit span.en {  font-size: 45px; font-weight: bold; color: #074ca2; display: block; background: -webkit-linear-gradient(0deg, #5194e8, #074ca2);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }
.idx_tit span.jp { font-size: 18px; font-weight: bold; display: block; }
.idx_txt_c { text-align: center; }
.idx_txt { text-align: left; line-height: 2em;  }
.idx_subtit { font-size: 18px; font-weight: bold; color: #dd0012; margin-bottom: 15px;  }

/*-------idx_box01-------------*/

#idx_box01 { margin: 0 auto 150px; }
.idx_box01 { width: 100%; margin: 0 auto; position: relative; }
.idx_box01_txtbox { width: 65%; margin:  auto 0 auto auto; }
.idx_box01_tit { font-size: 25px; font-weight: bold; line-height: 2em; color: #dd0012;text-align: left; margin-bottom: 50px;}
.idx_box01_txt { font-size: 16px; text-align: left; line-height: 2em; }
.idx_box01_imgbox { position: absolute; top: -30px; left: -100px; }
.idx_box01_img { background: url(../images/index/r_logo.png) 0 0 ; width: 500px; height: 500px; background-size: 100%; z-index: -1; }


/*-------idx_box02-------------*/
#idx_box02 { margin: 0 80px 100px;  background: #eff2f5;  padding: 70px 0px; border-radius: 10px; min-height: 470px; }
#idx_box02 .idx_tit { text-align: left; }
#idx_box02 .com_btn { margin: auto auto auto 0; margin-top: 50px;  }
.idx_box02_tit { font-size: 100px; font-weight: 900; color: rgba(149,149,149,0.02); margin-top: -150px; text-align: center; letter-spacing: 0.03em; }
.idx_box02 { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; }
.idx_box02_txtbox { flex-basis: 48%;  }
.idx_box02_imgbox { flex-basis: 48%; margin-right: 4%; position: relative; }
.idx_box02_img { position: absolute; left: -380px; width: 900px; visibility: visible; }
.idx_box02_img img { width: 100%; height: auto; }

.idx_box02_list { width: 100%; margin-top: 30px; }
.idx_box02_list li a {
font-size: 14px;
padding:10px 40px 10px 10px;
display: flex;
flex-wrap: wrap;
font-weight: bold;
align-items: center; 
color: #000; 
position: relative;
}

.idx_box02_list li a span.list_img { width: 60px; margin-right: 30px; }
.idx_box02_list li a span.list_img img { width: 100%; height: auto; }
.idx_box02_list li a:before {
content: "\f054";
position: absolute;
font-family: "Font Awesome 5 Free";
top: 40%;
right: 30px;
margin-top: -5px;
font-weight: bold;
font-size: 16px;
color: #0075c2;
-webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.idx_box02_list li a:hover:before {right: 20px;}
.idx_box02_list li {background-color: #fff;}




/*-------idx_box03-------------*/

#idx_box03 { margin: 0 auto; margin-bottom: 100px;  }
#idx_box03 .idx_tit { text-align: left; }
#idx_box03 .com_btn { margin: auto auto auto 0; margin-top: 50px;  }

.idx_box03_imgbox { width: 90%; margin: auto 0 auto auto; margin-bottom: 50px; }
.idx_box03_img { width: 100%; margin: 0 auto; }
.idx_box03_img img { width: 100%; height: auto; }

.idx_box03_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: center; margin-top: 50px; }
.idx_box03_list li { width: 48%; margin-right: 4%; background: linear-gradient(to right,#5194e8,#074ca2); position: relative; }
.idx_box03_list li:nth-child(2n+2) { margin-right: 0px; }
.idx_box03_list li a { display: block; position: relative; padding: 50px 30px; }
.idx_box03_list_tit { color: #fff; font-size: 16px; text-align: left; font-weight: 500; }
.idx_box03_list li a::before { position: absolute; font-family: "Font Awesome 5 Free"; content: "\f105"; top: 55px; right:30px; display: block; font-weight: bold; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; color: #fff; }
.idx_box03_list li a:hover::before { right: 20px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;}

/*-------idx_box04-------------*/

#idx_box04 { margin: 0 auto 100px; }
#idx_box04 .idx_tit { text-align: left; }
.idx_box04_imgbox { width: 90%; margin: auto auto auto 0; margin-bottom: 50px; }
.idx_box04_img { width: 100%; margin: 0 auto; }
.idx_box04_img img { width: 100%; height: auto; }

.idx_box04_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: center; margin-top: 50px; }
.idx_box04_list li { width: 32%; margin-right: 2%; background: linear-gradient(to right,#5194e8,#074ca2); position: relative; }
.idx_box04_list li:nth-child(3n+3) { margin-right: 0px; }
.idx_box04_list li a { display: block; position: relative; padding: 50px 30px; }
.idx_box04_list_tit { color: #fff; font-size: 16px; text-align: left; font-weight: 500; }
.idx_box04_list li a::before { position: absolute; font-family: "Font Awesome 5 Free"; content: "\f105"; top: 55px; right:30px; display: block; font-weight: bold; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; color: #fff; }
.idx_box04_list li a:hover::before { right: 20px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;}





/*-------idx_box05-------------*/

#idx_box05 { width: 100%; margin: 0 auto; position: relative; margin-bottom: 100px;  }
#idx_box05 .idx_txt { text-align: center; }
#idx_box05::before { position: absolute; right: 0; top: 35%;width: 60%; height: 600px; background-repeat: repeat-x; content: ""; display: block; background-size: 100%; z-index: -10; background: linear-gradient(to right,#5194e8,#074ca2);}
/*#idx_box05::after { position: absolute;  right: 0; bottom: -50px; margin-top: -70px; background: url(../images/index/idx_box04_bgimg.png) ; width: 1200px; height: 697px; background-repeat: repeat-x; content: ""; display: block; background-size: 100%; z-index: -10; }*/
.idx_box05_list { width: 100%; margin: 0 auto; margin-top: 50px; display: flex; flex-wrap: wrap; justify-content: flex-start; }
.idx_box05_list li { width: 32%; margin-right: 2%; margin-bottom: 100px; position: relative; }
.idx_box05_list li:nth-child(3n+3) { margin-right: 0px; }
.idx_box05_list li:nth-of-type(1) { margin-top: 100px; }
.idx_box05_list li:nth-of-type(2) { margin-top: 50px; }
.idx_box05_list li:nth-of-type(5) { margin-top: -50px; }
.idx_box05_list li:nth-of-type(6) { margin-top: -100px; }
.idx_box05_list li:nth-of-type(4),.idx_box05_list li:nth-of-type(5),.idx_box05_list li:nth-of-type(6) { margin-bottom: 0px; }
.idx_box05_list_txtxbox { padding: 30px; position: relative; background: #fff; }
.idx_box05_list_type span { background: linear-gradient(to right,#f5a518,#df5b36); padding: 5px 15px; color: #fff;  font-size: 12px; position: absolute; right: 0; top: 0px; z-index: 10;  }
.idx_box05_list_type_sub { font-size: 14px; color: #9e9e9e; }
.idx_box05_list_year { font-size: 12px; margin-bottom: 10px; color: #9e9e9e; }
.idx_boc05_list_name { font-size: 18px; font-weight: bold; margin-bottom: 10px; }
.idx_boc05_list_name span { color: #074ca2; font-weight: bold; background: -webkit-linear-gradient(0deg, #5194e8, #074ca2);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


.photo_hover_wrap img {
width: 100%;
height: auto;
}

.photo_hover_wrap {
display: block;
height: 450px;
overflow: hidden;
position: relative;
text-decoration: none;
z-index: 0;
}
.photo_hover_wrap .photo {
display: block;
height: auto;
left: 0;
position: absolute;
top: 0;
transition: all 0.2s linear 0s;
width: 100%;
}
.idx_box05_list li a:hover .photo_hover_wrap {
text-decoration: none;
cursor: pointer;
}
.idx_box05_list li a:hover .photo_hover_wrap .photo {
transform: scale(1.1);
transition: all 2s cubic-bezier(0.23, 1, 0.32, 1) 0s;
}

/*-------idx_box05-------------*/
#idx_box06 { width: 100%; margin: 0 auto; position: relative; }
.idx_box06_list { width: 90%; margin: 0 auto; display: flex; flex-wrap: wrap; }
.idx_box06_list li { width: 100%; position: relative; margin: 0 auto; }
.idx_box06_list li:nth-child(n+2) { margin-top: 50px; }
.read_btn2 { position: absolute; bottom: 0; right: 0; width: 50px; height: 50px; background: linear-gradient(to right,#5194e8,#074ca2);  vertical-align: middle; }
.read_btn2 span { font-size: 16px; color: #fff; position: relative; padding-right: 50px; margin-top: 30px; z-index: 10;}
.read_btn2 span{ color: #fff; font-size: 16px; font-weight: bold; }
.read_btn2 span::before { position: absolute; display: block; content: "\f054"; font-family: "Font Awesome 5 Free"; color: #fff; font-weight: bold; right: 0; left: 0; margin: auto; font-size: 14px; top:12px;  -webkit-transition: all 0.3s ease-out; text-align: center; 
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }

.idx_box06_list li a:hover .read_btn2 span::before {right: -5px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}


.idx_box06_list_tit { font-size: 20px; font-weight: bold; margin-bottom: 15px;  }
.idx_box06_list_txt {  margin-bottom: 15px;}
.idx_box06_list_txtbox {padding-top: 20px;   }


.photo_hover_wrap2 img {
width: 100%;
height: auto;
}

.photo_hover_wrap3 img {
width: 100%;
height: auto;
}

.photo_hover_wrap2 {
display: block;
height: 380px;
overflow: hidden;
position: relative;
text-decoration: none;
z-index: 0;
}

.photo_hover_wrap3 {
display: block;
height: 342px;
overflow: hidden;
position: relative;
text-decoration: none;
z-index: 0;
}
.photo_hover_wrap2 .photo2 {
display: block;
height: auto;
left: 0;
position: absolute;
top: 0;
transition: all 0.2s linear 0s;
width: 100%;
}
.photo_hover_wrap3 .photo2 {
display: block;
height: auto;
left: 0;
position: absolute;
top: 0;
transition: all 0.2s linear 0s;
width: 100%;
}
.idx_box06_list li a:hover .photo_hover_wrap2 {
text-decoration: none;
cursor: pointer;
}
.idx_box06_list li a:hover .photo_hover_wrap3 {
text-decoration: none;
cursor: pointer;
}
.idx_box06_list li a:hover .photo_hover_wrap2 .photo2 {
transform: scale(1.1);
transition: all 2s cubic-bezier(0.23, 1, 0.32, 1) 0s;
}
.idx_box06_list li a:hover .photo_hover_wrap3 .photo2 {
transform: scale(1.1);
transition: all 2s cubic-bezier(0.23, 1, 0.32, 1) 0s;
}


/*--------idx_box03---------*/


.message_list { width: 100%; margin: 50px auto 0px; }
.message_list li { width: 70%; background: #074ca2; }
.message_list li:nth-of-type(1) { margin: auto auto auto 0; }
.message_list li:nth-of-type(2) { margin: auto 0 auto auto; margin-top: 50px; }

.message_box { width: 100%; display: flex; flex-wrap: wrap; align-items: center; }

.message_img { width: 100%; }
.message_img img { width: 100%; height: auto; }
.message_txtbox { flex-basis: 60%; padding: 30px; box-sizing: border-box; color: #fff; }


.message_list li a .read_btn_list { font-size: 16px; color: #fff; position: relative; text-align: right; padding-right: 50px; margin-top: 30px; font-weight: bold; }
.message_list li a .read_btn_list::before {position: absolute; display: block; content: "\f0a9"; font-family: "Font Awesome 5 Free"; color: #fff; font-weight: bold; right: 20px;  font-size: 18px; top: 2px;  -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }
.message_list li a:hover .read_btn_list::before {right: 10px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}

/*---talk----*/
#talk { margin-bottom: 100px; }
#talk .idx_txt { text-align: center; }


/*------------idx_box0809-------------*/
#idx_box0809 { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 50px;  }
#idx_box0809 .idx_tit_C { color: #fff; margin-bottom: 0px; }
#idx_box0809 .idx_tit_C span.en { color: #fff; }

#idx_box08 { width: 50%; }
#idx_box09 { width: 50%; }

.idx_box0809_box a { width: 100%; display: block; height: 100%; mix-blend-mode:normal!important; }
.idx_box0809_box a#cursor.hov_ { mix-blend-mode:normal!important; }

.idx_box0809_txtbox { position: absolute; z-index: 10;  top: 50%; left: 0; right: 0; margin: auto; -webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%); }
.recruit_txtbox .idx_tit { /*color: #fff;*/ text-align: center;  margin-bottom: 30px; }
/*.recruit_txtbox .idx_tit span.en { color: #fff; }*/
.idx_box0809_tit { font-size: 18px; color: #fff; font-weight: bold; text-align: center; }

.idx_box0809_s {
position: relative;
overflow: hidden;
height: 25vw;
mix-blend-mode:normal!important; 
}
.idx_box0809_s:hover::before {
-webkit-transition: all .3s ease-out;
-moz-transition: all .3s ease-out;
-ms-transition: all .3s ease-out;
transition: all .3s ease-out;
transform: scale(1.1);
transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s
}

.idx_box08_bg::before {
background: url("../images/index/idx_box10_img.jpg") center center;
background-size: cover;
position: absolute;
top: 0;
left: 0;
width: 100%;
mix-blend-mode:normal!important;
height: 100%;
content: "";
-webkit-transition: -webkit-transform 125ms;
transition: -webkit-transform 125ms;
transition: transform 125ms;
transition: transform 125ms, -webkit-transform 125ms
}  

.idx_box10_bg::after { 
width: 100%;
height: 100%;

}

.idx_box09_bg::before {
background: url("../images/index/idx_box11_img.jpg") center center;
background-size: cover;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: "";
-webkit-transition: -webkit-transform 125ms;
transition: -webkit-transform 125ms;
transition: transform 125ms;
transition: transform 125ms, -webkit-transform 125ms
}  


}





/*----------------------------------------------------*/





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

.logo_Hed { display: none; }

.logo_indexHed {
position: absolute!important; 
top: 10px;
left: 10px;
z-index: 100; 
width: 150px;
display: block;
}

.logo_indexHed img {
width: 100%;
height: auto; 
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}

.logo_indexHed a {
display: block;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
}



.scroll_btn { margin: 0 auto; width: 160px; margin: auto auto auto 0; margin-top: 30px; }
.scroll_btn a { display: flex; flex-wrap: wrap; align-items: center;  }
.scroll_btn a span.btn_ar { width: 46px; height: 46px; border-radius: 46px; border: 1px solid #074ca2; display: block; margin-right: 15px; position: relative; text-align: center; }
.scroll_btn a span.btn_ar::before { position: absolute; top: 15px; left: 0; right: 0; margin: auto; font-family: "Font Awesome 5 Free"; content: "\f107"; font-weight: bold; display: block;margin: auto; color: #074ca2; font-size: 16px; }

.scroll_btn a:hover .btn_ar { border: 1px solid #074ca2; background: #074ca2; color: #fff; -moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;}
.scroll_btn a:hover .btn_ar::before { color: #fff;-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }
.scroll_btn a span.en { font-weight: bold; -moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;  }
.scroll_btn a:hover span.en { letter-spacing: 0.09em; -moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;  }

.hedTitWrap {
width: 100%;
height: 300px;
position: relative;
}

.headerslider {
width: 90%;
margin: auto 0 auto auto;
padding-top: 100px;
position: relative;
height: 300px;
z-index: 10; 
}
.hed_slider_bg { width: 100%; position: relative; }
.hed_slider_bg::before { position: absolute; content: ""; display: block; width: 50%; top: 0; right: 0; /*background: rgba(7,76,162,1);*/ z-index: -1; height: 100%; display: block; background: linear-gradient(to right,#5194e8,#074ca2); }

.w1100s {
position: relative;
margin: 0 auto;
padding-left: 50px;
margin-top: -30px;
z-index: 10;
}
.hed_box {

}

.idxHedTit {
width: 95%;
height: 100%;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}

.idxHedTitIn h2 {
color: #074ca2;
letter-spacing: 0.02em;
font-weight: 800;
margin-bottom: 30px;
line-height: 2.8em;
}

.idxHedTitIn h2 span.sp01 { display: block; font-weight: bold; font-size: 35px;  background: -webkit-linear-gradient(0deg, #5194e8, #074ca2);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }
.idxHedTitIn h2 span.sp02 { display: block; font-size: 25px;   }
.idxHedTit_txt { font-size: 14px; }


.slider_btn { width: 350px; margin: 50px auto auto 0;}
.slider_btn a { padding: 30px; background: rgba(208,18,27,0.7); color: #fff; width: 100%; box-sizing: border-box; display: block; text-align: center; position: relative; font-weight: bold; font-size: 16px; font-family: 'Open Sans', sans-serif; letter-spacing: 0.1em; }
.slider_btn a::before {position: absolute; display: block; content: "\f0a9"; font-family: "Font Awesome 5 Free"; color: #fff; font-weight: bold; right: 50px;  font-size: 18px; top: 30px;  -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }
.slider_btn a:hover::before {right: 40px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}

/*----------------index------------------------------------*/


.idx_txtbox_35l { width: 35%; float: left; }
.idx_imgbox_60r { width: 60%; float: right; }
.idx_txtbox_35r { width: 35%; float: right; }
.idx_imgbox_60l { width: 60%; float: left; }

/*-------idx_main-----------*/

.idx_main { width: 100%; margin: 0 auto 50px; display: flex; flex-wrap: wrap; align-items: center; }
.idx_main_tit { flex-basis: 47%; margin-right: 3%; font-size: 100px;  font-family: 'Open Sans', sans-serif; font-weight: 800; color: rgba(208,18,27,0.1); line-height: 1.2em; }
.idx_main_tit2 { flex-basis: 47%; margin-right: 3%; font-size: 80px;  font-family: 'Open Sans', sans-serif; font-weight: 800; color: rgba(208,18,27,0.1); line-height: 1em; }
.idx_main_txt { flex-basis: 49%; font-size: 20px;  color: #333; line-height: 2.5em; }

.idx_img_r { width: 90%; position: relative; margin: auto 0 auto auto; }
.idx_img_r img { width: 100%; height: auto; }
.idx_img_r::before { content: ""; position: absolute; top: 35px; right: 13px; width: 100%; height: 96%; border: 1px solid #074ca2; z-index: -1; }
.idx_img_l { width: 90%; position: relative; margin: auto auto auto 0; }
.idx_img_l img { width: 100%; height: auto; }
.idx_img_l::before { content: ""; position: absolute; top: 35px; left: 13px; width: 100%; height: 96%; border: 1px solid #074ca2; z-index: -1; }

.idx_tit_sub { font-size: 25px; color: #333; margin-bottom: 30px; text-align: left; }
.idx_tit_sub_white { font-size: 25px; color: #fff; margin-bottom: 30px; text-align: left; font-weight: bold; }

.idx_btn01 { width: 250px; position: relative; background: #074ca2; padding: 30px; box-sizing: border-box;  margin-top: 50px; }
.idx_btn01 a::after { position: absolute; display: block; content: "\f0a9"; font-family: "Font Awesome 5 Free"; color: #fff; font-weight: bold; right: 20px; top: 38%; font-size: 18px;  -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.idx_btn01 a:hover::after { right: 10px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.idx_btn01 a { display: block; }
.idx_btn_tit { font-family: 'Open Sans', sans-serif; font-weight: normal!important; color: #fff; font-weight: 400; letter-spacing: 0.2em;  }

.b_img { width: 100%; margin: 0 auto; }
.b_img img { width: 100%; height: auto; }

.read_btn { font-size: 16px; color: #074ca2; position: relative; text-align: right; padding-right: 50px; margin-top: 30px; }
.read_btn a { color: #074ca2; font-size: 16px; font-weight: bold; display: block; }
.read_btn a::before {position: absolute; display: block; content: "\f0a9"; font-family: "Font Awesome 5 Free"; color: #074ca2; font-weight: bold; right: 20px;  font-size: 18px; top: 2px;  -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }
.read_btn a:hover::before {right: 10px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}

.idx_tit { text-align: center; margin-bottom: 30px; }
.idx_tit span.en {  font-size: 40px; font-weight: bold;  color: #074ca2; display: block; color: #074ca2; display: block; background: -webkit-linear-gradient(0deg, #5194e8, #074ca2);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;  }
.idx_tit span.jp { font-size: 16px; font-weight: bold; display: block; }
.idx_txt_c { text-align: center; }
.idx_txt { text-align: left; line-height: 2em;  }
.idx_subtit { font-size: 16px; font-weight: bold; color: #dd0012; margin-bottom: 15px;  }

/*-------idx_box01-------------*/

#idx_box01 { margin: 0 auto 70px; }
.idx_box01 { width: 100%; margin: 0 auto; position: relative; }
.idx_box01_txtbox { width: 100%; margin: 0 auto; }
.idx_box01_tit { font-size: 20px; font-weight: bold; line-height: 2em; color: #dd0012;text-align: left; margin-bottom: 30px; }
.idx_box01_txt { font-size: 16px; text-align: left; line-height: 2em; }
.idx_box01_imgbox { position: absolute; bottom: -30px; left: -100px; }
.idx_box01_img { background: url(../images/index/r_logo.png) 0 0 ; width: 500px; height: 500px; background-size: 100%; z-index: -1; }


/*-------idx_box02-------------*/
#idx_box02 {  background: #eff2f5;  padding: 50px 0px; margin-bottom: 70px;  }
#idx_box02 .idx_tit { text-align: left; }
#idx_box02 .com_btn { margin: 0 auto; margin-top: 30px; }
.idx_box02_tit { font-size: 50px; font-weight: 900; color: #ecd7d8; margin-top: -25px; text-align: center; letter-spacing: 0.03em; }
.idx_box02 { width: 100%; margin: 0 auto; }
.idx_box02_txtbox { width: 100%; margin: 0 auto; }
.idx_box02_imgbox { width: 100%;  position: relative; }
.idx_box02_img {  width: 100%; margin: 0 auto 30px; }
.idx_box02_img img { width: 100%; height: auto; }

.idx_box02_list { width: 100%; margin-top: 30px; }
.idx_box02_list li a {
font-size: 14px;
padding:10px 40px 10px 10px;
display: flex;
flex-wrap: wrap;
font-weight: bold;
align-items: center; 
color: #000; 
position: relative;
justify-content: space-between;
}
.idx_box02_list li a span.list_txt { width: calc(100% - 50px);}
.idx_box02_list li a span.list_img { width: 40px; display: block; }
.idx_box02_list li a span.list_img img { width: 100%; height: auto; }
.idx_box02_list li a:before {
content: "\f054";
position: absolute;
font-family: "Font Awesome 5 Free";
top: 40%;
right: 30px;
margin-top: -5px;
font-weight: bold;
font-size: 16px;
color: #0075c2;
-webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.idx_box02_list li a:hover:before {right: 20px;}
.idx_box02_list li {background-color: #fff;}


/*-------idx_box03-------------*/

#idx_box03 { margin: 0 auto; margin-bottom: 70px;  }
#idx_box03 .idx_tit { text-align: left; }
#idx_box03 .com_btn { margin: auto auto auto 0; margin-top: 30px;  }

.idx_box03_imgbox { width: 90%; margin: auto 0 auto auto; margin-bottom: 30px; }
.idx_box03_img { width: 100%; margin: 0 auto; }
.idx_box03_img img { width: 100%; height: auto; }

.idx_box03_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: center; margin-top: 30px; }
.idx_box03_list li { width: 100%; background: linear-gradient(to right,#5194e8,#074ca2); position: relative; }
.idx_box03_list li:nth-child(n+2) {margin-top: 30px; }
.idx_box03_list li a { display: block; position: relative; padding:20px; }
.idx_box03_list_tit { color: #fff; font-size: 16px; text-align: left; font-weight: 500; }
.idx_box03_list li a::before { position: absolute; font-family: "Font Awesome 5 Free"; content: "\f105"; top: 25px; right:30px; display: block; font-weight: bold; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; color: #fff; }
.idx_box03_list li a:hover::before { right: 20px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;}

/*-------idx_box04-------------*/

#idx_box04 { margin: 0 auto 70px; }
#idx_box04 .idx_tit { text-align: left; }
.idx_box04_imgbox { width: 90%; margin: auto auto auto 0; margin-bottom: 30px; }
.idx_box04_img { width: 100%; margin: 0 auto; }
.idx_box04_img img { width: 100%; height: auto; }

.idx_box04_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: center; margin-top: 30px; }
.idx_box04_list li { width: 100%; background: linear-gradient(to right,#5194e8,#074ca2); position: relative; }
.idx_box04_list li:nth-child(n+2) {margin-top: 30px; }
.idx_box04_list li a { display: block; position: relative; padding: 20px; }
.idx_box04_list_tit { color: #fff; font-size: 16px; text-align: left; font-weight: 500; }
.idx_box04_list li a::before { position: absolute; font-family: "Font Awesome 5 Free"; content: "\f105"; top: 25px; right:30px; display: block; font-weight: bold; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; color: #fff; }
.idx_box04_list li a:hover::before { right: 20px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;}




/*-------idx_box04-------------*/

#idx_box05 { width: 100%; margin: 0 auto; position: relative; margin-bottom: 70px;  }
#idx_box05 .idx_txt { text-align: center; }
/*#idx_box05::before { position: absolute; left: 0; right: 0; top: 0%; margin-top: -50px; background: url(../images/index/idx_box04_bgimg.png) ; width: 1200px; height: 697px; background-repeat: repeat-x; content: ""; display: block; background-size: 100%; z-index: -10; }*/
.idx_box05_list { width: 100%; margin: 0 auto; margin-top: 30px; }
.idx_box05_list li { width: 100%;  box-shadow: 0 32px 16px -16px rgba(27,27,27,.1); position: relative; }
.idx_box05_list li:nth-child(n+2) { margin-top: 30px;  }
.idx_box05_list_txtxbox { padding: 30px; position: relative; background: #fff; }
.idx_box05_list_year { font-size: 16px; margin-bottom: 10px; }
.idx_boc05_list_name { font-size: 20px; font-weight: bold; }
.idx_boc05_list_name span { color: #074ca2; font-weight: bold; background: -webkit-linear-gradient(0deg, #5194e8, #074ca2);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;}
.idx_box05_list_type span { background: linear-gradient(to right,#f5a518,#df5b36); padding: 5px 15px; color: #fff;  font-size: 12px; position: absolute; right: 0; top: 0px; z-index: 10;  }
.idx_box05_list_type_sub { font-size: 14px; color: #9e9e9e; }


/*-------idx_box05-------------*/

.idx_box06_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; }
.idx_box06_list li { width: 100%; }
.idx_box06_list li:nth-child(n+2) { margin-top: 30px;  }
.read_btn2 { position: absolute; bottom: 0; right: 0; width: 50px; height: 50px;  background: linear-gradient(to right,#5194e8,#074ca2);  vertical-align: middle; }
.read_btn2 span { font-size: 16px; color: #fff; position: relative; padding-right: 50px; margin-top: 30px; z-index: 10;}
.read_btn2 span{ color: #fff; font-size: 16px; font-weight: bold; }
.read_btn2 span::before { position: absolute; display: block; content: "\f054"; font-family: "Font Awesome 5 Free"; color: #fff; font-weight: bold; right: 0; left: 0; margin: auto; font-size: 14px; top:12px;  -webkit-transition: all 0.3s ease-out; text-align: center; 
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }

.idx_box06_list li a:hover .read_btn2 span::before {right: -5px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}


.idx_box06_list_tit { font-size: 20px; font-weight: bold; margin-bottom: 15px;  }
.idx_box06_list_txt {  margin-bottom: 15px;}
.idx_box06_list_txtbox {padding-top: 20px;   }

.photo_hover_wrap2 { position: relative; }


/*--------idx_box03---------*/


.message_list { width: 100%; margin: 50px auto 0px; }
.message_list li { width: 70%; background: #074ca2; }
.message_list li:nth-of-type(1) { margin: auto auto auto 0; }
.message_list li:nth-of-type(2) { margin: auto 0 auto auto; margin-top: 50px; }

.message_box { width: 100%; display: flex; flex-wrap: wrap; align-items: center; }

.message_img { width: 100%; }
.message_img img { width: 100%; height: auto; }
.message_txtbox { flex-basis: 60%; padding: 30px; box-sizing: border-box; color: #fff; }


.message_list li a .read_btn_list { font-size: 16px; color: #fff; position: relative; text-align: right; padding-right: 50px; margin-top: 30px; font-weight: bold; }
.message_list li a .read_btn_list::before {position: absolute; display: block; content: "\f0a9"; font-family: "Font Awesome 5 Free"; color: #fff; font-weight: bold; right: 20px;  font-size: 18px; top: 2px;  -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out; }
.message_list li a:hover .read_btn_list::before {right: 10px; -webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}





/*---talk----*/
#talk { margin-bottom: 70px; }
#talk .idx_txt { text-align: center; }


/*------------idx_box0809-------------*/
#idx_box0809 { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 30px;  }
#idx_box0809 .idx_tit_C { color: #fff; margin-bottom: 0px; }
#idx_box0809 .idx_tit_C span.en { color: #fff; }

#idx_box08 { width: 100%; }
#idx_box09 { width: 100%; }

.idx_box0809_box a { width: 100%; display: block; height: 100%; }

.idx_box0809_txtbox { position: absolute; z-index: 10;  top: 50%; left: 0; right: 0; margin: auto; -webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%); }
.recruit_txtbox .idx_tit { /*color: #fff;*/ text-align: center;  margin-bottom: 30px; }
/*.recruit_txtbox .idx_tit span.en { color: #fff; }*/

.idx_box0809_s {
position: relative;
overflow: hidden;
height: 60vw;
}
.idx_box0809_s:hover::before {
-webkit-transition: all .3s ease-out;
-moz-transition: all .3s ease-out;
-ms-transition: all .3s ease-out;
transition: all .3s ease-out;
transform: scale(1.1);
transition: all 1s cubic-bezier(0.23, 1, 0.32, 1) 0s
}

.idx_box08_bg::before {
background: url("../images/index/idx_box10_img.jpg") center center;
background-size: cover;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: "";
-webkit-transition: -webkit-transform 125ms;
transition: -webkit-transform 125ms;
transition: transform 125ms;
transition: transform 125ms, -webkit-transform 125ms
}  

.idx_box09_bg::before {
background: url("../images/index/idx_box11_img.jpg") center center;
background-size: cover;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: "";
-webkit-transition: -webkit-transform 125ms;
transition: -webkit-transform 125ms;
transition: transform 125ms;
transition: transform 125ms, -webkit-transform 125ms
}  

.idx_box0809_tit { font-size: 16px; color: #fff; font-weight: bold; text-align: center; }


}
