
@charset "UTF-8";
/*

CSS page.css */






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


#index


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

#index .section { margin-bottom: 130px }
@media screen and (max-width: 1040px){
	#index .section{ margin-bottom: 70px }
}
@media screen and (max-width: 767px) {
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
	#index .section{ margin-bottom: 60px }
}

#index #sec_1{ margin-bottom: 90px }
#index #sec_1 .mainbox{ display: flex; flex-direction: row;  }
#index #sec_1 .mainbox .indexsectitle{ display: flex; flex-shrink: 1; margin-right: 10%; flex-direction: column; margin-bottom: 0 }
#index #sec_1 .mainbox .indexsectitle .entitle{  }
#index #sec_1 .mainbox .indexsectitle .jntitle{ text-align: center; }
#index #sec_1 .mainbox .newslist{ width: 100% }
#index #sec_1 .link{ text-align: right; margin-top: 25px }
@media screen and (max-width: 1040px){
	#index #sec_1{ margin-bottom: 70px }
	#index #sec_1 .mainbox{ display: block; }
	#index #sec_1 .mainbox .indexsectitle{ display: block; margin-right: 0; margin-bottom: 30px; }
	#index #sec_1 .mainbox .indexsectitle .entitle,
	#index #sec_1 .mainbox .indexsectitle .jntitle{ text-align: center; }
}
@media screen and (max-width: 767px) {
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
	#index #sec_1{ margin-bottom: 60px }
}

#index #sec_2 .linkbox{ position: relative; padding: 40px 8% 30px; display: flex; width: 100%; box-sizing: border-box; text-decoration: none; }
#index #sec_2 .linkbox>.inwrap{ background: rgba(255, 255, 255, .8); padding: 60px 8%; display: flex; box-sizing: border-box; width: 100%; flex-direction: column; align-items: center; justify-content: center; max-width: 760px; margin-left: auto; margin-right: auto; }
#index #sec_2 .linkbox>.inwrap .titlebox{ margin-bottom: 30px }
#index #sec_2 .linkbox>.inwrap .titlebox .jntitle{ font-weight: bold; font-size: 2.7rem; line-height: 1.6; margin-bottom: 5px; text-align: center; }
#index #sec_2 .linkbox>.inwrap .titlebox .entitle{ font-size: 1.4rem; font-weight: bold; color: #3982cb; text-align: center; }
#index #sec_2 .linkbox>.inwrap .copy{ font-weight: bold; font-size: 2.4rem; margin-bottom: 30px; line-height: 1.8; letter-spacing: 0.15em; text-align: center; }
#index #sec_2 .linkbox>.inwrap .link{ text-align: center; }
#index #sec_2 .linkbox>.inwrap .link>span.inwrap{ display: inline-block; min-width: 240px; width: 100%; background: #ebf6fb; border-radius: 40px; }
#index #sec_2 .linkbox>.inwrap .link .btnlink{ width: 100%; }
#index #sec_2 .linkbox>.inwrap+.bg{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: -1 }
#index #sec_2 .box1{  }
#index #sec_2 .box1list{ margin-left: -20px; display: flex; flex-direction: row; }
#index #sec_2 .box1list>li{ margin-top: 20px; margin-left: 20px; width: calc(33.33% - 20px); display: flex; }
#index #sec_2 .box1list>li .linkbox>.inwrap{ padding: 40px 8%; box-sizing: border-box; width: 100% }
#index #sec_2 .box1list>li .linkbox>.inwrap .titlebox .jntitle{ font-size: 2.4rem }
#index #sec_2 .box1+.box1list .linkbox{ height: 400px }
@media screen and (max-width: 1040px){
	#index #sec_2 .linkbox{ padding: 30px 8%; }
	#index #sec_2 .linkbox>.inwrap{ padding: 50px 8%; }
	#index #sec_2 .linkbox>.inwrap .titlebox .jntitle{ font-size: 2.4rem; }
	#index #sec_2 .linkbox>.inwrap .copy{ font-size: 1.8rem; }
	#index #sec_2 .box1list>li .linkbox>.inwrap{ padding: 30px 8%; }
	#index #sec_2 .box1list{ margin-left: 0; display: block; }
	#index #sec_2 .box1list>li{ margin-left: 0; width: 100%; }
}
@media screen and (max-width: 767px) {
	#index #sec_2 .linkbox{ padding: 0;  }
	#index #sec_2 .linkbox>.inwrap{ background: rgba(255, 255, 255, .6); }
	#index #sec_2 .linkbox>.inwrap{ padding: 40px 8%; }
	#index #sec_2 .linkbox>.inwrap .titlebox{ margin-bottom: 25px }
	#index #sec_2 .linkbox>.inwrap .titlebox .jntitle{ font-size: 2.2rem; margin-bottom: 0 }
	#index #sec_2 .box1+.box1list .linkbox{ height: 300px }
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
	#index #sec_2 .linkbox>.inwrap .copy{ font-size: 1.6rem; text-align: left; }
}

#index #sec_4{ position: relative; padding-bottom: 105px; margin-bottom: 0 }
#index #sec_4:before{ content: ""; background: #fff8d9; display: block; position: absolute; bottom: 0; left: 0; right: 0; width: 100%; height: calc(100% - 120px); }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px) {
	#index #sec_4{ padding-bottom: 80px }
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
}




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


#company.index


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

/* #sec_1 */
#company.index .mainbox1 {display: flex;justify-content:space-between;}
#company.index .mainbox1 {margin-left: calc(50% - 590px); margin-right: 4%; }
#company.index #sec_1 .mainbox1 .txtbox .txt { line-height: 36px; }
#company.index .imgbox{ flex-shrink: 0; margin-left: 6%; max-width: 423px; width: 100%; margin-top: auto; padding-bottom: 5px; }
#company.index #sec_1 .name{ text-align:right; letter-spacing:1.5px; margin-left: -20px; margin-top: 40px; }
#company.index #sec_1 .name>._1 { font-size:1.8rem; margin-left: 20px; display: inline-block; }
#company.index #sec_1 .name>._2 {font-size:4.2rem; display: inline-block; margin-left: 20px;}
#company.index #sec_1 .name>._2 img{ width: 194px; }
#company.index #sec_1 .img1{ margin-top: 60px; }
#company.index #sec_1 .img1 img{ width: 100%; }
@media screen and (max-width: 1400px){
	#company.index .mainbox1 {margin-left:6%; margin-right: 6%;}
	#company.index #sec_1 .name>._1 { font-size:1.6rem; margin-right: 20px; margin-right: 0px; }
	#company.index #sec_1 .name>._2 { font-size:3.8rem; }
}
/*@media screen and (max-width: 1040px){*/
@media screen and (max-width: 1200px){
	#company.index #sec_1 .mainbox1{display:block; margin-left:6%; margin-right:6%; }
	#company.index #sec_1 .mainbox1 .txtbox{width:100%;margin-bottom: 40px;}
	#company.index #sec_1 .mainbox1 .imgbox{ margin-left: 0; width: 70%; margin-left: auto; margin-right: auto; }
	#company.index #sec_1 .mainbox1 .imgbox img{  }
	/*#company.index #sec_1 .imgbox img{ width: 100%; height:360px; object-position: 0 -130px; object-fit: cover;  }*/
	#company.index #sec_1 .imgbox .name{ font-size: 1.6rem; margin-right:0px;}
	#company.index #sec_1 .name{ margin-top: 20px; }
	#company.index #sec_1 .name>._1 { font-size:1.4rem; margin-right: 20px; margin-right: 0px; }
	#company.index #sec_1 .name>._2 { font-size:3.2rem; }
	#company.index #sec_1 .img1{ margin-top: 60px; }
	#company.index #sec_1 .img1 img{ width: 100%; height:400px; object-fit: cover; font-family: 'object-fit: cover;'; display: block; object-position: 20%; }
}
@media screen and (max-width: 767px){
	#company.index #sec_1 .mainbox1 .txtbox{margin-bottom: 0px;}
	#company.index #sec_1 .imgbox{ margin-top: 30px }
	/*#company.index #sec_1 .imgbox img{ margin-top: 80px; height: 300px }*/
	#message.index #sec_1 .imgbox .name>._2 { display: block; font-size:3.8rem; }
	#company.index #sec_1 .img1{ margin-top: 40px; }
}
@media screen and (max-width: 639px){
	/*#company.index #sec_1 .imgbox img { margin-top: 60px }*/
	#company.index #sec_1 .imgbox .name>._1 { font-size:1.2rem; margin-right: 20px; margin-right: 0px; }
	#company.index #sec_1 .imgbox .name>._2 { font-size:2.8rem; }
}
@media screen and (max-width: 479px){
	#company.index #sec_1 .mainbox1 .imgbox .name{display:flex; flex-direction:column;}
	#company.index #sec_1 .mainbox1 .imgbox{ width: 100%; }
	/*#company.index #sec_1 .imgbox img{ width: 100%; height:360px; object-position: 0 0px; object-fit: cover;  }*/
}

/* #sec_2 */

#company.index #sec_2 .subtitle { font-size: 2.4rem; font-weight: bold; margin-bottom: 30px; }
#company.index #sec_2 .subtxt { margin-bottom: 50px; }
#company.index #sec_2 ul.list{ display: flex; flex-direction: row; flex-wrap: wrap;  margin-left: -15px }
#company.index #sec_2 ul.list>li {background: #f7f7f7;padding: 26px 60px; margin-bottom: 15px; box-sizing: border-box; width: calc(50% - 15px); margin-left:15px;}
#company.index #sec_2 ul.list>li {display: flex; justify-content: space-between; align-items: center; }
#company.index #sec_2 ul.list>li:first-child { margin-left: 0px;}
#company.index #sec_2 ul.list>li:nth-child(3n) { margin-left: 0px;}
#company.index #sec_2 ul.list>li:last-child { margin-bottom: 0; margin-left: 0px;}
#company.index #sec_2 ul.list>li .title {font-size: 2.4rem; margin-right: 40px; font-family: yu-mincho-pr6n,"æ¸¸æ˜Žæœä½“",YuMincho,"Yu Mincho","ãƒ’ãƒ©ã‚®ãƒŽæ˜Žæœ Pro W3","Hiragino Mincho Pro","ï¼­ï¼³ ï¼°æ˜Žæœ","MS PMincho",serif; flex-shrink: 0; display: flex; }
#company.index #sec_2 ul.list>li .title img{ height: 26px; width: auto; }
#company.index #sec_2 ul.list>li .txt { font-size:1.8rem; flex: 1; }
@media screen and (max-width: 1040px) {
	#company.index #sec_2 .subtitle { font-size: 2.0rem; font-weight: bold; margin-bottom: 30px; }
	#company.index #sec_2 ul.list>li .title { font-size: 2.0rem; }
	#company.index #sec_2 ul.list>li .txt { font-size: 1.4rem; }
	#company.index #sec_2 ul.list>li { padding: 15px 6%; }
}
@media screen and (max-width: 767px) {
	#company.index #sec_2 ul.list{ display: block; margin-left: 0; }
	#company.index #sec_2 ul.list>li {width: 100%; margin-left:0; justify-content: flex-start; }
	#company.index #sec_2 ul.list>li .title { font-size: 2.0rem; margin-right: 20px }
}
@media screen and (max-width: 639px) {
	#company.index #sec_2 .subtitle { font-size: 1.8rem; font-weight: bold; margin-bottom: 30px; }
	#company.index #sec_2 ul.list>li { width: 100%; margin-left: 0; margin-bottom: 10px; }
}


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


#company.about


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

/* #sec_2 */

#company.about #sec_2 .list>li .inwrap { display: flex; flex-direction: row; }
#company.about #sec_2 .list>li .txtbox { flex-direction: column; flex-shrink: 0; width: 43%; }
#company.about #sec_2 .list>li .txtbox .title { font-size:2.4rem; font-weight: bold; margin-bottom: 10px; letter-spacing: 0.15em }
#company.about #sec_2 .list>li .txtbox .txt { margin-bottom: 40px; }
#company.about #sec_2 .list>li .txtbox .list2 { margin-bottom: 30px; }
#company.about #sec_2 .list>li .txtbox .list2 li{ margin-bottom: 10px }
#company.about #sec_2 .list>li .txtbox .list2 li:last-child{ margin-bottom: 0 }
#company.about #sec_2 .list>li .txtbox .list2 .title { font-size: 1.4rem;  color: #2374c5; margin-bottom: 5px; }
#company.about #sec_2 .list>li .txtbox .list2 .etitle { font-size: 1.6rem; font-weight: bold; margin-bottom: 0px }
#company.about #sec_2 .list>li .txtbox .list2 .txt { margin-bottom: 5px; }
#company.about #sec_2 .list>li .txtbox .list2 .txt:nth-child(2n) { margin-bottom: 0px; }
#company.about #sec_2 .list>li  {margin-bottom: 60px; }
#company.about #sec_2 .list>li:last-child{ margin-bottom: 0 }
#company.about #sec_2 .list>li .imgbox img { margin-bottom: 20px; }
@media screen and (max-width: 1040px){
	#company.about #sec_2 .list>li .inwrap{ display: block; }
	#company.about #sec_2 .list>li .txtbox{ margin-bottom: 35px; width: 100%; }
}
@media screen and (max-width: 767px){
	#company.about #sec_2 .list>li .txtbox .title{ font-size: 2rem }
}
/* #sec_3 */
#company.about #sec_3 .box1 .txt { margin-bottom: 25px }
#company.about #sec_3 .ebox { display: flex; justify-content: space-between;}
#company.about #sec_3 .ebox>div { width: 48%; }
#company.about #sec_3 .ebox>div .elist li { width:100%; margin-bottom: 4px; }
#company.about #sec_3 .ebox>div .elist li:last-child{ margin-bottom: 0; }
#company.about #sec_3 .ebox>div .elist li._1{ margin-left: -8px; }
#company.about #sec_3 .ebox>div .elist li._1 p.inb{ margin-left: 8px; }
#company.about #sec_3 .ebox>div .elist li._1 p.inb:nth-child(2)>a{ display: inline-block; background: #ea5b02; color: #fff; padding: 7px 5px 6px; font-size: 1.2rem; text-decoration: none; line-height: 1; vertical-align: 2px; }
#company.about #sec_3 .ebox>div .elist li._1 p.inb:nth-child(2)>a:hover{ opacity: .8; }
@media screen and (max-width: 767px){
	#company.about #sec_3 .ebox { display: block; }
	#company.about #sec_3 .ebox>div { width:100%; }
}

/* #sec_4 */
#company.about #sec_4 .indent li { margin-left: 0.1em; }


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


#service.index


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

/* #sec_1 */

/* #sec_2 */
#service.index #sec_2 #s2_insec1 { position: relative; }
#service.index #sec_2 #s2_insec1 .mainbox {display: flex; justify-content: flex-end; height: 100% }
#service.index #sec_2 #s2_insec1 .mainbox .txtbox {width:570px;padding: 80px 75px;background:#3982cb;color:#fff;z-index:100;text-align:left; box-sizing: border-box; margin-top: 80px }
#service.index #sec_2 #s2_insec1 .mainbox .imgbox {margin-left:-190px; width:860px; height: 540px }
#service.index #sec_2 #s2_insec1 .mainbox .imgbox img{ object-fit: cover; font-family: 'object-fit: cover;'; width: 100%; height: 100% }
#service.index #sec_2 #s2_insec1 .title { font-size:2.4rem; font-weight:bold; color:#fff;}
#service.index #sec_2 #s2_insec1 .subtitle { font-size:1.4rem; color:#fff;margin-bottom:30px;}
#service.index #sec_2 #s2_insec1 .copytxt {font-size:1.8rem; font-weight:bold; margin-bottom:30px; letter-spacing:0.15em;}
#service.index #sec_2 #s2_insec1 .copytxt span{ font-weight: bold; }
#service.index #sec_2 #s2_insec1 .link>a.btnlink{ max-width: 240px; width: 100% }
@media screen and (max-width: 1040px) {
	#service.index #sec_2 #s2_insec1 .incnt{ width: 100% }
	#service.index #sec_2 #s2_insec1 .mainbox { display: block; }
	#service.index #sec_2 #s2_insec1 .mainbox .txtbox { width: 100%; padding: 60px 8%; box-sizing: border-box; }
	#service.index #sec_2 #s2_insec1 .mainbox .imgbox { margin-left: 0; width: 100%; margin-top: 0; margin-right: 0; height: 400px }
}
@media screen and (max-width: 767px){
	#service.index #sec_2 #s2_insec1 .mainbox .txtbox { padding: 40px 8%; }
}

/* #sec_3 */
#service.index #sec_2 #s2_insec2 .list {display: flex;flex-wrap: wrap;justify-content: space-between; }
#service.index #sec_2 #s2_insec2 .list>li {width: 49%; background:#f7f7f7; box-sizing:border-box;padding:60px 60px}
#service.index #sec_2 #s2_insec2 .list>li:last-child {margin-left:0%;}
#service.index #sec_2 #s2_insec2 .subtitle {font-size:1.4rem; color:#3781ca;margin-bottom:30px;}
#service.index #sec_2 #s2_insec2 .copytxt {font-size:1.8rem; font-weight:bold; margin-top:15px; letter-spacing:0.15em; text-align: left; }
#service.index #sec_2 #s2_insec2 .copytxt span{ font-weight: bold; }
#service.index #sec_2 #s2_insec2 .bottomlink{text-align: left; margin-top: 30px }
@media screen and (max-width: 1040px){
	#service.index #sec_2 #s2_insec2 .list { display: block;}
	#service.index #sec_2 #s2_insec2 .list>li { margin-top:20px; width:100%; padding:30px 8% 35px;}
	#service.index #sec_2 #s2_insec2 .list>li:first-child { margin-top:0px;}
	#service.index #sec_2 #s2_insec2 .list>li .txt.big4,
	#service.index #sec_2 #s2_insec2 .list>li .subtitle,
	#service.index #sec_2 #s2_insec2 .list>li .bottomlink{ text-align: center; }
}
@media screen and (max-width: 767px){
	#service.index #sec_2 #s2_insec2 .half { flex-direction: column-reverse; }
	#service.index #sec_2 #s2_insec2 .half .etitle {font-size:1.8rem;margin-bottom:10px; }
}


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


#service.gas


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

/* #sec_2 */
#service.gas #sec_2 .mainbox {margin-bottom:60px;}
#service.gas #sec_2 .mainbox .list {}
#service.gas #sec_2 .mainbox .list>li { margin-bottom: 30px }
#service.gas #sec_2 .mainbox .list>li:last-child{ margin-bottom: 0 }
#service.gas #sec_2 .list>li .box1 { display: flex; flex-direction: row; }
#service.gas #sec_2 .list>li .box1 .txtbox {width: 100%; background: #f7f7f7; padding: 70px 6% 60px; box-sizing: border-box; }
#service.gas #sec_2 .list>li .box1 .txtbox .etitle {font-size:2.4rem; font-weight: bold; margin-bottom:15px; line-height: 1.6 }
#service.gas #sec_2 .list>li .box1 .imgbox { position: relative; flex-shrink: 0; width: 43% }
#service.gas #sec_2 .list>li .box1 .imgbox img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 0; }
#service.gas #sec_2 .gaslist {margin-top:30px; font-size: 1.8rem; columns: 3 }
#service.gas #sec_2 .gaslist>li { text-align: left; }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#service.gas #sec_2 .list>li .box1 { flex-direction: column-reverse; }
	#service.gas #sec_2 .list>li .box1 .txtbox {padding: 30px 8% 35px; }
	#service.gas #sec_2 .list>li .box1 .txtbox .etitle {font-size:1.8rem;margin-bottom:10px; }
	#service.gas #sec_2 .list>li .box1 .imgbox { width: 100% }
	#service.gas #sec_2 .list>li .box1 .imgbox img{ position: static; height: 330px }
	#service.gas #sec_2 .gaslist {font-size: 1.6rem; columns: 2 }
}
@media screen and (max-width: 479px){
	#service.gas #sec_2 .gaslist { columns: inherit }
}


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


#service.equipment


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

/* #sec_2 */
#service.equipment #sec_2 .mainbox .list {}
#service.equipment #sec_2 .mainbox .list>li { margin-bottom: 30px }
#service.equipment #sec_2 .mainbox .list>li:last-child{ margin-bottom: 0 }
#service.equipment #sec_2 .list>li .box1 { display: flex; flex-direction: row; }
#service.equipment #sec_2 .list>li .box1 .txtbox {width: 100%; background: #f7f7f7; padding: 70px 6% 60px; box-sizing: border-box; }
#service.equipment #sec_2 .list>li .box1 .txtbox .etitle {font-size:2.4rem; font-weight: bold; margin-bottom:15px; line-height: 1.6 }
#service.equipment #sec_2 .equiplist1 {margin-top: 30px; font-size: 1.8rem; columns: 2; margin-left: 0.1em;}
#service.equipment #sec_2 .equiplist1 li {margin-left: 0.1em;}
#service.equipment #sec_2 .equiplist2 {margin-top: 30px; font-size: 1.8rem; columns: 3;}
#service.equipment #sec_2 .equiplist2 li {margin-left: 0.1em;}
#service.equipment #sec_2 .list>li .box1 .imgbox { position: relative; flex-shrink: 0; width: 43% }
#service.equipment #sec_2 .list>li .box1 .imgbox img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 0; }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#service.equipment #sec_2 .list>li .box1 { flex-direction: column-reverse; }
	#service.equipment #sec_2 .list>li .box1 .txtbox {padding: 30px 8% 35px; }
	#service.equipment #sec_2 .list>li .box1 .txtbox .etitle {font-size:1.8rem;margin-bottom:10px; }
	#service.equipment #sec_2 .list>li .box1 .imgbox { width: 100% }
	#service.equipment #sec_2 .list>li .box1 .imgbox img{ position: static; height: 330px }
	#service.equipment #sec_2 .equiplist1 {font-size: 1.6rem; columns: 1;}
	#service.equipment #sec_2 .equiplist2 {font-size: 1.6rem; columns: 2;}
}
@media screen and (max-width: 479px){
	#service.equipment #sec_2 .equiplist2 { columns: 1 }
}


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


#service.other


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

/* #sec_2 */
#service.other #sec_2 .mainbox .list {}
#service.other #sec_2 .mainbox .list>li { margin-bottom: 30px }
#service.other #sec_2 .mainbox .list>li:last-child{ margin-bottom: 0 }
#service.other #sec_2 .list>li .box1 { display: flex; flex-direction: row; }
#service.other #sec_2 .list>li .box1 .txtbox {width: 100%; background: #f7f7f7; padding: 70px 6% 60px; box-sizing: border-box; }
#service.other #sec_2 .list1 {margin-top: 30px; font-size: 1.8rem; columns: 3;}
#service.other #sec_2 .list1 li {margin-left: 0.1em;}
#service.other #sec_2 .list>li .box1 .txtbox .etitle {font-size:2.4rem; font-weight: bold; margin-bottom:15px; line-height: 1.6 }

@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#service.other #sec_2 .list>li .box1 { flex-direction: column-reverse; }
	#service.other #sec_2 .list>li .box1 .txtbox {padding: 30px 8% 35px; }
	#service.other #sec_2 .list>li .box1 .txtbox .etitle {font-size:1.8rem;margin-bottom:10px; }
	#service.other #sec_2 .list>li .list1 {font-size: 1.6rem; columns: 2;}
}
@media screen and (max-width: 479px){
	#service.other #sec_2 .list>li .list1 { columns: 1 }

}

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


#recruit.index


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

/* #sec_1 */
#recruit.index #sec_1 .ebox1{display: flex;justify-content: space-between;}
#recruit.index #sec_1 .ebox1 .sectitlebox {display:flex;justify-content:space-between;align-items: center; flex-shrink: 0; margin-left: -40px; margin-right: 6% }
#recruit.index #sec_1 .ebox1 .sectitlebox .copy{font-size:8.0rem;line-height:1.2;letter-spacing:0.05em;color:#ffe265;position:relative; padding: 15px 35px 20px 45px; box-sizing: border-box;  }
#recruit.index #sec_1 .ebox1 .sectitlebox .copy:before{content: "";width: 0;height: 0;border-style: solid;border-width: 12px 12px 0 0;border-color: #ffdb3f transparent transparent transparent;display: inline-block;position: absolute;top: 0; left: 0;}
#recruit.index #sec_1 .ebox1 .sectitlebox .copy:after{ content: ""; width: 0; height: 0; border-style: solid; border-width: 0 0 12px 12px; border-color: transparent transparent #ffdb3f transparent; display: inline-block; position: absolute; bottom: 0; right:0; }
#recruit.index #sec_1 .ebox1 .txtbox{ width: 100% }
#recruit.index #sec_1 .ebox1 .txtbox .title {font-size: 3.6rem; letter-spacing: 0.15em; font-weight: bold; line-height: 1.6; margin-bottom:40px; }
@media screen and (max-width: 1040px) {
#recruit.index #sec_1 .ebox1{ display: block; }
#recruit.index #sec_1 .ebox1 .sectitlebox{ display: block; text-align:left; margin-left: 0; margin-right: 0 }
#recruit.index #sec_1 .ebox1 .txtbox .title {font-size:2.8rem;}
#recruit.index #sec_1 .ebox1 .txtbox .title br { display:none; }
}
@media screen and (max-width: 767px) {
#recruit.index #sec_1 .ebox1 .txtbox .title {font-size:2.4rem; text-align: left; margin-bottom: 20px }
}
@media screen and (max-width: 479px) {
#recruit.index #sec_1 .ebox1 .txtbox .title {font-size:2.2rem; }
}

/* #sec_2 */
#recruit.index #sec_2 .copytitle{ background:#0d0d0d; color: #fff; text-align:center; justify-content:center; width:45%; max-width: 510px; margin:0 auto; margin-bottom:30px; padding-top: 4px; padding-bottom: 4px; padding-right: 20px; padding-left: 20px; box-sizing: border-box; }
#recruit.index #sec_2 .ebox{ display:flex; justify-content:space-between; }
#recruit.index #sec_2 .ebox li{ width:30%; }
#recruit.index #sec_2 .ebox li .title{ font-size:2.4rem; font-weight:bold; text-align:center; margin-bottom:10px; }

@media screen and (max-width: 1040px) {
	#recruit.index #sec_2 .copytitle{width:100%;  }
	#recruit.index #sec_2 .ebox{ display: block; }
	#recruit.index #sec_2 .ebox li{ width: 100%; margin-bottom: 30px; }
	#recruit.index #sec_2 .ebox li:last-child{ margin-bottom: 0px; }
	#recruit.index #sec_2 .ebox li .title{ font-size:1.8rem; margin-bottom:10px; }
}
@media screen and (max-width: 767px) {
	#recruit.index #sec_2 .copytitle{ text-align: center; max-width: 100% }
}


/* #sec_3 */
#recruit.index #sec_3 .imgbox{display:flex; justify-content:space-between; }

#recruit.index #sec_3 .imgbox .gallery{ width: 100%; display: flex; flex-direction: row; flex-wrap: wrap; }
#recruit.index #sec_3 .imgbox .gallery li{ position: relative; width: 33.33%; aspect-ratio: 4 / 3; -webkit-aspect-ratio: 4 / 3; }
#recruit.index #sec_3 .imgbox .gallery img { object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; }
@media screen and (max-width: 1040px) {
	#recruit.index #sec_3 .imgbox{display:block;  }
	#recruit.index #sec_3 .imgbox .gallery li{ width: 50%; }
}
@media screen and (max-width: 767px) {
	#recruit.index #sec_3 .imgbox .gallery img{ position: static; }
}
@media screen and (max-width: 479px) {
}

/* #sec_4 */
#recruit.index #sec_4 .sectitle { margin-bottom: 30px }
#recruit.index #sec_4 .imgbox {display:flex;}
#recruit.index #sec_4 .imgbox img {width: 50%;}
#recruit.index #sec_4 .txtbox {/*margin-top: -50px;*/display: inline-block; width: 100%; }
#recruit.index #sec_4 .txtbox .title{ font-size:2.4rem; font-weight:bold; text-align:center; /*padding: 30px 60px 0;*/background: #fff; margin:0 auto; display:block; width: 540px; box-sizing:border-box;}

@media screen and (max-width: 767px) {
    /*#recruit.index #sec_4 .txtbox {margin-top: 30px; }*/
    #recruit.index #sec_4 .txtbox .title{ font-size:1.8rem; /*padding: 0;*/width: auto;}
    #recruit.index #sec_4 .imgbox{ display: block; }
	#recruit.index #sec_4 .imgbox img {width: 100%;}
}


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


#recruit.interview


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

/* #sec_1 */
#recruit.interview #sec_1 .txt{text-align: center;}
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 767px) {
}
@media screen and (max-width: 479px){
}


/* #sec_2 */
#recruit.interview #sec_2 .insec:not(#s2_insec1){ margin-bottom: 120px }
#recruit.interview #sec_2 .insec:not(#s2_insec1):last-child{ margin-bottom: 0 }
#recruit.interview #sec_2 .sectitle{  }

#recruit.interview #sec_2 .interviewnav{  }
#recruit.interview #sec_2 .interviewnav>ol{ display: flex; flex-direction: row; flex-wrap: wrap; }
#recruit.interview #sec_2 .interviewnav>ol>li{ width: 50% }
#recruit.interview #sec_2 .interviewnav>ol>li>a{ display: flex; align-items: center; justify-content: center; padding: 21px 6%; font-weight: bold; font-size: 2rem; text-decoration: none; line-height: 1.6 }
#recruit.interview #sec_2 .interviewnav>ol>li>a:after{ content:""; background: url(../img/common/arr2.svg) no-repeat; display: inline-block;  width: 20px; height: 20px; margin-left: 7px; transition: .3s }
#recruit.interview #sec_2 .interviewnav>ol>li:nth-child(even)>a{ background: #ebf6fb; }
#recruit.interview #sec_2 .interviewnav>ol>li:nth-child(odd)>a{ background: #eeeeee; }
#recruit.interview #sec_2 .interviewnav>ol>li>a:hover{  }
#recruit.interview #sec_2 .interviewnav>ol>li>a:hover:after{ margin-bottom: -5px }
#recruit.interview #sec_2 .interviewnav>ol>li:nth-child(even)>a:hover,
#recruit.interview #sec_2 .interviewnav>ol>li:nth-child(odd)>a:hover{ background: #3982cb; color: #fff }
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 767px) {
	#recruit.interview #sec_2 .insec:not(#s2_insec1){ margin-bottom: 70px }
	#recruit.interview #sec_2 .interviewnav>ol{ display: block; }
	#recruit.interview #sec_2 .interviewnav>ol>li{ width: 100% }
	#recruit.interview #sec_2 .interviewnav>ol>li>a{ padding: 15px 8%; font-size: 1.6rem; }
	#recruit.interview #sec_2 .interviewnav>ol>li>a:after{ width: 18px; height: 18px; margin-left: 5px; }
}
@media screen and (max-width: 479px){
}

#recruit.interview #sec_2 .mainbox{ position: relative; }
#recruit.interview #sec_2 .mainbox .txtbox{ /*padding-top: 140px; padding-bottom: 160px;*/ display: flex; flex-direction: column; text-align: center; }
#recruit.interview #sec_2 .mainbox .txtbox>.incnt{ width: 72% }
#recruit.interview #sec_2 .mainbox .copytxt{ margin-bottom: 30px; }
#recruit.interview #sec_2 .mainbox .copytxt>p{ margin-bottom: 10px }
#recruit.interview #sec_2 .mainbox .copytxt>p>span{ color: #fff; font-weight: bold; font-size: 3.6rem; line-height: 1; letter-spacing: 0.1em; display: inline-block; padding: 15px 15px; }
#recruit.interview #sec_2 .mainbox .copytxt>p:last-child{ margin-bottom: 0 }
#recruit.interview #sec_2 .mainbox .copytxt>._1{  }
#recruit.interview #sec_2 .mainbox .copytxt>._1>.inwrap{ background: #38a1db; }
#recruit.interview #sec_2 .mainbox .copytxt>._2{  }
#recruit.interview #sec_2 .mainbox .copytxt>._2>.inwrap{ background: #3982cb; }
#recruit.interview #sec_2 .mainbox .nametxt{ margin-left: -10px }
#recruit.interview #sec_2 .mainbox .nametxt>._position{ display: inline-block; vertical-align: middle; margin-left: 10px; font-size: 1.8rem; font-weight: bold; }
#recruit.interview #sec_2 .mainbox .nametxt>._name{ display: inline-block; vertical-align: middle; margin-left: 10px; font-weight: bold; font-size: 2.8rem; }
#recruit.interview #sec_2 .mainbox .txt{ font-size: 1.4rem }
/*#recruit.interview #sec_2 .mainbox .imgbox{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: calc(100% - 120px); height: 100%; background: #f8f8f8; z-index: -1; box-sizing: border-box; margin-left: auto; margin-right: auto; }
#recruit.interview #sec_2 .mainbox .imgbox>img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 60%; height: 100%; position: absolute; top: 0; bottom: 0; right: 0; }*/
@media screen and (max-width: 1040px) {
	#recruit.interview #sec_2 .mainbox{ display: flex; flex-direction: column-reverse; }
	#recruit.interview #sec_2 .mainbox .txtbox{ padding-top: 70px; padding-bottom: 60px; display: block; background: #f8f8f8; }
	#recruit.interview #sec_2 .mainbox .txtbox>.incnt{ width: 88% }
	#recruit.interview #sec_2 .mainbox .copytxt{ margin-bottom: 20px; }
	#recruit.interview #sec_2 .mainbox .copytxt>p{ margin-bottom: 5px }
	#recruit.interview #sec_2 .mainbox .copytxt>p>span{ font-size: 2.8rem; padding: 15px 15px; }
	#recruit.interview #sec_2 .mainbox .nametxt>._position{ font-size: 1.6rem; }
	#recruit.interview #sec_2 .mainbox .nametxt>._name{ font-size: 2.4rem; }
	/*#recruit.interview #sec_2 .mainbox .imgbox{ position: static; width: 100%; height: auto; }
	#recruit.interview #sec_2 .mainbox .imgbox>img{ width: 100%; height: 640px; position: static; }*/
}
@media screen and (max-width: 767px) {
	#recruit.interview #sec_2 .mainbox .txtbox{ padding-top: 40px; padding-bottom: 30px; }
	#recruit.interview #sec_2 .mainbox .copytxt>p>span{ font-size: 2.4rem; padding: 10px 10px; }
	#recruit.interview #sec_2 .mainbox .nametxt>._name{ font-size: 2rem; }
	/*#recruit.interview #sec_2 .mainbox .imgbox>img{ height: 320px; }*/
	#recruit.interview #sec_2 .mainbox .txtbox{ text-align: left; }
}
@media screen and (max-width: 479px){
	#recruit.interview #sec_2 .mainbox .copytxt>p>span{ font-size: 2rem; }
	#recruit.interview #sec_2 .mainbox .nametxt>._name{ font-size: 1.8rem; }
}

#recruit.interview #sec_2 .ebox{  }
#recruit.interview #sec_2 .ebox>.incnt{  }
#recruit.interview #sec_2 .ebox>.incnt>.inwrap{ background: #38a1db; color: #fff; padding: 80px 12% 70px; display: flex; flex-direction: row; align-items: center; justify-content: center; }
#recruit.interview #sec_2 .ebox>.incnt>.inwrap .titlebox{ flex-shrink: 0; margin-right: 50px }
#recruit.interview #sec_2 .ebox>.incnt>.inwrap .titlebox>._entitle{ display: inline-block; vertical-align: middle; font-weight: 900; font-size: 1.8rem; letter-spacing: 0.1em;}
#recruit.interview #sec_2 .ebox>.incnt>.inwrap .titlebox>._jntitle{ display: inline-block; vertical-align: middle; font-weight: bold; }
#recruit.interview #sec_2 .ebox>.incnt>.inwrap .txt{  }
@media screen and (max-width: 1040px) {
	#recruit.interview #sec_2 .ebox>.incnt>.inwrap{ padding: 40px 6% 50px; display: block; }
	#recruit.interview #sec_2 .ebox>.incnt>.inwrap .titlebox{ margin-right: 0; margin-bottom: 10px; }
	#recruit.interview #sec_2 .ebox>.incnt>.inwrap .titlebox>._entitle{ font-size: 1.8rem; }
}
@media screen and (max-width: 767px) {
	#recruit.interview #sec_2 .ebox>.incnt>.inwrap{ padding: 30px 8%; }
}
@media screen and (max-width: 479px){
	#recruit.interview #sec_2 .ebox>.incnt>.inwrap .titlebox>._entitle{ font-size: 1.6rem; }
}

#recruit.interview #sec_2 .interviewtxt{  }
#recruit.interview #sec_2 .interviewtxt>.incnt{  }
#recruit.interview #sec_2 .interviewtxt>.incnt>.inwrap{  }
#recruit.interview #sec_2 .interviewtxt>.incnt>.inwrap>li{ margin-bottom: 40px }
#recruit.interview #sec_2 .interviewtxt>.incnt>.inwrap>li:last-child{ margin-bottom: 0 }
#recruit.interview #sec_2 .interviewtxt>.incnt>.inwrap>li>dl{ padding-left: 40px; position: relative; }
#recruit.interview #sec_2 .interviewtxt>.incnt>.inwrap>li>dl:after{ content: ""; background: #191919; display: inline-block; height: 1px; width: 32px; position: absolute; top: 15px; left: 0 }
#recruit.interview #sec_2 .interviewtxt>.incnt>.inwrap>li>dl>dt{ font-weight: bold; font-size: 1.8rem; line-height: 1.6; margin-bottom: 20px }
#recruit.interview #sec_2 .interviewtxt>.incnt>.inwrap>li>dl>dd{  }
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 767px) {
	#recruit.interview #sec_2 .interviewtxt>.incnt>.inwrap>li{ margin-bottom: 30px }
	#recruit.interview #sec_2 .interviewtxt>.incnt>.inwrap>li>dl{ padding-left: 30px; }
	#recruit.interview #sec_2 .interviewtxt>.incnt>.inwrap>li>dl:after{ width: 20px; top: 15px; left: 0 }
	#recruit.interview #sec_2 .interviewtxt>.incnt>.inwrap>li>dl>dt{ margin-bottom: 10px }
}
@media screen and (max-width: 479px){
}

#recruit.interview #sec_2 .recruitgallerylist{  }
#recruit.interview #sec_2 .recruitgallerylist>.incnt{  }
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 767px) {
#recruit.interview #sec_2 .recruitgallerylist>.incnt img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 200px; object-position: 65%; }
}
@media screen and (max-width: 479px){
}


/* #sec_5 */
#recruit.interview #sec_3 .yellowbox{background: #ffe265; padding: 80px 0 100px; }
#recruit.interview #sec_3 .copytitle{ margin-bottom: 50px }
#recruit.interview #sec_3 .ebox {display: flex; justify-content: space-between; margin-left: -25px }
#recruit.interview #sec_3 .ebox li {width: 30%; background: #ffffff; padding: 35px 40px 50px; margin-left:25px; }
#recruit.interview #sec_3 .ebox .title {font-size: 2.4rem; font-weight: bold; color:#3982cb; text-align: center; margin-bottom:20px; }
@media screen and (max-width: 1040px){
	#recruit.interview #sec_3 .yellowbox{ padding: 60px 0 80px; }
	#recruit.interview #sec_3 .ebox { display: block; margin-left: 0 }
	#recruit.interview #sec_3 .ebox li { padding: 20px 6% 30px; width: 100%; margin-bottom: 10px; margin-left:0; box-sizing: border-box; }
}
@media screen and (max-width: 767px) {
	#recruit.interview #sec_3 .yellowbox{ padding: 60px 0; }
	#recruit.interview #sec_3 .copytitle{ margin-bottom: 30px }
	#recruit.interview #sec_3 .copytitle:not(._blue){ font-weight: normal; font-size: 1.6rem; line-height: 2 }
	#recruit.interview #sec_3 .ebox li{ padding: 20px 6% 20px; }

}

/* #sec_6 */
#recruit.interview #sec_4>.incnt{ max-width: 1110px }
#recruit.interview #sec_4 .sectitle{ margin-bottom: 60px }
#recruit.interview #sec_4 .box{display: flex; justify-content: space-between;}
#recruit.interview #sec_4 .dailybox{ width: 100% }
#recruit.interview #sec_4 .mainbox{ width: 49%; flex-shrink: 0; margin-left: 5%; }
#recruit.interview #sec_4 .dailybox>.inwrap { border: 10px solid #f2f2f2; padding: 80px 6%; text-align: center; }
#recruit.interview #sec_4 .dailybox .timelist {position: relative; display: inline-block; text-align: left; padding-top: 10px; padding-bottom: 10px }
#recruit.interview #sec_4 .dailybox .timelist:before {content: ""; background: #3982cb; display: inline-block; width: 1px; height: 100%; position: absolute; top: 0; bottom: 0; left: 0;}
#recruit.interview #sec_4 .timelist>li { display: flex; flex-direction: row; line-height: 1.6; align-items: center;margin-bottom: 30px;}
#recruit.interview #sec_4 .timelist>li .time {width: 105px; padding-left: 30px; box-sizing: border-box;  letter-spacing: 0.05em; font-size: 1.8rem; position: relative; color: #3982cb; margin-right: 5px; flex-shrink: 0;}
#recruit.interview #sec_4 .timelist>li .time:after{ content: ""; display: inline-block; background: #3982cb; height: 1px; width: 20px; position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; left: -3px }
#recruit.interview #sec_4 .timelist>li .time:before {content: ""; display: inline-block; background: #3982cb; width: 7px; height: 7px; border-radius: 50%; position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; left: -3px; z-index: 10;}
#recruit.interview #sec_4 .timelist>li .title {position: relative; letter-spacing: 0.05em;}
#recruit.interview #sec_4 .timelist>li:last-child{ margin-bottom: 0 }

#recruit.interview #sec_4 .mainbox .list1>li{ margin-bottom: 35px }
#recruit.interview #sec_4 .mainbox .list1>li .txtbox{ margin-top: 25px }
#recruit.interview #sec_4 .mainbox .list1>li:last-child{ margin-bottom: 0 }
@media screen and (max-width: 1040px) {
	#recruit.interview #sec_4 .box{display: block;}
	#recruit.interview #sec_4 .dailybox{ width: 100% }
	#recruit.interview #sec_4 .mainbox{ width: 100%; flex-shrink: 0; margin-left: 0; margin-top: 30px }
	#recruit.interview #sec_4 .dailybox>.inwrap { border: 8px solid #f2f2f2; padding: 40px 6%; }
}
@media screen and (max-width: 767px) {
	#recruit.interview #sec_4 .sectitle{ margin-bottom: 40px }
	#recruit.interview #sec_4 .dailybox>.inwrap { border: 5px solid #f2f2f2; padding: 30px 8%; }
	#recruit.interview #sec_4 .timelist>li { margin-bottom: 30px;}
	#recruit.interview #sec_4 .timelist>li .time {width: 65px; padding-left: 20px; font-size: 1.6rem; margin-right: 15px; }
	#recruit.interview #sec_4 .timelist>li .time:after{ width: 15px; }

	#recruit.interview #sec_4 .mainbox .list1>li{ margin-bottom: 25px }
	#recruit.interview #sec_4 .mainbox .list1>li .txtbox{ margin-top: 15px }
}
@media screen and (max-width: 479px){
}




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


#recruit.essentials


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

/* #sec_1 */
#recruit.essentials #sec_1 .listtitle{font-size: 2.0rem; font-weight:bold; background:#3982cb; color:#ffffff; width:100%; padding:15px 0px; text-align:center; justify-content:center; margin-bottom:30px; }
@media screen and (max-width: 1040px){
	#recruit.essentials #sec_1 .listtitle{font-size: 1.6rem;}
}
/*//////////////////


#column.index


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


/* #sec_1 */
#blog #sec_1 .mainbox { margin-bottom: 120px; }
#blog #sec_1 .cat>.inwrap{ padding: 5px 10px; width: auto; }



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


#news.index


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


/* #sec_1 */
#news.archive #sec_1 .navblock{ display: flex; justify-content: space-between; align-items: baseline; }
#news.archive #sec_1 .mainbox { margin-bottom: 120px; }
@media screen and (max-width: 1040px) {
	#news.archive #sec_1 .mainbox { margin-bottom: 0; }
}
@media screen and (max-width: 767px) {
	#news.archive #sec_1 .navblock{ display: block; }
	#news.archive .sectitle { margin-bottom: 20px; }
}








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


#contact.index


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


/* #sec_intro */
#contact #sec_intro.end { margin-bottom:30px;  }
#contact #sec_intro ul.inbox { display: flex; justify-content: space-between; width: 100%; }
#contact #sec_intro ul.inbox li { /*width: calc(50% - 10px);*/ display: flex; flex-direction: column; /*justify-content: center; align-items: center; padding: 60px 20px; box-sizing: border-box;*/ }
#contact #sec_intro ul.inbox li .title { font-size:2.4rem; font-weight: bold; margin-bottom: 25px; letter-spacing: 0.15em; }
#contact #sec_intro ul.inbox li span.place { font-size:1.8rem; font-weight: bold;  margin-right: 20px; display: inline-block; vertical-align: 5px }
#contact #sec_intro ul.inbox li.telbox { margin-right: 70px; }
#contact #sec_intro ul.inbox li.telbox .tel { font-size: 3.4rem; line-height: 1; letter-spacing: 0.1em; }
#contact #sec_intro ul.inbox li.telbox span.dai { font-size: 2.4rem; color: #3982CB; letter-spacing: 0.05em; font-weight: bold; }
#contact #sec_intro ul.inbox li.faxbox .tel { font-size: 3.4rem; line-height: 1.3; letter-spacing: 0.1em; }
#contact #sec_intro ul.inbox li a { text-decoration: none; font-size: 2.5rem; line-height: 1.5; color: #3982CB; font-weight: bold; }
#contact #sec_intro ul.inbox li.faxbox a { pointer-events: none; }
#contact #sec_intro ul.inbox li.telbox .txt { font-weight: bold; }
@media screen and (max-width: 1050px) {
	#contact #sec_intro ul.inbox li span.place { display: block; }
}
@media screen and (max-width: 1040px) {
	#contact #sec_intro ul.inbox { display: flex; flex-direction: column; }
	#contact #sec_intro ul.inbox li { width: 100%; margin-bottom: 20px; }
	#contact #sec_intro ul.inbox li:last-child { margin-bottom: 0; }
	#contact #sec_intro ul.inbox li .title { margin-bottom: 5px; }
	#contact #sec_intro ul.inbox li.telbox { margin-right: 0px; margin-bottom: 50px; }
	#contact #sec_intro ul.inbox li.telbox .tel { font-size: 3rem; line-height: 1.3; }
	#contact #sec_intro ul.inbox li.faxbox .tel { font-size: 3rem; }
	#contact #sec_intro ul.inbox li span.place { font-size: 1.5rem; font-weight: normal; margin-right: 0px; }
	#contact #sec_intro ul.inbox li.telbox span.dai { font-size: 2rem; }
	#contact #sec_intro ul.inbox li.telbox .txt { font-weight: normal; }
}
@media screen and (max-width: 767px) {
	#contact #sec_intro ul.inbox li .title { font-size: 18px; }
}




/* sec_form */
