@charset "UTF-8";
/* 
	
CSS page.css */






/*//////////////////


#index


//////////////////*/

.indextitlebox{ margin-bottom: 25px; }
.indextitlebox .entitle{ color: #045DA4; font-weight: bold; font-size: 1.8rem; line-height: 1.6; text-align: center; }
.indextitlebox .maintitle{ font-size: 3.2rem; font-weight: 900; text-align: center; margin-bottom: 5px; line-height: 1.6; }
#index .section{ margin-bottom: 110px; }
#index .secwrap>.section:last-child{ margin-bottom: 0; }
@media screen and (max-width: 1040px){
	.indextitlebox .maintitle{ font-size: 3.4rem; }
}
@media screen and (max-width: 767px){
	.indextitlebox{ margin-bottom: 30px; }
	.indextitlebox .maintitle{ font-size: 3rem; }
	#index .section{ margin-bottom: 70px; }
}
@media screen and (max-width: 479px){
	.indextitlebox .maintitle{ font-size: 2.4rem; }
}






#index #secwrap_1{  padding-bottom: 100px; padding-top: 80px; }
#index #sec_1{  }
#index #sec_1 .maintitle{ font-weight: 900; text-align: center; line-height: 1.6; font-size: 3.2rem; margin-bottom: 30px; letter-spacing: 0.2em; }
#index #sec_1 .maintitle span{ font-weight: 900; }
#index #sec_1 .txt{ text-align: center; margin-bottom: 15px; }
#index #sec_1 .title{ position: relative; text-align: center; }
#index #sec_1 .title:before{ content: ""; background: #191919; display: inline-block; height: 1px; width: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin-top: auto; margin-bottom: auto; z-index: -1; }
#index #sec_1 .title>span{ font-weight: bold; display: inline-block; background: #fff; font-size: 2.4rem; padding: 20px 20px; }
#index #sec_1 .linklist{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; margin-left: -20px; }
#index #sec_1 .linklist>li{ margin-left: 20px; width: calc(33.33% - 20px); display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
#index #sec_1 .linklist>li>a{ border: 2px solid #191919; font-weight: bold; line-height: 1.6; padding: 19px 19px; text-decoration: none; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; width: 100%; -ms-align-items: center; align-items: center; justify-content: center; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
#index #sec_1 .linklist>li>a:hover{ background: #191919; color: #fff; }
#index #secwrap_1+.parallax-window{ position: relative; min-height: 410px; background: transparent; }
@media screen and (max-width: 1040px){
	#index #secwrap_1+.parallax-window{ min-height: 400px; }
}
@media screen and (max-width: 767px){
	#index #secwrap_1{ padding-top: 60px; padding-bottom: 70px; }
	#index #sec_1 .maintitle{ font-size: 2.8rem; margin-bottom: 20px; text-align: left; }
	#index #sec_1 .txt{ text-align: left; margin-bottom: 10px; }
	#index #sec_1 .txt .br1{ display: none; }
	#index #sec_1 .linklist{ display: block; margin-left: 0; margin-bottom: -20px; }
	#index #sec_1 .linklist>li{ margin-left: 0; width: 100%; display: block; margin-bottom: 20px; }
	#index #sec_1 .title{ line-height: 1.8; }
	#index #secwrap_1+.parallax-window{ min-height: 350px; /*background: url('module/img/index/s1_img1.jpg') no-repeat fixed; object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%;*/ }
}
@media screen and (max-width: 479px){
	#index #secwrap_1+.parallax-window{ min-height: 250px; }
}




#index #secwrap_2{ background: #f7f7f7; padding-top: 70px; padding-bottom: 80px; }
#index #sec_2{  }
#index #sec_2 .txt{ text-align: center; margin-bottom: 30px; }
#index #sec_2 .list{  }
#index #sec_2 .list>ul{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; margin-left: -15px; }
#index #sec_2 .list>ul>li{ margin-left: 15px; width: calc(33.33% - 15px) }
#index #sec_2 .list>ul>li>.inwrap{ background: #fff; padding: 40px 40px 50px; height: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
#index #sec_2 .list .title{ font-weight: bold; text-align: center; font-size: 2.4rem; margin-bottom: 10px; }
#index #sec_2 .list .txt1{  }
@media screen and (max-width: 1040px){
	#index #sec_2 .list{ overflow: hidden; }
	#index #sec_2 .list>ul{ display: block; margin-left: 0; margin-bottom: -15px; }
	#index #sec_2 .list>ul>li{ margin-left: 0; width: 100%; margin-bottom: 15px; }
	#index #sec_2 .list>ul>li>.inwrap{ padding: 30px 6% 40px; }
}
@media screen and (max-width: 767px){
	#index #secwrap_2{ padding-top: 60px; padding-bottom: 70px; }
	#index #sec_2 .txt{ text-align: left; }
}
@media screen and (max-width: 479px){
	#index #secwrap_2{ padding-top: 40px; padding-bottom: 50px; }
}




#index #secwrap_3{ background: #f7f7f7; padding-top: 70px; padding-bottom: 80px; }
#index #sec_3{  }
#index #sec_3{  }
#index #sec_3{  }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#index #secwrap_3{ padding-top: 60px; padding-bottom: 70px; }
}
@media screen and (max-width: 479px){
}


#index #secwrap_4{ padding-top: 70px; padding-bottom: 80px; }
#index #sec_4{ text-align:center; }
#index #sec_4 .indextitlebox .maintitle br { display:none; }
@media screen and (max-width: 1040px){
	#index #sec_4 .indextitlebox .maintitle br { display:block; }
}
@media screen and (max-width: 767px){
	#index #secwrap_4{ padding-top: 60px; padding-bottom: 70px; }
	#index #sec_4 .maintitle{ font-size: 2.8rem; margin-bottom: 20px; text-align: left; }
}




/*//////////////////


#about.greeting


//////////////////*/

#about.greeting #main{ padding-top: 0; }
#about.greeting #secwrap_1{ padding-top: 0; }
#about.greeting #sec_1{ padding-top: 0; padding-bottom: 0; margin-bottom: 70px; }
#about.greeting #sec_1 .imgbox{ padding-top: 90px; }
#about.greeting #sec_1 .imgbox .incnt{  }
#about.greeting #sec_1 .imgbox .incnt>.inwrap{ background: #fff; padding-bottom: 60px; position: relative; margin-bottom: -80px; }
#about.greeting #sec_1 .imgbox .incnt .img{ text-align: center; }
/*#about.greeting #sec_1 .imgbox .incnt .img>img{ max-width: 258px; }*/
#about.greeting #sec_1 .imgbox .incnt .img>img{ max-width: 248px; }
#about.greeting #sec_1 .txtbox{ background: #045DA4; padding-top: 145px; color: #fff; padding-bottom: 90px; }
#about.greeting #sec_1 .txtbox .incnt{  }
#about.greeting #sec_1 .txtbox .incnt .copy{ text-align: center; }
#about.greeting #sec_1 .txtbox .incnt .txt{  }
@media screen and (max-width: 1040px){
	#about.greeting #sec_1 .imgbox .incnt .img>img{ max-width: 200px; }
	#about.greeting #sec_1 .imgbox .incnt>.inwrap{ margin-bottom: -60px; padding-bottom: 50px; }
	#about.greeting #sec_1 .txtbox{ padding-top: 140px; }
}
@media screen and (max-width: 767px){
	#about.greeting #sec_1{ margin-bottom: 60px; }
	#about.greeting #sec_1 .imgbox{ padding-top: 50px; }
	#about.greeting #sec_1 .imgbox .incnt .img>img{ max-width: 180px; }
	#about.greeting #sec_1 .imgbox .incnt>.inwrap{ padding-bottom: 40px; margin-bottom: -50px; }
	#about.greeting #sec_1 .txtbox{ padding-top: 100px; padding-bottom: 50px; }
}
@media screen and (max-width: 479px){
	#about.greeting #sec_1 .imgbox .incnt .img>img{ max-width: 140px; }
}


#about.greeting #sec_2{  }
#about.greeting #sec_2 .box1{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; justify-content: space-between; }
#about.greeting #sec_2 .box1 .txtbox{ width: 48%; }
#about.greeting #sec_2 .box1 .txtbox .copy{  }
#about.greeting #sec_2 .box1 .txtbox .txt{  }
#about.greeting #sec_2 .box1 .txtbox .txt>p{ margin-bottom: 30px; }
#about.greeting #sec_2 .box1 .txtbox .txt>p:last-child{ margin-bottom: 0; }
#about.greeting #sec_2 .box1 .txtbox .namebox{ text-align: right; margin-top: 20px; }
#about.greeting #sec_2 .box1 .txtbox .namebox p{ font-weight: bold; }
#about.greeting #sec_2 .box1 .txtbox .namebox .name{ font-size: 2rem; }
#about.greeting #sec_2 .box1 .imgbox{ width: 46%; }
#about.greeting #sec_2 .box1 .imgbox>img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; }
@media screen and (max-width: 1040px){
	#about.greeting #sec_2 .box1 .imgbox{ width: 38%; }
	#about.greeting #sec_2 .box1 .txtbox{ width: 56% }
}
@media screen and (max-width: 767px){
	#about.greeting #sec_2 .box1{ display: block; }
	#about.greeting #sec_2 .box1 .imgbox{ width: 100%; margin-top: 30px; }
	#about.greeting #sec_2 .box1 .txtbox{ width: 100% }
	#about.greeting #sec_2 .box1 .imgbox>img{ height: 360px; object-position: 0 -70px }
}
@media screen and (max-width: 479px){
	#about.greeting #sec_2 .box1 .imgbox>img{ object-position: 0 }
}







/*//////////////////


#about.company


//////////////////*/

#about.company #sec_1{  }
/*#about.company #sec_1 .box1{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; justify-content: space-between; }
#about.company #sec_1 .box1 .tablebox{ width: 55%; }
#about.company #sec_1 .box1 .imgbox{  width: 38%; }*/
#about.company #sec_1 .box1 .imgbox{ margin-top: 50px; }
#about.company #sec_1 .box1 .tablebox>ul>li>dl>dt{ width: 100px; }
#about.company #sec_1 .box1 .tablebox>ul>li>dl>dd{ width: calc(100% - 100px) }

@media screen and (max-width: 1040px){
	/*#about.company #sec_1 .box1 .tablebox{ width: 63%; }
	#about.company #sec_1 .box1 .imgbox{  width: 33%; }*/
	#about.company #sec_1 .bg{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; }
}
@media screen and (max-width: 767px){
/*	#about.company #sec_1 .box1{ display: block; }
	#about.company #sec_1 .box1 .tablebox{ width: 100%; }
	#about.company #sec_1 .box1 .imgbox{  width: 100%; }*/
	#about.company #sec_1 .box1 .imgbox{ margin-top: 30px; }
	#about.company #sec_1 .bg{ height: 360px; }
}
@media screen and (max-width: 479px){
}

#about.company #sec_1 .box2{ margin-top: 50px; }
#about.company #sec_1 .box2>li{ margin-bottom: 20px; }
#about.company #sec_1 .box2>li:last-child{ margin-bottom: 0; }
#about.company #sec_1 .box2>li>dl{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; background: #F7F7F7; padding: 40px 75px; -ms-align-items: center; align-items: center; justify-content: space-between; }
#about.company #sec_1 .box2>li>dl>dt{ font-weight: bold; font-size: 2.4rem; width: 230px; letter-spacing: 0.1em; line-height: 1.8; }
#about.company #sec_1 .box2>li>dl>dd{ width: calc(100% - 230px) }
#about.company #sec_1 .box2>li>dl>dd .list{ margin-left: -30px; text-align: left; }
#about.company #sec_1 .box2>li>dl>dd .list>li{ display: inline-block; margin-left: 30px; }
@media screen and (max-width: 1040px){
	#about.company #sec_1 .box2>li>dl{ padding: 25px 6%; }
	#about.company #sec_1 .box2>li>dl>dt{ font-size: 2rem; width: 200px; }
	#about.company #sec_1 .box2>li>dl>dd{ width: calc(100% - 200px) }
}
@media screen and (max-width: 767px){
	#about.company #sec_1 .box2>li>dl{ display: block; }
	#about.company #sec_1 .box2>li>dl>dt,
	#about.company #sec_1 .box2>li>dl>dd{ width: 100%; }
	#about.company #sec_1 .box2>li>dl>dt{ margin-bottom: 10px; }
	#about.company #sec_1 .box2{ margin-bottom: 40px; margin-top: 30px; }
}
@media screen and (max-width: 479px){
}


#about.company #sec_2{ overflow: hidden; }
#about.company #sec_2>.incnt>.inwrap{ position: relative; height: 640px; }
#about.company #sec_2>.incnt>.inwrap .txtbox{  display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; margin-left: -70px; width: 320px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -ms-align-items: center; align-items: center; height: 100%; }
#about.company #sec_2>.incnt>.inwrap .txtbox>.inwrap{ background: #fff; padding: 50px 90px 60px 0; width: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
#about.company #sec_2>.incnt>.inwrap .txtbox .sectitlebox{ margin-bottom: 30px; }
#about.company #sec_2>.incnt>.inwrap .txtbox .sectitlebox .sectitle{ text-align: left; }
#about.company #sec_2>.incnt>.inwrap .txtbox .sectitlebox .entitle{ text-align: left; }
#about.company #sec_2>.incnt>.inwrap .txtbox .address{  }
#about.company #sec_2>.incnt>.inwrap .txtbox .link{ margin-top: 25px; }
#about.company #sec_2>.incnt>.inwrap .txtbox .link .btnlink{ max-width: 230px; width: 100%; text-align: center; }
#about.company #sec_2>.incnt>.inwrap .map{ position: absolute; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; top: 0; bottom: 0; left: 0; width: 100%; z-index: -1; }
#about.company #sec_2>.incnt>.inwrap .map iframe{ width: 1270px; }
@media screen and (max-width: 1270px){
	#about.company #sec_2>.incnt>.inwrap .txtbox{ width: 390px }
	#about.company #sec_2>.incnt>.inwrap .txtbox>.inwrap{ padding: 50px 90px 60px 70px; }
	#about.company #sec_2>.incnt>.inwrap .map iframe{ width: 1150px; }
}
@media screen and (max-width: 1040px){
	#about.company #sec_2>.incnt>.inwrap{ height: 540px; }
	#about.company #sec_2>.incnt>.inwrap .txtbox{ width: 360px }
	#about.company #sec_2>.incnt>.inwrap .txtbox>.inwrap{ padding: 50px 60px 60px 70px; }
	#about.company #sec_2>.incnt>.inwrap .map iframe{ width: 1000px; }
}
@media screen and (max-width: 767px){
	#about.company #sec_2>.incnt>.inwrap{ height: auto; }
	#about.company #sec_2>.incnt>.inwrap .txtbox{ display: block; margin-left: 0; height: auto; width: 100%; }
	#about.company #sec_2>.incnt>.inwrap .txtbox>.inwrap{ padding: 0; }
	#about.company #sec_2>.incnt>.inwrap .map{ position: static; margin-top: 30px; }
	#about.company #sec_2>.incnt>.inwrap .map iframe{ width: 100%; height: 360px; }
	#about.company #sec_2>.incnt>.inwrap .txtbox .sectitlebox .sectitle,
	#about.company #sec_2>.incnt>.inwrap .txtbox .sectitlebox .entitle,
	#about.company #sec_2>.incnt>.inwrap .txtbox .address,
	#about.company #sec_2>.incnt>.inwrap .txtbox .link{ text-align: center; }
}
@media screen and (max-width: 479px){
}

#about.company #sec_3 .tablebox>ul>li>dl>dt,
#about.company #sec_4 .tablebox>ul>li>dl>dt{ width: 140px; }
#about.company #sec_3 .tablebox>ul>li>dl>dd,
#about.company #sec_4 .tablebox>ul>li>dl>dd{ width: calc(100% - 140px) }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#about.company #sec_3 .tablebox>ul>li>dl>dt,
	#about.company #sec_4 .tablebox>ul>li>dl>dt{ width: 120px; }
	#about.company #sec_3 .tablebox>ul>li>dl>dd,
	#about.company #sec_4 .tablebox>ul>li>dl>dd{ width: calc(100% - 120px) }
}
@media screen and (max-width: 479px){
}








/*//////////////////


#about.technology


//////////////////*/

#about.technology #sec_1{  }
#about.technology #sec_1 .copy{ text-align: center; }
#about.technology #sec_1 .box1{  }
#about.technology #sec_1 .box1>.incnt{  }
#about.technology #sec_1 .box1>.incnt>.inwrap{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; justify-content: space-between; }
#about.technology #sec_1 .box1 .copybox{ width: 300px; padding-top: 10px; }
#about.technology #sec_1 .box1 .txt{ width: calc(100% - 368px) }
#about.technology #sec_1 .box1+.imgbox{ margin-top: 50px; padding-left: 60px; padding-right: 60px; position: relative; padding-bottom: 60px; overflow: hidden; }
#about.technology #sec_1 .box1+.imgbox .img{ position: relative; object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 600px; max-width: 1700px; margin-left: auto; margin-right: auto; }
#about.technology #sec_1 .box1+.imgbox>.bg{ background: #F2F7FA; position: absolute; z-index: -1; left: 230px; bottom: 0; width: 100vw; height: calc(100% - 50px); }
@media screen and (max-width: 1500px){
	#about.technology #sec_1 .box1+.imgbox .img{ height: auto; }
}
@media screen and (max-width: 1040px){
	#about.technology #sec_1 .box1>.incnt>.inwrap{ display: block; }
	#about.technology #sec_1 .box1 .copybox{ margin-bottom: 20px; padding-top: 0; width: 100%;  }
	#about.technology #sec_1 .box1 .copybox>.inwrap{ background: #045DA4; padding: 13px 24px; display: inline-block; line-height: 1; }
	#about.technology #sec_1 .box1 .copybox p{ display: inline; }
	#about.technology #sec_1 .box1 .copybox>.inwrap>p>span{ display: inline; background-color: transparent; padding: 0; }
	#about.technology #sec_1 .box1 .copybox p:nth-child(1)>span{ padding-right: 0; }
	#about.technology #sec_1 .box1 .copybox p:nth-child(2)>span{ padding-left: 0; }
	#about.technology #sec_1 .box1 .txt{ width: 100%; }
	#about.technology #sec_1 .box1+.imgbox{ margin-top: 40px; padding-left: 6%; padding-right: 6%; padding-bottom: 50px; }
	#about.technology #sec_1 .box1+.imgbox .img{ height: 400px; }
	#about.technology #sec_1 .box1+.imgbox>.bg{ left: calc(6% + 45px);  height: calc(100% - 40px); }
}
@media screen and (max-width: 767px){
	#about.technology #sec_1 {  }
	#about.technology #sec_1 .box1+.imgbox{ margin-top: 30px; }
	#about.technology #sec_1 .box1 .copybox>.inwrap{ padding: 13px 20px; }
	#about.technology #sec_1 .box1+.imgbox .img{ height: 350px; }
}
@media screen and (max-width: 639px){
	#about.technology #sec_1 .box1 .copybox>.inwrap{ line-height: 2; padding: 0; background-color: transparent; display: block; }
	#about.technology #sec_1 .box1 .copybox p{ display: block; }
	#about.technology #sec_1 .box1 .copybox>.inwrap>p>span{ display: inline-block; background: #045DA4; padding: 13px 15px; }
	#about.technology #sec_1 .box1+.imgbox{ padding-bottom: 40px; }
}
@media screen and (max-width: 479px){
	#about.technology #sec_1 .copy{ text-align: left; }
	#about.technology #sec_1 .box1+.imgbox .img{ height: 250px; }
	#about.technology #sec_1 .box1+.imgbox{ padding-bottom: 30px; }
}

#about.technology #sec_2{ overflow: hidden; position: relative; }
#about.technology #sec_2 .box1{  }
#about.technology #sec_2 .box1 .incnt{max-width: 1700px;}
#about.technology #sec_2 .box1 .incnt>.inwrap{display: -webkit-flex;display: -moz-flex;display: -ms-flex;display: -o-flex;display: flex;-webkit-flex-direction: row;-moz-flex-direction: row;-ms-flex-direction: row;-o-flex-direction: row;flex-direction: row;justify-content: space-between;margin-left: calc(50% - 520px);}
#about.technology #sec_2 .box1 .txtbox{  }
#about.technology #sec_2 .box1 .txtbox{width: 42%;/* padding-left: 12%; */-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
#about.technology #sec_2 .box1 .txtbox .copybox{ margin-bottom: 30px; }
#about.technology #sec_2 .box1 .txtbox .txt{  }
#about.technology #sec_2 .box1 .imgbox{ width: 53%; position: relative; left: 0; padding-bottom: 50px; }
#about.technology #sec_2 .box1 .imgbox img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 442px; }
#about.technology #sec_2 .box1 .imgbox>.bg{ background: #F2F7FA; position: absolute; z-index: -1; left: 45px; bottom: 0; width: 100vw; height: calc(100% - 50px); }

@media screen and (max-width: 1180px){
	#about.technology #sec_2 .box1 .incnt>.inwrap{margin-left:0;}
	#about.technology #sec_2 .box1 .txtbox{ padding-left: 0;  }
}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#about.technology #sec_2 .box1 .incnt>.inwrap{ -webkit-flex-direction: column; -moz-flex-direction: column; -ms-flex-direction: column; -o-flex-direction: column; flex-direction: column; }
	#about.technology #sec_2 .box1 .txtbox .copybox{ margin-bottom: 20px; }
	#about.technology #sec_2 .box1 .txtbox{ width: 100%; padding-left: 0%; margin-bottom: 30px; }
	#about.technology #sec_2 .box1 .imgbox{ width: 100%; padding-bottom: 40px; }
	#about.technology #sec_2 .box1 .imgbox img{ height: 350px; }
	#about.technology #sec_2 .box1 .imgbox>.bg{ height: calc(100% - 40px); }
}
@media screen and (max-width: 479px){
	#about.technology #sec_2 .box1 .imgbox{ padding-bottom: 30px; }
	#about.technology #sec_2 .box1 .imgbox img{ height: 250px; }
}

#about.technology #sec_2 .box2{ margin-top: 40px; }
#about.technology #sec_2 .box2 .imglist{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; }
#about.technology #sec_2 .box2 .imglist>li{  }
#about.technology #sec_2 .bgbox { padding: 55px 70px 50px 80px; background: #F7F7F7; }
#about.technology #sec_2 .bgbox .txtbox{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; justify-content: space-between; -ms-align-items: center; align-items: center; }
#about.technology #sec_2 .bgbox .txtbox .titlebox{ flex-shrink: 0; margin-right: 65px; }
#about.technology #sec_2 .bgbox .txtbox .titlebox .title{ font-weight: bold; font-size: 2.8rem; line-height: 1.8; margin-bottom: 5px; letter-spacing: 0.1em; }
#about.technology #sec_2 .bgbox .txtbox .titlebox .caution{  }
#about.technology #sec_2 .bgbox .txtbox .txt{  }
#about.technology #sec_2 .bgbox .txtbox+.list{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; justify-content: space-between; margin-left: -40px; margin-top: 30px; }
#about.technology #sec_2 .bgbox .txtbox+.list>li{ margin-left: 40px; width: calc(50% - 40px); }
#about.technology #sec_2 .bgbox .txtbox+.list>li .title{ font-weight: bold; font-size: 2rem; line-height: 1.8; margin-bottom: 10px; letter-spacing: 0.05em; }
#about.technology #sec_2 .bgbox .txtbox+.list>li .txt{  }
@media screen and (max-width: 1040px){
	#about.technology #sec_2 .box2 .imglist{ -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; -o-flex-wrap: wrap; flex-wrap: wrap; }
	#about.technology #sec_2 .box2 .imglist>li{ width: 50%; }
	#about.technology #sec_2 .box2 .imglist>li:nth-child(3){ width: 100%; }
	#about.technology #sec_2 .box2 .imglist>li img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 300px; }
	#about.technology #sec_2 .bgbox { padding: 55px 6% 50px 6%; }
	#about.technology #sec_2 .bgbox .txtbox{ display: block; }
	#about.technology #sec_2 .bgbox .txtbox+.list{ display: block; margin-left: 0; }
	#about.technology #sec_2 .bgbox .txtbox+.list>li{ margin-left: 0; width: 100%; margin-bottom: 25px; }
	#about.technology #sec_2 .bgbox .txtbox+.list>li:last-child{ margin-bottom: 0; }
	#about.technology #sec_2 .bgbox .txtbox .titlebox{ margin-right: 0; margin-bottom: 20px; }
	#about.technology #sec_2 .bgbox .txtbox .titlebox .title{ font-size: 2.4rem; }
	#about.technology #sec_2 .bgbox .txtbox .titlebox .title br{ display: none; }
}
@media screen and (max-width: 767px){
	#about.technology #sec_2 .box2 .imglist>li img{ height: 200px; }
	#about.technology #sec_2 .bgbox { padding: 35px 6% 30px 6%; }
	#about.technology #sec_2 .bgbox .txtbox .titlebox .title{ font-size: 2rem; }
	#about.technology #sec_2 .bgbox .txtbox+.list>li .title{ font-size: 1.8rem; }
}
@media screen and (max-width: 479px){
	#about.technology #sec_2 .bgbox .txtbox .titlebox .title br{ display: block; }
	#about.technology #sec_2 .box2 .imglist>li:nth-child(3) img{ height: 150px; }
	#about.technology #sec_2 .bgbox { padding: 30px 8% 25px 8%; }
}

#about.technology #sec_3{ position: relative; padding-bottom: 80px; }
#about.technology #sec_3 .incnt{max-width: 1700px;/* width: 100%; *//* padding-right: 60px; *//* padding-left: calc(50% - 590px); *//* -webkit-box-sizing: border-box; */-moz-box-sizing: border-box;/* box-sizing: border-box; */}
#about.technology #sec_3 .list{display: -webkit-flex;display: -moz-flex;display: -ms-flex;display: -o-flex;display: flex;-webkit-flex-direction: row;-moz-flex-direction: row;-ms-flex-direction: row;-o-flex-direction: row;flex-direction: row;justify-content: space-between;margin-left: calc(50% - 590px);}
#about.technology #sec_3 .list>li{/* margin-left: 50px; */width: calc(33.33% - 30px);}
#about.technology #sec_3 .list>li .imgbox{ }
#about.technology #sec_3 .list>li .imgbox img{  }
#about.technology #sec_3 .list>li .txtbox{ position: relative; padding-top: 55px; }
#about.technology #sec_3 .list>li .txtbox .copybox{ position: absolute; top: -27px; left: 20px; }
#about.technology #sec_3 .list>li .txt{  }
#about.technology #sec_3>.bg{ background: #F2F7FA; position: absolute; z-index: -1; left: 0; bottom: 0; width: calc(100% - 120px); height: calc(100% - 70px); }
@media screen and (max-width: 1380px){
    #about.technology #sec_3 .list{margin-left: 0;}

}
@media screen and (max-width: 1180px){
	#about.technology #sec_3 .list{ margin-left: -40px; }
	#about.technology #sec_3 .list>li{ margin-left: 40px; width: calc(33.33% - 40px) }
	#about.technology #sec_3 .list>li .txtbox .copybox>.inwrap>p>span{ font-size: 2.4rem; }
	#about.technology #sec_3 .list>li .txtbox{ padding-top: 45px; }
}
@media screen and (max-width: 1040px){
	#about.technology #sec_3{ padding-bottom: 50px; }
	#about.technology #sec_3 .incnt{ width: 88%; padding-right: 0; padding-left: 0; }
	#about.technology #sec_3 .list{ display: block; margin-left: 0; }
	#about.technology #sec_3 .list>li{ margin-left: 0; width: 100%; margin-bottom: 30px; }
	#about.technology #sec_3 .list>li:last-child{ margin-bottom: 0; }
	#about.technology #sec_3 .list>li .imgbox img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 300px; }
	#about.technology #sec_3>.bg{ width: calc(94% - 45px); height: calc(100% - 40px); display:none; }
}
@media screen and (max-width: 767px){
	#about.technology #sec_3{ padding-bottom: 40px; }
	#about.technology #sec_3 .list>li .imgbox img{ height: 200px; }
	#about.technology #sec_3 .list>li .txtbox .copybox>.inwrap>p>span{ font-size: 2rem; }
	#about.technology #sec_3 .list>li .txtbox{ padding-top: 35px; }
}
@media screen and (max-width: 479px){
	#about.technology #sec_3{ padding-bottom: 30px; }
}








/*//////////////////


#service


//////////////////*/
#service .section>.inwrap{ overflow: hidden; position: relative; }

#service .copytxt{ font-size: 2.4rem; letter-spacing: 0.05em; margin-bottom: 15px; line-height: 1.6; font-weight: bold; }
#service .copytxt.style1{ font-size: 2.8rem; }
@media screen and (max-width: 1040px) {
	#service .copytxt.style1 { font-size: 2.4rem; }
	#service .copytxt { font-size: 2.2rem; }
}
@media screen and (max-width: 767px) { 
	#service .copytxt.style1 { font-size: 2rem; }
	#service .copytxt { font-size: 1.8rem; }
}

#service .topbox .incnt{ max-width: 1700px; }
#service .topbox .incnt>.inwrap{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; justify-content: space-between; }
#service .topbox .txtbox{  }
#service .topbox .txtbox{ width: 53%; padding-left: 12%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
#service #sec_1 .topbox .sectitlebox{ padding-left: 12%; }
#service .topbox .sectitlebox .sectitle{ text-align: left; }
#service .topbox .sectitlebox .entitle{ text-align: left; }
#service .topbox .txtbox .txt{  }
#service .topbox .txtbox .list{ margin-left: -15px; margin-top: 20px; text-align: left; }
#service .topbox .txtbox .list>li{ font-size: 2rem; font-weight: bold; margin-left: 15px; display: inline-block; line-height: 1.6; }
#service .topbox .imgbox{ width: 42%;  }
#service .topbox .imgbox img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 550px; object-position: top }
#service #sec_1 .topbox .imgbox img{ height: 440px; object-position: inherit; }
#service .secwrap .section:nth-child(even) .topbox .incnt>.inwrap{ -webkit-flex-direction: row-reverse; -moz-flex-direction: row-reverse; -ms-flex-direction: row-reverse; -o-flex-direction: row-reverse; flex-direction: row-reverse; }
#service .secwrap .section:nth-child(even) .topbox .txtbox{ padding-left: 0; padding-right: 12%; }
@media screen and (max-width: 1040px){
	#service .topbox .incnt>.inwrap{ display: block; }
	#service .topbox .sectitlebox{ padding-left: 0%; }
	#service .topbox .txtbox{ width: 100%; padding-left: 0%; }
	#service #sec_1 .topbox .sectitlebox{ padding-left: 0%; }
	#service .topbox .imgbox{ width: 100%; margin-top: 30px; }
	#service .topbox .imgbox img{ height: 400px; }
	#service #sec_1 .topbox .imgbox img{ height: 350px; }
	#service .secwrap .section:nth-child(even) .topbox .txtbox{ padding-right: 0; }
}
@media screen and (max-width: 767px){
	#service .topbox .imgbox img{ height: 350px; }
	#service #sec_1 .topbox .imgbox img{ height: 250px; }
	#service .topbox .txtbox .list>li{ font-size: 1.8rem; line-height: 1.8; }
	#service .topbox .txtbox .list{ margin-top: 10px; }
}
@media screen and (max-width: 479px){
	#service .topbox .imgbox img{ height: 250px; }
	#service #sec_1 .topbox .imgbox img{ height: 200px; }
}


#service .underbox{ position: relative; left: 0; padding: 45px 60px 0; }
#service .underbox>.incnt{ padding-bottom: 40px; }
#service .underbox .bgbox{ background: #fff; padding: 50px 70px 50px 80px; }
#service .underbox>.incnt>.bg{ background: #F7F7F7; position: absolute; z-index: -1; left: -70px; bottom: 0; width: 100vw; height: calc(100% + 110px); }
#service .secwrap .section:nth-child(even) .underbox>.bg{ left: auto; right: 160px; }
#service .secwrap .section:nth-child(even) .bgbox{ padding: 50px 70px; }
@media screen and (max-width: 1040px){
	#service .underbox{ padding-left: 0; padding-right: 0; }
	#service .underbox>.incnt>.bg{ left: -10%; width: 110vw }
	#service .underbox .bgbox,
	#service .secwrap .section:nth-child(even) .bgbox{ padding: 45px 6%; }
	#service .secwrap .section:nth-child(even) .underbox>.bg{ right: 10%; }
}
@media screen and (max-width: 767px){
	#service .underbox{ padding-top: 40px; }
	#service .underbox .bgbox,
	#service .secwrap .section:nth-child(even) .bgbox{ padding: 25px 6% 40px; }
}
@media screen and (max-width: 479px){
	#service .underbox{ padding-top: 30px; }
}


#service #sec_1{  }
#service #sec_1 .underbox .bgbox .box1{ margin-bottom: -10px; overflow: hidden; }
#service #sec_1 .underbox .bgbox .box1 .txtbox{ margin-bottom: 10px; }
#service #sec_1 .underbox .bgbox .box1 .txtbox .copytxt{ margin-bottom: 10px; }
#service #sec_1 .underbox .bgbox .box1 .txtbox .txt{  }
#service #sec_1 .underbox .bgbox .box1 .txtbox .link1{ margin-top: 30px; }
#service #sec_1 .underbox .bgbox .box1 .txtbox .link1 .btnlink{ max-width: 280px; width: 100%; text-align: center; }
#service #sec_1 .underbox .bgbox .box1 .imgbox{ width: 45%; margin-left: 5%; float: right; margin-bottom: 10px; }
#service #sec_1 .underbox .bgbox .link2{ margin-top: 35px; }
#service #sec_1 .underbox .bgbox .link2>a{ background: #045DA4; color: #fff; padding: 35px 100px 35px 90px; position: relative; text-align: center; display: block; text-decoration: none; border: 1px solid #045DA4; }
#service #sec_1 .underbox .bgbox .link2>a:hover{ background: #fff; color: #045DA4; }
#service #sec_1 .underbox .bgbox .link2 .maintxt{ font-weight: bold; font-size: 2.8rem; line-height: 1.6; display: inline-block; margin-left: 10px; letter-spacing: 0.07em; }
#service #sec_1 .underbox .bgbox .link2 .caution{ display: inline-block; margin-left: 10px; }
#service #sec_1 .underbox .bgbox .link2>a>svg{ width: 36px; height: 36px; position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; right: 30px; }
#service #sec_1 .underbox .bgbox .box2{ margin-top: 60px; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; justify-content: space-between; }
#service #sec_1 .underbox .bgbox .box2 .txtbox{ width: 50%; }
#service #sec_1 .underbox .bgbox .box2 .txtbox .list1{ margin-top: -10px; }
#service #sec_1 .underbox .bgbox .box2 .txtbox .list1>li{ margin-bottom: 40px; }
#service #sec_1 .underbox .bgbox .box2 .txtbox .list1>li:last-child{ margin-bottom: 0; }
#service #sec_1 .underbox .bgbox .box2 .txtbox .list1>li .copytxt{ margin-bottom: 10px; }
#service #sec_1 .underbox .bgbox .box2 .txtbox .list1>li .txt{  }
#service #sec_1 .underbox .bgbox .box2 .txtbox .list1>li .list2{ margin-top: 15px; }
#service #sec_1 .underbox .bgbox .box2 .txtbox .list1>li .list2>li{ font-size: 2rem; letter-spacing: 0.1em; font-weight: bold; line-height: 1.8; padding-left: 1em!important; text-indent: -1em; }
#service #sec_1 .underbox .bgbox .box2 .imgbox{ width: 45%;  }
#service #sec_1 .underbox .bgbox .box2 .imgbox .imglist{ height: 100%; }
#service #sec_1 .underbox .bgbox .box2 .imgbox .imglist>li{ height: 49%; }
#service #sec_1 .underbox .bgbox .box2 .imgbox .imglist>li>img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; }
@media screen and (max-width: 1040px){
	#service #sec_1 .underbox .bgbox .link2 .maintxt{ font-size: 2.4rem; }
	#service #sec_1 .underbox .bgbox .box2{ display: block; }
	#service #sec_1 .underbox .bgbox .box2 .txtbox,
	#service #sec_1 .underbox .bgbox .box2 .imgbox{ width: 100%; }
	#service #sec_1 .underbox .bgbox .box2 .imgbox{ margin-top: 40px; }
	#service #sec_1 .underbox .bgbox .box2 .txtbox .list1>li{ margin-bottom: 30px; }
	#service #sec_1 .underbox .bgbox .box2 .txtbox .list1>li .list2>li{ margin-bottom: 5px; }
	#service #sec_1 .underbox .bgbox .box2 .txtbox .list1>li .list2>li:last-child{ margin-bottom: 0; }
	#service #sec_1 .underbox .bgbox .box2 .imgbox .imglist{ height: auto; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; }
	#service #sec_1 .underbox .bgbox .box2 .imgbox .imglist>li{ height: auto; width: 50%; }
	#service #sec_1 .underbox .bgbox .box2 .imgbox .imglist>li>img{ height: auto; }
}
@media screen and (max-width: 767px){
	#service #sec_1 .underbox .bgbox .link2 .maintxt{ font-size: 2rem; }
	#service #sec_1 .underbox .bgbox .box2 .txtbox .list1>li .list2>li{ font-size: 1.8rem; }
	#service #sec_1 .underbox .bgbox .box1{ margin-bottom: 0; overflow: auto; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: column-reverse; -moz-flex-direction: column-reverse; -ms-flex-direction: column-reverse; -o-flex-direction: column-reverse; flex-direction: column-reverse; }
	#service #sec_1 .underbox .bgbox .box1 .txtbox{ margin-bottom: 0; }
	#service #sec_1 .underbox .bgbox .box1 .txtbox .link1{ margin-top: 15px; }
	#service #sec_1 .underbox .bgbox .box1 .imgbox{ width: 100%; margin-left: 0; float: none; margin-bottom: 0; margin-top: 30px; }
	#service #sec_1 .underbox .bgbox .box1 .imgbox img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 300px; }
	#service #sec_1 .underbox .bgbox .box2{ margin-top: 40px; }
	#service #sec_1 .underbox .bgbox .box2 .imgbox{ margin-top: 25px; }
	#service #sec_1 .underbox .bgbox .box2 .imgbox .imglist{ display: block; }
	#service #sec_1 .underbox .bgbox .box2 .imgbox .imglist>li{ width: 100%; }
	#service #sec_1 .underbox .bgbox .box2 .imgbox .imglist>li img{ height: 200px; }
	#service #sec_1 .underbox .bgbox .box2 .txtbox .list1>li{ margin-bottom: 20px; }
	#service #sec_1 .underbox .bgbox .link2>a{ padding: 30px 70px 30px 6%; text-align: left; }
	#service #sec_1 .underbox .bgbox .link2>a>svg{ width: 26px; height: 26px;  right: 20px; }
}
@media screen and (max-width: 479px){
	#service #sec_1 .underbox .bgbox .box1 .imgbox img{ height: 200px; }
	#service #sec_1 .underbox .bgbox .box2 .imgbox .imglist>li img{ height: 150px; }
}


#service #sec_2{ padding-top: 15px; }
#service #sec_2 .underbox{  }
#service #sec_2 .underbox .bgbox{  }
#service #sec_2 .underbox .bgbox .list{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; justify-content: space-between; margin-left: -40px; }
#service #sec_2 .underbox .bgbox .list>li{ margin-left: 40px; width: calc(33.33% - 40px) }
#service #sec_2 .underbox .bgbox .list>li .title{ font-size: 2rem; letter-spacing: 0.1em; font-weight: bold; line-height: 1.8; margin-bottom: 10px; }
#service #sec_2 .underbox .bgbox .list>li .txt{  }
#service #sec_2 .underbox .bgbox .list._1{ display: block; margin-left: 0; }
#service #sec_2 .underbox .bgbox .list._1>li{ margin-left: 0; width: 100% }
@media screen and (max-width: 1040px){
	#service #sec_2{ padding-top: 0; }
	#service #sec_2 .underbox .bgbox .list{ display: block; margin-left: 0; }
	#service #sec_2 .underbox .bgbox .list>li{ margin-left: 0; width: 100%; margin-bottom: 20px; }
	#service #sec_2 .underbox .bgbox .list>li:last-child{ margin-bottom: 0; }
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 479px){
}


#service #sec_3{  }
#service #sec_3 .underbox{  }
#service #sec_3 .contactbox{ background: #045DA4; color: #fff; padding: 55px 0; margin-bottom: 25px; }
#service #sec_3 .contactbox>.inwrap{ max-width: 720px; width: 84%; margin-left: auto; margin-right: auto; }
#service #sec_3 .contactbox .copytxt{ text-align: center;  }
#service #sec_3 .contactbox .txt{  }
#service #sec_3 .contactbox .contactlist{ margin-top: 15px;  margin-left: -20px; text-align: center; }
#service #sec_3 .contactbox .contactlist>li{ display: inline-block; vertical-align: middle; margin-left: 20px; font-size: 2.4rem; font-weight: bold; }
#service #sec_3 .contactbox .contactlist>li a{ color: #fff; text-decoration: none; letter-spacing: 0.15em; }
#service #sec_3 .contactbox .contactlist>li svg{  }
#service #sec_3 .contactbox .contactlist>li.tel svg{ width: 26px; height: 26px; vertical-align: -5px; }
#service #sec_3 .contactbox .contactlist>li.contact{ padding-left: 3px; }
#service #sec_3 .contactbox .contactlist>li.contact svg{ width: 20px; height: 16px; margin-right: 3px; }
#service #sec_3 .contactbox .contactlist>li.contact a:hover{ color: #ccc; }
#service #sec_3 .flowlist{  }
#service #sec_3 .flowlist>li{ margin-bottom: 20px; position: relative; }
#service #sec_3 .flowlist>li>.arr{ position: absolute; left: 0; right: 0; bottom: -10px; margin-left: auto; margin-right: auto; width: 30px; height: 18px; }
#service #sec_3 .flowlist>li:last-child{ margin-bottom: 0; }
#service #sec_3 .flowlist>li>.inwrap{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; background: #F7FAFC; -ms-align-items: center; align-items: center; justify-content: space-between; padding: 30px 60px; }
#service #sec_3 .flowlist .title{ font-weight: bold; font-size: 2rem; color: #045DA4; width: 240px; }
#service #sec_3 .flowlist .txt{ width: calc(100% - 250px) }
@media screen and (max-width: 1040px){
	#service #sec_3 .flowlist>li>.inwrap{ display: block; padding: 25px 8%; }
	#service #sec_3 .flowlist .title,
	#service #sec_3 .flowlist .txt{ width: 100%; }
}
@media screen and (max-width: 767px){
	#service #sec_3 .contactbox{ padding: 40px 0; }
	#service #sec_3 .flowlist .title{ font-size: 1.8rem; }
}
@media screen and (max-width: 639px){
	#service #sec_3 .contactbox .copytxt{ text-align: left;  }
}
@media screen and (max-width: 479px){
	#service #sec_3 .contactbox .contactlist{ text-align: left; }
}








/*//////////////////


#contact


//////////////////*/

#contact:not(.thanks) #sec_1 .contactbox{ background: #045DA4; color: #fff; padding: 55px 0; }
#contact:not(.thanks) #sec_1 .contactbox>.inwrap{ max-width: 720px; width: 84%; margin-left: auto; margin-right: auto; }
#contact:not(.thanks) #sec_1 .contactbox .copytxt{ text-align: center; font-size: 2.8rem; font-weight: bold; line-height: 1.8; margin-bottom: 10px; letter-spacing: 0.1em; }
#contact:not(.thanks) #sec_1 .contactbox .copytxt span{ font-weight: bold; }
#contact:not(.thanks) #sec_1 .contactbox .txt{  }
#contact:not(.thanks) #sec_1 .contactbox .contactlist{ margin-top: 15px;  margin-left: -20px; text-align: center; margin-bottom: -15px; }
#contact:not(.thanks) #sec_1 .contactbox .contactlist>li{ display: inline-block; vertical-align: top; margin-left: 20px; margin-bottom: 15px; }
#contact:not(.thanks) #sec_1 .contactbox .contactlist>li  .maintxt{  }
#contact:not(.thanks) #sec_1 .contactbox .contactlist>li a{ color: #fff; text-decoration: none; }
#contact:not(.thanks) #sec_1 .contactbox .contactlist>li svg{  } 
#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.tel .maintxt{ font-weight: bold; font-size: 3.2rem; line-height: 1.6; letter-spacing: 0.2em; }
#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.tel .subtxt{ letter-spacing: 0.15em; }
#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.tel svg{ width: 34px; height: 34px; vertical-align: -5px; margin-right: -3px; }
#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.fax .maintxt{ font-weight: bold; font-size: 2.4rem; letter-spacing: 0.2em; }
#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.fax .maintxt ._1{ display: inline-block; margin-left: 3px; margin-right: 3px; }
#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.fax .maintxt .faxnum{ font-weight: bold; font-size: 3.2rem; line-height: 1.4; }
@media screen and (max-width: 1040px){
	#contact:not(.thanks) #sec_1 .contactbox .copytxt{ font-size: 2.4rem; }
	#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.tel .maintxt,
	#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.fax .maintxt .faxnum{ font-size: 2.8rem; }
	#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.fax .maintxt{ font-size: 1.8rem; }
	#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.tel .subtxt{ font-size: 1.4rem; }
}
@media screen and (max-width: 767px){
	#contact:not(.thanks) #sec_1 .contactbox{ padding: 40px 0; }
	#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.tel .maintxt,
	#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.fax .maintxt .faxnum{ font-size: 2.4rem; }
	#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.tel svg{ margin-right: 0; }
	#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.tel svg{ width: 26px; height: 26px; }
	#contact:not(.thanks) #sec_1 .contactbox .contactlist>li.tel .subtxt{ font-size: 1.2rem; }
}
@media screen and (max-width: 639px){
	#contact:not(.thanks) #sec_1 .contactbox .copytxt{ text-align: left;  }
}
@media screen and (max-width: 479px){
	#contact:not(.thanks) #sec_1 .contactbox .contactlist{ text-align: left; }
	#contact:not(.thanks) #sec_1 .contactbox .copytxt{ font-size: 2.2rem; }
}


#contact.thanks #sec_1{ padding-top: 20px; }
#contact.thanks .blocktitle{ margin-bottom: 40px; text-align: center; }
#contact.thanks #sec_1 .txt,
#contact.thanks #sec_1 .txt1{ text-align: center; }
#contact.thanks #sec_1 .txt1{ font-size: 1em; }
#contact.thanks #sec_1 .teltxt{ margin-top: 40px; margin-left: -10px; text-align: center; }
#contact.thanks #sec_1 .teltxt .maintxt{ display: inline-block; vertical-align: middle; margin-left: 10px; }
#contact.thanks #sec_1 .teltxt .maintxt .tel{ font-weight: bold; font-size: 3.2rem; line-height: 1.6; letter-spacing: 0.15em; text-decoration: none; }
#contact.thanks #sec_1 .teltxt .maintxt svg{ width: 34px; height: 34px; vertical-align: -5px; margin-right: 5px; }
#contact.thanks #sec_1 .teltxt .maintxt svg .tel_st0.st0{fill:#191919;}
#contact.thanks #sec_1 .teltxt .opentime{ display: inline-block; vertical-align: middle; margin-left: 10px; letter-spacing: 0.15em; }
#contact.thanks #sec_1 .link{ text-align: center; margin-top: 65px; }
#contact.thanks #sec_1 .link a{ max-width: 280px; width: 100%; }
@media screen and (max-width: 1040px){
	#contact.thanks #sec_1{ padding-top: 0; }
	#contact.thanks #sec_1 .teltxt .maintxt .tel{ font-size: 2.8rem; }
}
@media screen and (max-width: 767px){
	#contact.thanks #sec_1 .teltxt{ margin-top: 30px; }
	#contact.thanks #sec_1 .link{ margin-top: 50px; }
	#contact.thanks #sec_1 .teltxt .maintxt .tel{ font-size: 2.4rem; }
	#contact.thanks #sec_1 .teltxt .maintxt svg{ width: 26px; height: 26px; }
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
	#contact.thanks #sec_1 .txt,
	#contact.thanks #sec_1 .txt1{ text-align: left; }
}








/*//////////////////


#recruit.message


//////////////////*/



#recruit.message #sec_1 .imgbox{ margin-top: 50px; padding-left: 60px; padding-right: 60px; position: relative; padding-bottom: 60px; overflow: hidden; }
#recruit.message #sec_1 .imgbox .img{ position: relative; object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 600px; max-width: 1700px; margin-left: auto; margin-right: auto; }
#recruit.message #sec_1 .imgbox>.bg{ background: #F2F7FA; position: absolute; z-index: -1; left: 230px; bottom: 0; width: 100vw; height: calc(100% - 50px); }
@media screen and (max-width: 1500px){
	#recruit.message #sec_1 .imgbox .img{ height: auto; }
}
@media screen and (max-width: 1040px){
	#recruit.message #sec_1 .imgbox{ margin-top: 40px; padding-left: 6%; padding-right: 6%; padding-bottom: 50px; }
	#recruit.message #sec_1 .imgbox .img{ height: 400px; }
	#recruit.message #sec_1 .imgbox>.bg{ left: calc(6% + 45px);  height: calc(100% - 40px); }
}
@media screen and (max-width: 767px){
	#recruit.message #sec_1 .imgbox{ margin-bottom: 30px; margin-top: 0; }
	#recruit.message #sec_1 .imgbox .img{ height: 350px; }
}
@media screen and (max-width: 639px){
	#recruit.message #sec_1 .imgbox{ padding-bottom: 40px; }
}
@media screen and (max-width: 479px){
	#recruit.message #sec_1 .imgbox .img{ height: 250px; }
	#recruit.message #sec_1 .imgbox{ padding-bottom: 30px; }
}








/*//////////////////


#recruit.professional


//////////////////*/

#recruit.professional #sec_2{  }
#recruit.professional #sec_2 .list1{  }
#recruit.professional #sec_2 .list1>li{ margin-bottom: 40px; }
#recruit.professional #sec_2 .list1>li:last-child{ margin-bottom: 0; }
#recruit.professional #sec_2 .list1>li>.inwrap{ display: flex; flex-direction: row; }
#recruit.professional #sec_2 .list1>li:nth-child(odd)>.inwrap{ flex-direction: row-reverse; }
#recruit.professional #sec_2 .list1>li>.inwrap .txtbox{ background: #f7f7f7; padding: 75px 6% 70px; }
#recruit.professional #sec_2 .list1>li>.inwrap .txtbox .copybox{ margin-bottom: 30px; }
#recruit.professional #sec_2 .list1>li>.inwrap .txtbox .txt{  }
#recruit.professional #sec_2 .list1>li>.inwrap .imgbox{ width: 38.4%; flex-shrink: 0 }
#recruit.professional #sec_2 .list1>li>.inwrap .imgbox>img{ object-fit: cover; font-family: 'object-fit: cover;'; width: 100%; height: 100%; }

#recruit.professional #sec_2 .link1{ margin-top: 35px; max-width: 886px; width: 100%; margin-left: auto; margin-right: auto; }
#recruit.professional #sec_2 .link1>a{ background: #045DA4; color: #fff; padding: 35px 100px 35px 90px; position: relative; text-align: center; display: block; text-decoration: none; border: 1px solid #045DA4; }
#recruit.professional #sec_2 .link1>a:hover{ background: #fff; color: #045DA4; }
#recruit.professional #sec_2 .link1 .maintxt{ font-weight: bold; font-size: 2.8rem; line-height: 1.6; display: inline-block; margin-left: 10px; letter-spacing: 0.07em; }
#recruit.professional #sec_2 .link1 .caution{ display: inline-block; margin-left: 10px; }
#recruit.professional #sec_2 .link1>a>svg{ width: 36px; height: 36px; position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; right: 30px; }
@media screen and (max-width: 1040px){
	#recruit.professional #sec_2 .link1 .maintxt{ font-size: 2.4rem; }
	#recruit.professional #sec_2 .list1>li>.inwrap .imgbox{ width: 45%; }
	#recruit.professional #sec_2 .list1>li>.inwrap .txtbox{ padding: 55px 6% 50px; }
	#recruit.professional #sec_2 .list1>li>.inwrap .txtbox .copybox{ margin-bottom: 20px; }
}
@media screen and (max-width: 767px){
	#recruit.professional #sec_2 .list1>li{ margin-bottom: 30px; }
	#recruit.professional #sec_2 .list1>li>.inwrap{ display: block; }
	#recruit.professional #sec_2 .list1>li>.inwrap .imgbox{ width: 100%; height: 300px; }
	#recruit.professional #sec_2 .list1>li>.inwrap .txtbox{ padding: 35px 8% 30px; }
	#recruit.professional #sec_2 .link1 .maintxt{ font-size: 2rem; }
	#recruit.professional #sec_2 .link1>a{ padding: 30px 70px 30px 6%; text-align: left; }
	#recruit.professional #sec_2 .link1>a>svg{ width: 26px; height: 26px;  right: 20px; }
}
@media screen and (max-width: 479px){
	#recruit.professional #sec_2 .list1>li>.inwrap .imgbox{ height: 200px; }
}



#recruit.professional #sec_3{  }
#recruit.professional #sec_3 .list1{ display: flex; flex-direction: row; justify-content: space-between; margin-left: -15px; margin-bottom: -15px; flex-wrap: wrap; }
#recruit.professional #sec_3 .list1>li{ margin-left: 15px; width: calc(50% - 15px); margin-bottom: 15px; }
#recruit.professional #sec_3 .list1>li>.inwrap{ background: #f7f7f7; padding: 40px 8%; box-sizing: border-box; width: 100%; height: 100%; }
#recruit.professional #sec_3 .list1>li .title{ font-weight: bold; font-size: 2.4rem; line-height: 1.8; margin-bottom: 15px; text-align: center; }
#recruit.professional #sec_3 .list1>li .txt{  }

#recruit.professional #sec_3 .imglist{ display: flex; flex-direction: row; }
#recruit.professional #sec_3 .imglist>li{  }
#recruit.professional #sec_3 .imglist>li>img{  }
@media screen and (max-width: 1040px){
	#recruit.professional #sec_3 .list1>li>.inwrap{ padding: 30px 8%; }
}
@media screen and (max-width: 767px) { 
	#recruit.professional #sec_3 .list1>li .title { font-size: 1.8rem; }
	#recruit.professional #sec_3 .imglist{ display: block; }
	#recruit.professional #sec_3 .imglist>li>img{ object-fit: cover; font-family: 'object-fit: cover;'; width: 100%; height: 250px; }
}
@media screen and (max-width: 639px) { 
	#recruit.professional #sec_3 .list1{ display: block; margin-left: 0; }
	#recruit.professional #sec_3 .list1>li{ margin-left: 0; width: 100%; }
}








/*//////////////////


#recruit.bestteam.index


//////////////////*/

#recruit.bestteam.index #sec_1{  }
#recruit.bestteam.index #sec_1 .list1{  }
#recruit.bestteam.index #sec_1 .list1>li{ margin-bottom: 60px; }
#recruit.bestteam.index #sec_1 .list1>li:last-child{ margin-bottom: 0; }
#recruit.bestteam.index #sec_1 .list1>li>.inwrap{ text-decoration: none; }
#recruit.bestteam.index #sec_1 .list1 .img{ position: relative; z-index: 1; }
#recruit.bestteam.index #sec_1 .list1 .img>img{  }
#recruit.bestteam.index #sec_1 .list1 .img .entrydate{ position: absolute; bottom: 7px; right: 15px; font-weight: bold; }
#recruit.bestteam.index #sec_1 .list1 .txtbox{ padding: 0 4%; position: relative; z-index: 2; }
#recruit.bestteam.index #sec_1 .list1 .txtbox .icon{ margin-top: -20px; }
#recruit.bestteam.index #sec_1 .list1 .txtbox .icon>span{ font-weight: bold; font-size: 1.8rem; color: #405da4; background: #f7f7f7; line-height: 1; padding: 10px 18px; display: inline-block; }
/* #recruit.bestteam.index #sec_1 .list1 .txtbox .name{ margin-top: 15px; font-weight: bold; font-size: 1.8rem; } */
@media screen and (max-width: 767px) { 
	#recruit.bestteam.index #sec_1 .list1>li{ margin-bottom: 40px; }
}








/*//////////////////


#recruit.bestteam.single


//////////////////*/

@media screen and (max-width: 767px) { 
	#recruit.bestteam.single #sec_1 .img2 img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 300px; }
}








/*//////////////////


#recruit.information


//////////////////*/

#recruit.information .tablebox>ul>li>dl>dt{ width: 220px; box-sizing: border-box; padding-left: 40px; padding-right: 40px; }
#recruit.information .tablebox>ul>li>dl>dd{ width: calc(100% - 220px) }

@media screen and (max-width: 767px){
	#recruit.information .tablebox>ul>li>dl{ display: block; }
	#recruit.information .tablebox>ul>li>dl>dt{ width: 100%; padding-left: 0; padding-right: 0; font-weight: bold; margin-bottom: 10px; }
	#recruit.information .tablebox>ul>li>dl>dd{ width: 100% }
	#recruit.information .tablebox>ul>li>dl>dd .para2{ margin-bottom: 10px!important; }
	#recruit.information .tablebox>ul>li>dl>dd .para-2{ margin-top: 10px !important; }

}
@media screen and (max-width: 479px){
}