@charset "utf-8";
/* CSS Document */
.arrowOrigin:hover .arrow {
	-webkit-animation-name: arrow;
	animation-name: arrow;
	-webkit-animation-duration: .4s;
	animation-duration: .4s;
	-webkit-animation-timing-function: cubic-bezier(0.65, 0.01, 0.3, 0.97);
	animation-timing-function: cubic-bezier(0.65, 0.01, 0.3, 0.97);
}
.arrowOrigin:hover .arrow-rev {
	-webkit-animation-name: arrow-rev;
	animation-name: arrow-rev;
}
/* keyframes */
@-webkit-keyframes arrow {
 0% {
 opacity:1;
 -webkit-transform:translateX(0);
 transform:translateX(0);
}
 40% {
 opacity:0;
}
 49.9% {
 -webkit-transform:translateX(50%);
 transform:translateX(50%);
opacity:0
}
 50% {
 -webkit-transform:translateX(-50%);
 transform:translateX(-50%);
opacity:0
}
 100% {
 opacity:1;
 -webkit-transform:translateX(0);
 transform:translateX(0);
}
}
@keyframes arrow {
 0% {
 opacity:1;
 -webkit-transform:translateX(0);
 transform:translateX(0);
}
 40% {
 opacity:0;
}
 49.9% {
 -webkit-transform:translateX(50%);
 transform:translateX(50%);
opacity:0
}
 50% {
 -webkit-transform:translateX(-50%);
 transform:translateX(-50%);
opacity:0
}
 100% {
 opacity:1;
 -webkit-transform:translateX(0);
 transform:translateX(0);
}
}
@-webkit-keyframes arrow-rev {
 0% {
 opacity:1;
 -webkit-transform:translateX(0) rotate(180deg);
 transform:translateX(0) rotate(180deg);
}
 40% {
 opacity:0;
}
 49.9% {
 -webkit-transform:translateX(-50%) rotate(180deg);
 transform:translateX(-50%) rotate(180deg);
opacity:0
}
 50% {
 -webkit-transform:translateX(50%) rotate(180deg);
 transform:translateX(50%) rotate(180deg);
opacity:0
}
 100% {
 opacity:1;
 -webkit-transform:translateX(0) rotate(180deg);
 transform:translateX(0) rotate(180deg);
}
}
@keyframes arrow-rev {
 0% {
 opacity:1;
 -webkit-transform:translateX(0) rotate(180deg);
 transform:translateX(0) rotate(180deg);
}
 40% {
 opacity:0;
}
 49.9% {
 -webkit-transform:translateX(-50%) rotate(180deg);
 transform:translateX(-50%) rotate(180deg);
opacity:0
}
 50% {
 -webkit-transform:translateX(50%) rotate(180deg);
 transform:translateX(50%) rotate(180deg);
opacity:0
}
 100% {
 opacity:1;
 -webkit-transform:translateX(0) rotate(180deg);
 transform:translateX(0) rotate(180deg);
}
}

span.arrow { width: 30px; height: 1px; background: #074c9b; position: relative;  bottom: 0; margin: auto; display: inline-block; -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; }
span.arrow::after {
content: "";
width: 0;
height: 0;
border-style: solid;
border-width: 3.5px 0 3.5px 5px;
border-color: transparent transparent transparent #074c9b;
position: absolute;
right: -2px;
top: -3px;
}
/*PC*/
@media print, screen and (min-width: 768px) {
#header {
z-index: 10000;
/*background-color: rgba(255,255,255,0.70)*/
}

/*-----------TOPのお知らせ------*/

.hed_news_box {
width: 650px;
height: 100px;
display: flex;
flex-wrap: wrap;
background: #518de1;
position: absolute;
right: 0;
bottom: -50px;
z-index: 1000;
}

.hed_news_boxL {
flex-basis: 520px;
max-width: 520px;
box-sizing: border-box;
padding: 10px 15px;
background: #518de1;
}

.hed_news_boxR {
flex-basis: 130px;
max-width: 130px;
}

.hed_news_btn {
width: 100%;
box-sizing: border-box;
}

.hed_news_btn a {
display: block;
padding: 10px;
height: 100px;
text-align: center;
font-weight: bold;
background: rgba(8,64,144,.5);
box-sizing: border-box;
line-height: 80px;
color: #fff;
}

.hed_news_btn a:hover {
background: rgba(8,64,144,.9);
}

/*.hed_news_listbox { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; height: 100%; align-items: center; }*/
.hed_news_listbox { width: 100%; margin: 0 auto; height: 100%; }

/*.hed_news_tit { margin-right: 3%;  flex-basis: 15%; max-width: 15%; color: #fff; font-weight: bold; }*/
.hed_news_list { width: 100%;  height: 80px; }
.hed_news_list li { display: flex; align-items: center; }
.hed_news_list_tit {  color: #fff; font-weight: bold; font-size: 14px; }
.hed_news_list_txt { color: #fff; font-size: 14px; }
.hed_news_list_txt a { text-decoration: underline; color: #fff;  }

.slick-list { height: 80px!important;}
.slick-slide { height: 80px!important;}

/*#menu li a { color: #fff!important;}
.subMenu li a { color: #fff!important;}
*/
.logo_com { display: none; }
header.smaller #menu li a { color: #333!important;}

#header {
z-index: 100000;
/*background-color: rgba(255,255,255,0.70)*/
}
.hed_main { 
padding-right: 70px;
width: calc(100% - 70px);
height: calc(100vh - 100px);
margin: 50px 0px 150px;
position: relative;
}

/*.hed_main::before {
content: "";
width: 450px;
height: 240px;
position: absolute;
right: 0;
bottom: -70px;
display: block;
z-index: -1;
background: #518de1;
}*/


.hedTitWrap {
width: 100%;
height: calc(100vh - 100px);
position: relative;
min-width: 1100px; 
}

.headerslider {
width: 100%; 
position: relative;
height: calc(100vh - 100px);
box-sizing: border-box;
overflow: hidden; 
}

.hedTitWrap {
height: calc(100vh - 100px);
padding: 0;
}

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

.idxHedTitIn {
width: 100%;
z-index: 1000;
position: absolute;
left: 100px;
bottom: 150px;
}
.idxHedTitIn h2 { margin-bottom: 50px; text-shadow: 2px 0 10px rgba(0,0,0,.8);  }
.idxHedTitIn h2 span.sp01 { font-size: 30px; color: #fff; font-weight: bold; line-height: 2em; display: block; margin-bottom: 30px; }
.idxHedTitIn h2 span.sp02 { font-size: 65px; display: block; color: #fff; font-weight: bold; }
.idxHedTitIn p span.sp03 { text-shadow: 2px 0 10px rgba(0,0,0,.6);  font-size: 16px; color: #fff; text-align: left; margin-top: 15px;  }
.slider_icon { position: absolute; right: -300px; width: 1200px; bottom: 0; z-index: 1000; opacity: .9;  }
.slider_icon_img { width: 100%; margin: 0 auto; }
.slider_icon_img img { width: 100%; height: auto; }

.hedTitWrap {
height: 100%;
position: relative;
}
.idx_logo { width: 430px; margin: 0 auto; }
.idx_logo span.logo_en { display: block; color: #fff; font-size: 22px; font-family: 'Open Sans', sans-serif; font-weight: 400; text-align: center; margin-top: 15px; }
.idx_logo img { width: 100%; height: auto; }
.idx_Hed_tit { font-size: 1.8vw; font-weight: 300; margin-bottom: 30px; color: #fff; text-align: center; }
.idx_Hed_txt { color: #fff; font-weight: 200!important; text-align: center; line-height: 2em; letter-spacing: 0.06em; font-size: 14px; }

#dot {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
min-height: 100vh;
background: url(../images/com/dot.png)/*,rgba(7,76,162,0.3)*/;
z-index: 100;
opacity: .1;
}

.hed_main_copy {
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
-webkit-writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
position: absolute;
right: 0;
text-align: center;
top: 50%;
width: 70px;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
letter-spacing: .1em;
font-size: .8em;
font-weight: 500;
}

.m-kv__scroll {
 position:absolute;
 font-family:Lato,sans-serif;
 font-size:1rem;
 font-weight:700;
 right: 65px;
 bottom: 130px;
 opacity:1;
	line-height: 1.5em;
 transition:.5s;
 transform:rotate(-90.1deg);
 letter-spacing:.4rem;
/* cursor:pointer;*/
 color:#fff;
 transform-origin:left center;
 transition-delay: 0s;
 z-index: 1000;
}
.m-kv__line {
 position:absolute;
 width:80px;
 height:1px;
 background:#fff;
 left:-90px;
 bottom:8px
}
.m-kv__line:before {
 position:absolute;
 content:"";
 width:5px;
 height:5px;
 background:#074ca2;
 border-radius:50%;
 left:75px;
 bottom:-2px;
 opacity:0;
 transform:translate(0);
 animation:scrollMark 3.6s cubic-bezier(.645,.045,.355,1) infinite
}

/*----------------index共通------------------------------------*/

.idx_tit { font-size: 28px; color: #333; margin-bottom: 50px; font-weight: bold; letter-spacing: 0.07em; position: relative;  }
.idx_tit span.en { font-size: 60px; font-weight: bold; color: #074ca2; display: block; }
.idx_tit span.jp { font-size: 16px; display: block; margin-top: 15px; position: relative; color: #518de1; }
/*.idx_tit span.jp::before { content: ""; display: block; width: 30px; height: 1px; background: #074ca2; bottom: -15px; left: 0; position: absolute; }*/

.idx_tit_C { margin-bottom: 50px; font-weight: bold; letter-spacing: 0.07em; }
.idx_tit_C span.en { font-size: 60px; font-weight: bold; color: #074ca2; display: block; text-align: center; line-height: 1em; }
.idx_tit_C span.jp { font-size: 16px; display: block; margin-top: 15px; position: relative; text-align: center; color: #518de1; }
/*.idx_tit_C span.jp::before { content: ""; display: block; width: 30px; height: 1px; background: #074ca2; bottom: -15px; left: 0; right: 0;  position: absolute; margin: auto; }*/


.idx_subtit { font-size: 21px; color: #333; margin-bottom: 30px; font-weight: bold; }
.idx_txt { color: #333; text-align: left; line-height: 2.5em; margin-bottom: 50px; }
.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: 55%; float: left; }
.idx_txtbox_40r { width: 45%; float: right; }


/*--------------idx_box00---------------------------*/

#idx_box00 { padding: 100px 0px 0px;  }
#idx_box00 .idx_txt { text-align: center; font-size: 16px; }

.particles-wrap {
background-size: cover;
overflow: hidden;
position: relative;
width: 100%; 
}

#particles { position: absolute; top: 0; left: 0; right: 0; width: 100%; margin: auto; padding: 100px 0px;  }

#hoge {
background-size: cover;
width: 100%;
overflow: hidden;
overflow: hidden;
position: relative;
min-width: 1200px;
}

.idx_box00 { width: 100%; margin: 0 auto;  position: relative; }
.idx_box00_txtbox { width: 100%; }
.idx_box00_tit { writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; text-orientation: upright; text-align: left; font-size: 28px; vertical-align: middle; margin: 0 auto; line-height: 2em; color: #765635; display: inline-block; font-weight: bold; }
.idx_box00_txt { text-align: center; font-size: 16px; margin: 0 auto; line-height: 3.5em; font-weight: 500; }


/*--------------idx_box01-----------------*/
#idx_box01 { margin-bottom: 100px; position: relative; margin-top: 100px; }
/*#idx_box01::before { position: absolute; width: 100%; height: 300px;  left: 0; right: 0; bottom: -50px; background: #eff2f5; z-index: 0; content: ""; display: block; }*/
#idx_box01 .com_btn { margin: auto auto auto 0; }
.idx_box { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; position: relative; z-index: 10; }
.idx_txtbox { flex-basis: 43%; max-width: 43%;  }
.idx_imgbox { flex-basis: 52%; max-width: 52%; margin-right: 5%; }

.idx_box01_imgin { width: 100%; margin: 0 auto; }
.idx_box01_img_l { width: 50%; float: left;  margin-top: 150px; }
.idx_box01_img_r { width: 100%; float: right; overflow: visible; margin-right: -350px; margin-top: -50px;  }
.idx_box01_img_l img,.idx_box01_img_r img { width: 100%; height: auto; }
.idx_box01_img { width: 140%; margin-left: -40%; box-shadow: 0 0.5rem 2rem rgba(0,0,0,0.15); position: relative; height: 650px; background: url("../images/index/idx_box01_img01.jpg") center 0 no-repeat; background-size: cover; }
.idx_box01_img::before {
position: absolute;
content: "";
display: block;
width: 70px;
height: 100%;
background: #518de1;
top: 0;
left: 10%;
}

.idx_list_txt { width: 100%; margin: 0 auto; }
.idx_list_txt li { position: relative; padding-left: 23px; line-height: 1.8em; font-size: 16px;}
.idx_list_txt li:nth-child(n+2) { margin-top: 10px; }
.idx_list_txt li::before { content: "\f00c"; position: absolute; left: 0; top: 0px; font-size: 16px; color: #765635; font-family: "Font Awesome 5 Free"; font-weight: bold; display: block; }
.idx_list_txt li span { display: block; color: #765635; font-size: 15px; line-height: 1.5em; margin-top: 5px; }
/*--------------idx_box02-----------------*/
#idx_box02 { margin-bottom: 100px; position: relative;  }
#idx_box02 .idx_txt { text-align: center; font-size: 16px; }
#idx_box02 .com_btn { margin: auto auto auto 0;}
.idx_box02_img { width: 100%; margin: 0 auto; }
.idx_box02_img img { width: 100%; height: auto; }
.business_tit { margin-bottom: 30px; }
.business_tit span.en { display: block; color: #c6c9cc; font-weight: bold; margin-bottom: 20px; font-size: 20px; letter-spacing: 0.09em;  }
.business_tit span.jp { font-size: 20px; font-weight: bold; }
.business_txt { margin-bottom: 15px; }
.business_subtxt { margin-bottom: 50px; }
#idx_box02 .idx_box { margin-bottom: 50px; }


.service_list { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; border-top: 1px solid #eaeaea;  border-bottom: 1px solid #eaeaea;}
.service_list li { flex-basis: 33.3333%; max-width: 33.3333%;  display: flex; flex-wrap: wrap; position: relative; }
.service_list li:nth-child(3n+3) a { border-right: 0px; }
.service_list li a { display: block; padding: 50px; background: #fff; border-right: 1px solid #eaeaea; box-sizing: border-box;  }
.service_list li a:hover { -webkit-box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.2);
box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.2);
-webkit-transform: scale(1.02);
transform: scale(1.02); border: none; }
.service_list_img { width: 60%; margin: 0 auto 30px; }
.service_list_img img { width: 100%; height: auto; }
.service_list_txtbox { width: 100%; margin: 0 auto; }
.service_list_tit { margin-bottom: 15px; color: #518de1; font-size: 22px; font-weight: bold; text-align: center; }
.service_list_tit span.en { display: block; font-size: 21px; color: #074c9b; margin-bottom: 10px;  }
.service_list_subtxt { text-align: left; margin-bottom: 10px; }
.service_list_txt { text-align: left; margin-bottom: 30px;  }
.service_list_btn { font-size: 14px; font-weight: bold; color: #074c9b; text-align: right; position: absolute; right: 50px; bottom: 50px; display: flex; align-items: center; }
.service_list_btn span.en { padding-right: 5px; }

/*--------------idx_box03-----------------*/
#idx_box03 { margin-bottom: 100px; margin-top: 100px; position: relative; }
/*#idx_box03::after { content: ""; width: 70%; height: 100%; background: #eff2f5; display: block; position: absolute; right: 0; top: 0; z-index: -1; }*/
#idx_box03 .com_btn2 { margin: auto auto auto 0; margin-top: 30px; color: #fff; }
#idx_box03 .idx_tit span.en { color: #fff; }
#idx_box03 .idx_tit span.jp { color: #fff; }
#idx_box03 .idx_txt { color: #fff; }

.product_box { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.product_txtbox { flex-basis: 40%; max-width: 40%; padding:150px 50px; background: #518de1; box-sizing: border-box; -webkit-box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.2);
box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.2); }
.product_imgbox { flex-basis: 60%; max-width: 60%; }
.product_img { width: 120%; margin:  0 auto; background: url("../images/index/product_img.jpg")center center; background-size: cover; height: 550px; }

.product_subtit { font-size: 22px; font-weight: bold; color: #fff; margin-bottom: 15px; }


/*----------idx_box04----------*/
#idx_box04 { position: relative; margin-bottom: 100px;  }
#idx_box04 .com_btn { margin: auto auto auto 0; margin-top: 50px;  }
/*#idx_box04::before { content: ""; width: 400px; position: absolute; top: 0px; left: 100px; background: url("../images/index/recruit_img.jpg"); height: 240px; background-size: 100%; display: block; z-index: 0; }
#idx_box04::after { content: ""; width: 400px; position: absolute; bottom: 0px; right: 100px; background: url("../images/index/recruit_img.jpg"); height: 240px; background-size: 100%; display: block; z-index: 0; }*/
.recruit_imgbox { width: 1100px; margin: 0 auto;  position: relative; z-index: 0; margin-bottom: 50px; margin-top: 30px; }
.recruit_subtit { font-size: 18px; font-weight: bold; margin-bottom: 30px; text-align: left; line-height: 1.8em;  }
.recruit_txt { text-align: left; position: relative; z-index: 10;  }


.idx_box04_imgin { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; }
.idx_box04_imgL { flex-basis: 50%; max-width: 50%; position: relative; margin-top: 70px;  }
.idx_box04_imgL::before {
content: "";
display: block;
width: 100%;
height: 80%;
position: absolute;
bottom: 0;
left: 0;
background: rgba(81,141,225,.15);
z-index: -10;
}
.idx_box04_imgR { flex-basis: 50%; max-width: 50%; position: relative; }
.idx_box04_imgR::before {
content: "";
display: block;
width: 100%;
height: 80%;
position: absolute;
bottom: 90px;
right: 0;
background: rgba(81,141,225,.15);
z-index: -10;
}
.idx_box04_imgL .idx_box04_img { width: 120%; margin: 0 auto; position: relative; z-index: 10; }
.idx_box04_imgL .idx_box04_img img { width: 100%; height: auto; z-index: 10; }

.idx_box04_imgR .idx_box04_img { width: 90%; margin: 0 auto; position: relative; z-index: 10; }
.idx_box04_imgR .idx_box04_img img { width: 100%; height: auto; z-index: 10; }


/*-----------idx_box06--------------*/

#idx_box05 { margin-bottom: 100px;  }
#idx_box05 .com_btn { margin: auto 0 auto auto; margin-top: 50px;  }
.topics { width: 100%; margin: 0 auto; }
.topics dl:nth-child(2n+1) { background: #fff; padding: 20px; }
.topics dl:nth-child(2n+2) { background: #f3f3f3; padding: 20px; }
.topics dl dt { float: left; width: 30%; }
.topics dl dd { float: right; width: 65%; }

.news_list { width: 100%; margin: 0 auto; }
.news_list li { width: 100%; display: flex; flex-wrap: wrap; justify-content: space-between; }
.news_tit { flex-basis: 30%; max-width: 30%; margin-right: 5%; }
.news_txt { flex-basis: 65%; max-width: 65%; }
.news_list li:nth-child(n+2) { margin-top: 10px; }
.news_list li:nth-child(2n+1) { background: #fff; padding: 15px; box-sizing: border-box; }
.news_list li:nth-child(2n+2) { background: #f3f3f3; padding: 15px; box-sizing: border-box; }
.news_tit span.date{ font-weight: bold; font-size: 14px;  }
.news_txt a { text-decoration: underline; }
.news_txt a:hover { color: #518ce0; }


.idx_box05_box { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; }
.idx_box05_boxL { flex-basis: 30%; max-width: 30%; margin-right: 5%; }
.idx_box05_boxR { flex-basis: 65%; max-width: 65%; }

.news_btn { width: 90%; margin: auto auto auto 0; margin-top: 50px; max-width: 250px; min-width: 250px;  }
.news_btn a { display: block; padding: 15px; color: #fff; font-weight: bold; border: 1px solid #518ce0; background: #518ce0; border-radius: 30px; text-align: center; }
.news_btn a:hover { background: #fff; color: #518ce0; }


/*------------topick-----------*/

.scroll-box {
width:98%;
overflow: auto;
-webkit-overflow-scrolling: touch;  /* 髫ｲ・ｷ繝ｻ・｣髫ｲ・､繝ｻ・ｧ驛｢・ｧ繝ｻ・ｹ驛｢・ｧ繝ｻ・ｯ驛｢譎｢・ｽ・ｭ驛｢譎｢・ｽ・ｼ驛｢譎｢・ｽ・ｫ */
padding: 1%;
height: 300px;
}

.scroll-box::-webkit-scrollbar {
height: 5px;
}

.scroll-box::-webkit-scrollbar-track {
border-radius: 0px;
background: #EEEEEE;
}

.scroll-box::-webkit-scrollbar-thumb {
border-radius: 5px;
background: #666666;
}




}





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



@keyframes scrollMark {
 0% {
  opacity:0;
  transform:translate(0)
 }
 20% {
  opacity:1;
  transform:translate(0)
 }
 80% {
  opacity:1;
  transform:translate(-45px)
 }
 to {
  opacity:0;
  transform:translate(-45px)
 }
}


/*sp*/
@media only screen and (max-width: 767px) {#header {
z-index: 10000;
/*background-color: rgba(255,255,255,0.70)*/
}

/*-----------TOPのお知らせ------*/

.hed_news_box {
width:90%;
margin: auto 0 auto auto;
margin-top: -50px; 
margin-right: -30px;
height: 100px;
display: flex;
flex-wrap: wrap;
position: relative;
background: #518de1;
z-index: 100;
}

.hed_news_boxL {
flex-basis: 80%;
max-width: 80%;
box-sizing: border-box;
padding: 10px 15px;
background: #518de1;
}

.hed_news_boxR {
flex-basis: 20%;
max-width: 20%;
}

.hed_news_btn {
width: 100%;
box-sizing: border-box;
}

.hed_news_btn a {
display: block;
padding: 10px;
height: 100px;
font-size: 12px; 
text-align: center;
line-height: 1.2em;
justify-content: center; 
display: flex;
align-items: center; 
font-weight: bold;
background: rgba(8,64,144,.5);
box-sizing: border-box;
color: #fff;
}

.hed_news_btn a:hover {
background: rgba(8,64,144,.9);
}

/*.hed_news_listbox { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; height: 100%; align-items: center; }*/
.hed_news_listbox { width: 100%; margin: 0 auto; height: 100%; }

/*.hed_news_tit { margin-right: 3%;  flex-basis: 15%; max-width: 15%; color: #fff; font-weight: bold; }*/
.hed_news_list { width: 100%;  height: 80px; }
.hed_news_list li { display: flex; align-items: center; }
.hed_news_list_tit {  color: #fff; font-weight: bold; font-size: 12px; line-height: 1em; margin-bottom: 5px; }
.hed_news_list_txt { color: #fff; font-size: 14px;  line-height: 1.2em; }
.hed_news_list_txt a { text-decoration: underline; color: #fff;  font-size: 12px; }

.slick-list { height: 100px!important; box-sizing: border-box; }
.slick-slide { height: 100px!important; box-sizing: border-box; }



.logo_com { display: none; }
header.smaller #menu li a { color: #333!important;}

#header {
z-index: 10;
/*background-color: rgba(255,255,255,0.70)*/
}
/*--------------------*/
.hed_main { 
width: calc(100% - 60px);
height: 500px;
position: relative;
margin: 30px auto 120px;
}

/*.hed_main::before {
content: "";
width: 450px;
height: 240px;
position: absolute;
right: 0;
bottom: -70px;
display: block;
z-index: -1;
background: #518de1;
}*/


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

.headerslider {
width: 100%; 
position: relative;
height: 500px;
box-sizing: border-box;
overflow: hidden; 
}

.hedTitWrap {
height: 500px;
padding: 0;
}

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

.idxHedTitIn {
width: calc(100% - 60px);
z-index: 100;
position: absolute;
top: 50%;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
left: 15px;
}
.idxHedTitIn h2 { margin-bottom: 30px; text-shadow: 2px 0 10px rgba(0,0,0,.8); }
.idxHedTitIn h2 span.sp01 { font-size: 20px; color: #fff; font-weight: bold; line-height: 2em; display: block; margin-bottom: 10px; }
.idxHedTitIn h2 span.sp02 { font-size: 40px; display: block; color: #fff; font-weight: bold; }
.idxHedTitIn p span.sp03 { font-size: 14px; color: #fff; text-align: left; margin-top: 15px; text-shadow: 2px 0 10px rgba(0,0,0,.6); }
/*.slider_icon { position: absolute; right: -300px; width: 1200px; bottom: 0; z-index: 1000; opacity: .9;  }
.slider_icon_img { width: 100%; margin: 0 auto; }
.slider_icon_img img { width: 100%; height: auto; }*/

.hedTitWrap {
height: 100%;
position: relative;
}
.idx_logo { width: 430px; margin: 0 auto; }
.idx_logo span.logo_en { display: block; color: #fff; font-size: 22px; font-family: 'Open Sans', sans-serif; font-weight: 400; text-align: center; margin-top: 15px; }
.idx_logo img { width: 100%; height: auto; }
.idx_Hed_tit { font-size: 1.8vw; font-weight: 300; margin-bottom: 30px; color: #fff; text-align: center; }
.idx_Hed_txt { color: #fff; font-weight: 200!important; text-align: center; line-height: 2em; letter-spacing: 0.06em; font-size: 14px; }

#dot {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 500px;
min-height: 100vh;
background: url(../images/com/dot.png),rgba(0,0,0,0.2);
z-index: 100;
opacity: .9;
}

.hed_main_copy {
display: none;
}
.m-kv__scroll { display: none; }


/*----------------index共通------------------------------------*/

.idx_tit { font-size: 28px; color: #333; margin-bottom: 30px; font-weight: bold; letter-spacing: 0.07em; }
.idx_tit span.en { font-size: 35px; font-weight: bold; color: #074ca2; display: block; }
.idx_tit span.jp { font-size: 14px; display: block; margin-top: 15px; position: relative; color: #518de1; }
/*.idx_tit span.jp::before { content: ""; display: block; width: 30px; height: 1px; background: #074ca2; bottom: -15px; left: 0; position: absolute; }*/

.idx_tit_C { margin-bottom: 30px; font-weight: bold; letter-spacing: 0.07em; }
.idx_tit_C span.en { font-size: 35px; font-weight: bold; color: #074ca2; display: block; text-align: center; }
.idx_tit_C span.jp { font-size: 14px; display: block; margin-top: 15px; position: relative; text-align: center; color: #518de1;  }
/*.idx_tit_C span.jp::before { content: ""; display: block; width: 30px; height: 1px; background: #074ca2; bottom: -15px; left: 0; right: 0;  position: absolute; margin: auto; }*/
.idx_txt { margin-bottom: 30px; }



.idx_txtbox_35l { width: 100%; margin: 0 auto; }
.idx_imgbox_60r { width: 100%; margin: 0 auto; }
.idx_txtbox_35r { width: 100%; margin: 0 auto; }
.idx_imgbox_60l { width: 100%; margin: 0 auto; }
.idx_txtbox_40r { width: 100%; margin: 0 auto; }

/*--------------idx_box00---------------------------*/

#idx_box00 { padding: 70px 0px;  }
#idx_box00 .idx_txt { text-align: center; }

.particles-wrap {
background-size: cover;
overflow: hidden;
position: relative;
width: 100%; 
}

#particles { position: absolute; top: 0; left: 0; right: 0; width: 100%; margin: auto; padding: 100px 0px;  }

#hoge {
background-size: cover;
width: 100%;
overflow: hidden;
overflow: hidden;
position: relative;
min-width: 1200px;
}

.idx_box00 { width: 100%; margin: 0 auto;  position: relative; }
.idx_box00_txtbox { width: 100%; }
.idx_box00_tit { writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; text-orientation: upright; text-align: left; font-size: 28px; vertical-align: middle; margin: 0 auto; line-height: 2em; color: #765635; display: inline-block; font-weight: bold; }
.idx_box00_txt { text-align: center; font-size: 16px; margin: 0 auto; line-height: 3.5em; font-weight: 500; }


/*--------------idx_box01-----------------*/
#idx_box01 { margin-bottom: 70px; position: relative; }
/*#idx_box01::before { position: absolute; width: 100%; height: 300px;  left: 0; right: 0; bottom: -50px; background: #eff2f5; z-index: 0; content: ""; display: block; }*/
#idx_box01 .com_btn { margin: auto auto auto 0; }
.idx_box { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; position: relative; z-index: 10; }
.idx_txtbox { flex-basis: 100%; margin: 0 auto; }
.idx_imgbox { flex-basis: 100%; margin: 0 auto 30px; }

.idx_box01_imgin { width: 100%; margin: 0 auto; }
.idx_box01_img_l { width: 50%; float: left;  margin-top: 150px; }
.idx_box01_img_r { width: 100%; float: right; overflow: visible; margin-right: -350px; margin-top: -50px;  }
.idx_box01_img_l img,.idx_box01_img_r img { width: 100%; height: auto; }
.idx_box01_img { width: 100%; margin: 0 auto; position: relative; box-shadow: 0 0.5rem 2rem rgba(0,0,0,0.15); box-sizing: border-box; }
.idx_box01_img img { width: 100%; height: auto; }
.idx_box01_img::before {
position: absolute;
content: "";
display: block;
width: 30px;
height: 100%;
background: #518de1;
top: 0;
left: 0;
}

.idx_list_txt { width: 100%; margin: 0 auto; }
.idx_list_txt li { position: relative; padding-left: 23px; line-height: 1.8em; font-size: 16px;}
.idx_list_txt li:nth-child(n+2) { margin-top: 10px; }
.idx_list_txt li::before { content: "\f00c"; position: absolute; left: 0; top: 0px; font-size: 16px; color: #765635; font-family: "Font Awesome 5 Free"; font-weight: bold; display: block; }
.idx_list_txt li span { display: block; color: #765635; font-size: 15px; line-height: 1.5em; margin-top: 5px; }
/*--------------idx_box02-----------------*/
#idx_box02 { margin-bottom: 70px; position: relative;  }
#idx_box02 .idx_txt { text-align: center; }
#idx_box02 .com_btn { margin: auto auto auto 0;}
.idx_box02_img { width: 100%; margin: 0 auto; }
.idx_box02_img img { width: 100%; height: auto; }
.business_tit { margin-bottom: 30px; }
.business_tit span.en { display: block; color: #c6c9cc; font-weight: bold; margin-bottom: 20px; font-size: 18px; letter-spacing: 0.09em;  }
.business_tit span.jp { font-size: 18px; font-weight: bold; }
.business_txt { margin-bottom: 15px; }
.business_subtxt { margin-bottom: 30px; }
#idx_box02 .idx_box { margin-bottom: 50px; }



.service_list { width: 100%; margin: 0 auto; border-top: 1px solid #eaeaea;  border-bottom: 1px solid #eaeaea;}
.service_list li { display: flex; flex-wrap: wrap; position: relative; }
.service_list li:nth-child(3n+3) a { border-bottom: 0px; }
.service_list li a { display: block; padding: 50px; background: #fff; border-bottom: 1px solid #eaeaea; box-sizing: border-box;  }
.service_list li a:hover { -webkit-box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.2);
box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.2);
-webkit-transform: scale(1.02);
transform: scale(1.02); border: none; }
.service_list_img { width: 80%; margin: 0 auto 30px; }
.service_list_img img { width: 100%; height: auto; }
.service_list_txtbox { width: 100%; margin: 0 auto; }
.service_list_tit { margin-bottom: 15px; color: #518de1; font-size: 16px; font-weight: bold; text-align: center; }
.service_list_tit span.en { display: block; font-size: 21px; color: #074c9b; margin-bottom: 10px;  }
.service_list_subtxt { text-align: left; margin-bottom: 10px; }
.service_list_txt { text-align: left; margin-bottom: 30px;  }
.service_list_btn { font-size: 14px; font-weight: bold; color: #074c9b; text-align: right; position: absolute; right: 50px; bottom: 50px; display: flex; align-items: center; }
.service_list_btn span.en { padding-right: 5px; }





/*--------------idx_box03-----------------*/
#idx_box03 { margin-bottom: 70px; margin-top: 70px;  }
#idx_box03 .com_btn { margin: auto auto auto 0; margin-top: 30px; }
#idx_box03 .com_btn2 { margin: auto auto auto 0; margin-top: 30px; color: #fff; }
#idx_box03 .idx_tit span.en { color: #fff; }
#idx_box03 .idx_tit span.jp { color: #fff; }
#idx_box03 .idx_txt { color: #fff; }
.idx_box03_list { width: 100%; margin: 0 auto; }
.idx_box03_list li { width: 100%; }
.idx_box03_list li:nth-child(n+2) { margin-top: 50px; }
.idx_box03_imgbox { margin: 0 auto 30px; }
.idx_box03_img { width: 100%; margin: 0 auto; }
.idx_box03_img img { width: 100%; height: auto; }
.idx_box03_tit { font-size: 20px; margin-bottom: 15px; font-weight: bold; }
.idx_box03_subtxt { margin-top: 15px; }
.idx_box03_subtxt span.idx_box03_subtxt_subtit { font-size: 16px; font-weight: bold; display: block; margin-bottom: 10px; color: #074ca2; }
.idx_box03_subtxt span.idx_box03_subtxt_subtxt { font-size: 12px; display: block; margin-top: 10px; }

.product_box { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;  }
.product_txtbox { width: 95%;  padding: 50px 30px; background: #518de1; box-sizing: border-box; -webkit-box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.2);
box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.2); 
margin: 0 auto; 
margin-top: -100px; position: relative; }
.product_imgbox { width: 100%; margin: 0 auto; }
.product_img { width: 100%; margin:  0 auto; background: url("../images/index/product_img.jpg")center center; background-size: cover; height: 300px; }

.product_subtit { font-size: 16px; font-weight: bold; color: #fff; margin-bottom: 15px; }







/*----------idx_box04----------*/
#idx_box04 { position: relative; }
#idx_box04 .com_btn { margin: auto auto auto 0; margin-top: 30px;  }

.recruit_imgbox { width: 100%; margin: 0 auto; margin-top: -15px; position: relative; z-index: 0; margin-bottom: 30px; }
.recruit_subtit { font-size: 16px; font-weight: bold; margin-bottom: 30px; text-align: left; line-height: 1.8em;  }
.recruit_txt { text-align: left; position: relative; z-index: 10; }

.idx_box04_imgin { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; }
.idx_box04_imgL { flex-basis: 50%; max-width: 50%; position: relative; margin-top: 70px; }
.idx_box04_imgL::before {
content: "";
display: block;
width: 100%;
height: 70%;
position: absolute;
bottom: 0;
left: 0;
background: rgba(81,141,225,.15);
z-index: -1;
}
.idx_box04_imgR { flex-basis: 50%; max-width: 50%; position: relative; }
.idx_box04_imgR::before {
content: "";
display: block;
width: 100%;
height: 70%;
position: absolute;
bottom: 90px;
right: 0;
background: rgba(81,141,225,.15);
z-index: -1;
}
.idx_box04_imgL .idx_box04_img { width: 120%; margin: auto 0 auto auto; }
.idx_box04_imgL .idx_box04_img img { width: 100%; height: auto; }

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

/*-----------idx_box06--------------*/

#idx_box05 { background: #fff; padding: 70px 0px; }
#idx_box05 .com_btn { margin: auto 0 auto auto; margin-top: 30px;  }
.topics { width: 100%; margin: 0 auto; }
.topics dl:nth-child(2n+1) { background: #fff; padding: 20px; }
.topics dl:nth-child(2n+2) { background: #f3f3f3; padding: 20px; }
.topics dl dt { float: left; width: 30%; }
.topics dl dd { float: right; width: 65%; }


.news_list { width: 100%; margin: 0 auto; }
.news_list li { width: 100%; margin: 0 auto; }
.news_tit { width: 100%; margin: 0 auto; }
.news_txt { width: 100%; margin: 0 auto; }
.news_list li:nth-child(n+2) { margin-top: 10px; }
.news_list li:nth-child(2n+1) { background: #fff; padding: 15px; box-sizing: border-box; }
.news_list li:nth-child(2n+2) { background: #f3f3f3; padding: 15px; box-sizing: border-box; }
.news_tit span.date{ font-weight: bold; font-size: 14px;  }
.news_txt a { text-decoration: underline; }
.news_txt a:hover { color: #518ce0; }


.idx_box05_box { width: 100%; margin: 0 auto;  }
.idx_box05_boxL { width: 100%; margin: 0 auto 30px; }
.idx_box05_boxR { width: 100%; margin: 0 auto; }

.news_btn { width: 80%; margin: 0 auto; margin-top: 30px; }
.news_btn a { display: block; padding: 15px; color: #fff; font-weight: bold; border: 1px solid #518ce0; background: #518ce0; border-radius: 30px; text-align: center; }
.news_btn a:hover { background: #fff; color: #518ce0; }

/*------------topick-----------*/

.scroll-box {
width:98%;
overflow: auto;
-webkit-overflow-scrolling: touch;  /* 髫ｲ・ｷ繝ｻ・｣髫ｲ・､繝ｻ・ｧ驛｢・ｧ繝ｻ・ｹ驛｢・ｧ繝ｻ・ｯ驛｢譎｢・ｽ・ｭ驛｢譎｢・ｽ・ｼ驛｢譎｢・ｽ・ｫ */
padding: 1%;
height: 250px;
}

.scroll-box::-webkit-scrollbar {
height: 5px;
}

.scroll-box::-webkit-scrollbar-track {
border-radius: 0px;
background: #EEEEEE;
}

.scroll-box::-webkit-scrollbar-thumb {
border-radius: 5px;
background: #666666;
}


}