@charset "UTF-8";
/*

CSS page.css */


/*
base #191919
blue #005fa3
*/



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


#index


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

/* common */
#index {  }
@media screen and (max-width: 767px) {
}


/* #sec_1 */
#index #sec_1 { margin-top: 160px; }
#index #sec_1 .incnt { display: flex; align-items: center; }
#index #sec_1 .titlebox { margin-right: 80px; }
#index #sec_1 .titlebox .btnbox { margin-top: 50px; }
#index #sec_1 .txtbox { flex: 1; }
#index #sec_1 .txtbox .btnbox { display: none; }
@media screen and (max-width: 1040px) {
	#index #sec_1 { margin-top: 80px; }
	#index #sec_1 .incnt { display: block; }
	#index #sec_1 .titlebox { margin-right: 0; }
	#index #sec_1 .titlebox .topsectitle { text-align: center; }
	#index #sec_1 .titlebox .btnbox { display: none; }
	#index #sec_1 .txtbox { flex: none; }
	#index #sec_1 .txtbox .copy br { display: none; }
	#index #sec_1 .txtbox .btnbox { display: block; margin-top: 30px; text-align: center; }
}


/* #sec_2 */
#index #sec_2 { }
#index #sec_2:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; overflow:hidden; line-height:0; font-size: 0; }
#index #sec_2 ul.list { margin-top: -20px; display: flex; flex-wrap: wrap; }
#index #sec_2 ul.list>li { margin-top: 20px; }
#index #sec_2 ul.list>li .box,
#index #sec_2 ul.list>li .box .en { color: #fff; }
#index #sec_2 ul.list>li:first-child { padding: 160px 0; background: url(../img/index/s2_img1.jpg); background-size: cover; background-position: center center; width: 100%; }
#index #sec_2 ul.list>li:first-child .box { display: flex; align-items: center; width: 960px; max-width: 88%; margin: 0 auto; }
#index #sec_2 ul.list>li:first-child .box .topsectitle { margin-bottom: 0; margin-right: 80px; }
#index #sec_2 ul.list>li:first-child .box .txtbox { flex: 1; }
#index #sec_2 ul.list>li:first-child .box .txtbox .btnbox { margin-top: 30px; text-align: left; }
#index #sec_2 ul.list>li:nth-child(2),
#index #sec_2 ul.list>li:nth-child(3) { width: calc(50% - 10px); margin-right: 20px; background-size: cover; background-position: center center; text-align: center;  padding: 100px 8% 80px; box-sizing: border-box; }
#index #sec_2 ul.list>li:nth-child(2) .box .txtbox .txt,
#index #sec_2 ul.list>li:nth-child(3) .box .txtbox .txt { margin-bottom: 30px; }
#index #sec_2 ul.list>li:nth-child(2) { background-image: url(../img/index/s2_img2.jpg);}
#index #sec_2 ul.list>li:nth-child(3) { margin-right: 0; background-image: url(../img/index/s2_img3.jpg);}
#index #sec_2 ul.list>li:nth-child(4) { color: #191919; width: 100%; background: #f7f7f7; padding: 60px 8%; text-align: center; box-sizing: border-box; }
#index #sec_2 ul.list>li:nth-child(4) .box { color: #191919; }
@media screen and (max-width: 1040px) {
	#index #sec_2 ul.list>li:nth-child(2) .box .txtbox .txt,
	#index #sec_2 ul.list>li:nth-child(3) .box .txtbox .txt { text-align: justify; }
	#index #sec_2 ul.list>li:nth-child(2) .box .txtbox .txt br,
	#index #sec_2 ul.list>li:nth-child(3) .box .txtbox .txt br { display: none; }
}
@media screen and (max-width: 767px) {
	#index #sec_2 ul.list { display: block; margin-top: 0; }
	#index #sec_2 ul.list>li { margin-top: 0; }
	#index #sec_2 ul.list>li:first-child { padding: 80px 8%; box-sizing: border-box; }
	#index #sec_2 ul.list>li:first-child .box { display: block; width: 100%; max-width: none; }
	#index #sec_2 ul.list>li:first-child .box .topsectitle { margin-bottom: 20px; margin-right: 0; text-align: center; }
	#index #sec_2 ul.list>li:first-child .box .txtbox .copy { text-align: center; }
	#index #sec_2 ul.list>li:first-child .box .txtbox .btnbox { text-align: center; }
	#index #sec_2 ul.list>li:nth-child(2),
	#index #sec_2 ul.list>li:nth-child(3) { width: 100%; margin-right: 0; padding: 80px 8%;}
}


#index #sec_3 { }
#index #sec_3 .incnt { display: flex; align-items: center; }
#index #sec_3 .titlebox { margin-right: 80px; }
#index #sec_3 .titlebox .btnbox { margin-top: 50px; }
#index #sec_3 .txtbox { flex: 1; }
#index #sec_3 .txtbox .date { font-family: yu-mincho-pr6n,"游明朝体",YuMincho,"Yu Mincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","ＭＳ Ｐ明朝","MS PMincho",serif; color: #005fa3; margin-bottom: 5px; }
#index #sec_3 .txtbox a { text-decoration: none; }
#index #sec_3 .txtbox a:hover { text-decoration: underline; }
#index #sec_3 .txtbox li { padding-bottom: 30px; margin-bottom: 30px; border-bottom: 1px solid #005fa3; }
#index #sec_3 .txtbox li:last-child { padding-bottom: 0; margin-bottom: 0; border-bottom: none; }
#index #sec_3 .txtbox .btnbox { display: none; }
@media screen and (max-width: 1040px) {
	#index #sec_3 .incnt { display: block; }
	#index #sec_3 .titlebox { margin-right: 0; }
	#index #sec_3 .titlebox .topsectitle { text-align: center; }
	#index #sec_3 .titlebox .btnbox { display: none; }
	#index #sec_3 .txtbox { flex: none; }
	#index #sec_3 .txtbox .btnbox { display: block; margin-top: 30px; text-align: center; }
}









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


#company


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

/* common */
#company {  }
@media screen and (max-width: 767px) {
}


/* #sec_1 */
#company #sec_1 {  }


/* #insec_1 */
#company #sec_1 #insec_1 { margin-bottom: 80px; }
#company #sec_1 #insec_1 .inbox { display: flex; }
#company #sec_1 #insec_1 .imgbox { width: 40%; height: 410px; margin-left: 6%; }
#company #sec_1 #insec_1 .imgbox img { object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; }
#company #sec_1 #insec_1 .txtbox { flex: 1; }
#company #sec_1 #insec_1 .txtbox .name { font-size: 1.8rem; text-align: right; }
#company #sec_1 #insec_1 .txtbox .name span { font-size: 2.4rem; margin-left: 20px; }


/* #insec_2 */
#company #sec_1 #insec_2 { margin-bottom: 60px; }
#company #sec_1 #insec_2 { background: #f7f7f7; padding: 60px 80px; }
#company #sec_1 #insec_2 .inbox { display: flex; align-items: flex-start;}
#company #sec_1 #insec_2 a { width: 285px; margin-right: 6%; }
#company #sec_1 #insec_2 .txtbox { flex: 1; }
#company #sec_1 #insec_2 .txtbox li { margin-bottom: 20px; }
#company #sec_1 #insec_2 .txtbox li:last-child { margin-bottom: 0; }
#company #sec_1 #insec_2 .txtbox li .title { font-weight: bold; }
@media screen and (max-width: 1040px) {
    #company #sec_1 #insec_2 { background: #f7f7f7; padding: 40px 6%; }
}
@media screen and (max-width: 767px) {
    #company #sec_1 #insec_1 { margin-bottom: 60px; }
    #company #sec_1 #insec_1 .inbox { display: block; }
    #company #sec_1 #insec_1 .imgbox { width: 480px; max-width: 100%; height: auto; margin: 40px auto 0; }
    #company #sec_1 #insec_1 .txtbox .name { font-size: 1.4rem; }
    #company #sec_1 #insec_1 .txtbox .name span { font-size: 2rem; margin-left: 10px; }
    #company #sec_1 #insec_2 { padding: 30px 6%; margin-bottom: 40px; }
    #company #sec_1 #insec_2 .inbox { display: block; text-align: center; }
    #company #sec_1 #insec_2 a { text-align: center; margin-right: 0}
    #company #sec_1 #insec_2 a img { width: 300px; margin-bottom: 20px; }
    #company #sec_1 #insec_2 .txtbox li { text-align: left }
}


/* #sec_2 */
#company #sec_2 {  }
#company #sec_2 ul.list>li { display: flex; padding: 0 40px 30px; border-bottom: 1px solid #ccc; margin-bottom: 30px; }
#company #sec_2 ul.list>li:last-child { padding-bottom: 0; margin-bottom: 0; border-bottom: none; }
#company #sec_2 ul.list>li>.title { width: 140px; font-weight: bold; color: #fff; font-size: 1.8rem; margin-right: 40px; background: #2990d0; display: flex; align-items: center; justify-content: center; }
#company #sec_2 ul.list>li>.sublist { margin-right: 40px;}
#company #sec_2 ul.list>li>.flex1 { flex: 1; margin-right: 0; }
@media screen and (max-width: 1040px) {
    #company #sec_2 ul.list>li { display: block; padding: 0 0 0; text-align:center; border-bottom: none; margin-bottom:40px;}
    #company #sec_2 ul.list>li>.title { margin: 0 auto 20px; }
    #company #sec_2 ul.list>li>.sublist { margin-right: 0; }
}


/* #sec_3 */
#company #sec_3 {  }
#company #sec_3 ul.list li { padding: 25px 40px; }
#company #sec_3 ul.list li:nth-child(odd) { background: #f7f7f7; }
#company #sec_3 ul.list li dl { display: flex; }
#company #sec_3 ul.list li dt { width: 16%; min-width: 150px; }
#company #sec_3 ul.list li dd { flex: 1; }
@media screen and (max-width: 767px) {
    #company #sec_3 ul.list li { padding: 20px 4%; }
    #company #sec_3 ul.list li dt { width: 90px; min-width:0; }
}


/* #sec_4 */
#company #sec_4 {  }
#company #sec_4 .box1 { margin-top: 60px; text-align: center; }
#company #sec_4 .box1 .txt { font-size: 1.8rem; margin-bottom: 30px; }
#company #sec_4 ul.imgbox { display: flex; justify-content: space-between; }
#company #sec_4 ul.imgbox li { width: calc(33.33% - 13px); }
@media screen and (max-width: 767px) {
    #company #sec_4 .box1 .txt { font-size: 1.4rem; margin-bottom: 20px; }
    #company #sec_4 ul.imgbox { display: block; }
    #company #sec_4 ul.imgbox li { width: 100%; }
}









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


#commitment


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

/* common */
#commitment {  }
@media screen and (max-width: 767px) {
}


/* #sec_共通 */
#commitment #main .section .bgbox .subtitle { border: 1px solid #005fa3; background: #fff; padding: 20px; width: 610px; font-size: 2.8rem; color: #005fa3; text-align: center; margin: -90px auto 30px; }
#commitment #main .section .bgbox .txt1 { margin-bottom: 30px; }
#commitment #main .section .bgbox ul.list li { background: #fff; }
#commitment #main .section .bgbox ul.list li:nth-child(2) { background: #f0f5f9; }
#commitment #main .section .bgbox ul.list li .box { display: flex; align-items: center; }
#commitment #main .section .bgbox ul.list li .box .imgbox { width: 42%; height: 340px; }
#commitment #main .section .bgbox ul.list li .box .imgbox img {object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; }
#commitment #main .section .bgbox ul.list li .box .txtbox { flex: 1; padding: 0 6% 0 10%; position: relative; }
#commitment #main .section .bgbox ul.list li .box .txtbox .txt2 { position: absolute; background: #005fa3 ; font-size: 2.4rem; line-height: 1; font-weight: bold; color: #fff; top:calc(50% - 60px); left: -45px; padding: 40px 33px; }
_::-webkit-full-page-media, _:future, :root #commitment #main .section .bgbox ul.list li .box .txtbox .txt2 { left: -110px; }
#commitment #main .section .bgbox ul.list li:nth-child(2) .box .txtbox .txt2 { right: -45px; left: auto; background: #2990d0; }
_::-webkit-full-page-media, _:future, :root #commitment #main .section .bgbox ul.list li:nth-child(2) .box .txtbox .txt2 { right: 20px; }
#commitment #main .section .bgbox ul.list li .box.s1 { flex-direction: row-reverse; }
#commitment #main .section .bgbox ul.list li .box.s1 .txtbox { padding: 0 10% 0 6%; }
@media screen and (max-width: 1180px) {
	#commitment #main .section .bgbox ul.list li .box .imgbox { height: 400px; }
}
@media screen and (max-width: 1040px) {
	#commitment #main .section .bgbox .subtitle { width: 400px; font-size: 2.0rem; margin: -80px auto 30px; }
	#commitment #main .section .bgbox ul.list li .box { display: block; }
	#commitment #main .section .bgbox ul.list li:nth-child(2) { background: #fff; }
	#commitment #main .section .bgbox ul.list li .box .imgbox { height: 270px; width: 100%; }
	#commitment #main .section .bgbox ul.list li .box .txtbox,
	#commitment #main .section .bgbox ul.list li .box.s1 .txtbox { padding: 60px 6% 40px; }
	#commitment #main .section .bgbox ul.list li .box .txtbox .txt2 { -webkit-writing-mode:horizontal-tb; -ms-writing-mode:lr-tb; writing-mode:horizontal-tb; top:-30px; left: calc(50% - 80px); width:160px; text-align: center; right: auto; padding: 20px 0; }
    #commitment #main .section .bgbox ul.list li:nth-child(2) .box .txtbox .txt2 { left: calc(50% - 80px); right:auto; }
    _::-webkit-full-page-media, _:future, :root #commitment #main .section .bgbox ul.list li .box .txtbox .txt2 { left: calc(50% - 80px); }
    _::-webkit-full-page-media, _:future, :root #commitment #main .section .bgbox ul.list li:nth-child(2) .box .txtbox .txt2 { left: calc(50% - 80px); }
}
@media screen and (max-width: 767px) {
	#commitment #main .section .bgbox .subtitle { width: 100%; font-size: 1.6rem; margin: -90px auto 30px; padding: 10px 0px; }
	#commitment #main .section .bgbox .txt1 { margin-bottom: 20px; }
	#commitment #main .section .bgbox ul.list li .box .imgbox { height: 230px; }
	#commitment #main .section .bgbox ul.list li .box .txtbox .txt2 { top:-25px; left: calc(50% - 80px); width:160px; padding: 15px 0; font-size: 1.8rem; }
}
@media screen and (max-width: 639px) {
	#commitment #main .section .bgbox .subtitle { width: 100%; font-size: 1.6rem; margin: -70px auto 20px; padding: 10px 0px; }
}


/* .section */
#commitment #main .section { padding-top: 60px; margin-bottom: 80px }
#commitment #main #sec_1 { padding-top: 50px }
@media screen and (max-width: 767px) {
	#commitment #main .section { margin-bottom: 20px; }
	#commitment #main #sec_1 { padding-top: 35px }
}


/* #sec_2 */
#commitment #main #sec_2.section .bgbox ul.list li .box .txtbox { padding: 0 6%; }
@media screen and (max-width: 1040px) {
	#commitment #main #sec_2.section .bgbox ul.list li .box .txtbox { padding: 40px 6%; }
}
@media screen and (max-width: 500px) {
	#commitment #main #sec_2.section .bgbox ul.list li .box .txtbox { padding: 30px 6%; }
}


/* #sec_3 */
#commitment #main #sec_3.section .bgbox ul.list li .box .txtbox { padding: 0 6%; }
#commitment #main #sec_3.section .bgbox ul.list li .box .imgbox { position: relative; width: 42%; height: 400px; }
#commitment #main #sec_3.section .bgbox ul.list li .box:last-child { margin-bottom: 40px; }
#commitment #main #sec_3.section .box1 { margin-top: 60px; text-align: center; }
#commitment #main #sec_3.section .box1 .txt { font-size: 1.8rem; margin-bottom: 30px; }
@media screen and (max-width: 1040px) {
	#commitment #main #sec_3.section .bgbox ul.list li .box .txtbox { padding: 40px 6%; }
	#commitment #main #sec_3.section .bgbox ul.list li .box .imgbox { width: 100%; height: 270px; }
}
@media screen and (max-width: 767px) {
    #commitment #main #sec_3.section .box1 .txt { font-size: 1.4rem; margin-bottom: 20px; }
    #commitment #main #sec_3.section .bgbox ul.list li .box:last-child { margin-bottom: 20px; }
}
@media screen and (max-width: 500px) {
	#commitment #main #sec_3.section .bgbox ul.list li .box .txtbox { padding: 30px 6%; }
}










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


#business


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

/* common */
#business {  }
@media screen and (max-width: 767px) {
}


/* #sec_1 */
#business #main #sec_1 .bgbox { margin: 30px 0 40px; }
#business #main #sec_1 ul.list li { text-align: center; font-size: 2.4rem; font-weight: bold; }
@media screen and (max-width: 767px) {
	#business #main #sec_1 .bgbox { margin: 30px 0 0px; padding: 30px 6%; margin-bottom: 0; }
	#business #main #sec_1 ul.list li { font-size: 1.8rem; }
}


/* #sec_2 */
#business #main #sec_2 .bgbox { margin: 30px 0 40px; }
#business #main #sec_2 ul.list { margin: 0 auto; }
#business #main #sec_2 ul.list li { text-align: center; font-size: 2.4rem; font-weight: bold; }
#business #main #sec_2 ul.list.s1 { display: flex; justify-content: center; }
#business #main #sec_2 .box1 { margin-top: 60px; text-align: center; }
#business #main #sec_2 .box1 .txt { font-size: 1.8rem; margin-bottom: 30px; }
@media screen and (max-width: 1040px) {
	#business #main #sec_2 ul.list.s1 { display: block; }
	#business #main #sec_2 ul.list.s1 li span { display: none; }
}
@media screen and (max-width: 767px) {
	#business #main #sec_2 .bgbox { margin: 30px 0 0px; padding: 30px 6%; margin-bottom: 0; }
	#business #main #sec_2 ul.list li { font-size: 1.8rem; display: block; }
    #business #main #sec_2 .box1 .txt { font-size: 1.4rem; margin-bottom: 20px; }
}









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


#recruit


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

/* common */
#recruit {  }
@media screen and (max-width: 767px) {
}


/* #sec_1 */
#recruit #main #sec_1 .box { display: flex; align-items: center; margin-bottom: 20px; }
#recruit #main #sec_1 .box:last-child { margin-bottom: 0px; }
#recruit #main #sec_1 .box .txtbox { flex: 1; }
#recruit #main #sec_1 .box .imgbox { width: 40%; margin-left: 6%; }
#recruit #main #sec_1 .box .imgbox img { object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; }
@media screen and (max-width: 1380px) {
	#recruit #main #sec_1 .box .imgbox { height: 340px; margin-left: 4%; }
}
@media screen and (max-width: 1040px) {
	#recruit #main #sec_1 .box .imgbox { height: 400px; }
}
@media screen and (max-width: 767px) {
	#recruit #main #sec_1 .box { display: block; }
	#recruit #main #sec_1 .box .imgbox { width: 100%; margin: 20px 0 50px 0; height: auto; }
}



/* #sec_2 */
#recruit #main #sec_2 .bgbox { margin: 30px 0 0px; }
#recruit #main #sec_2 ul.list { margin: 0 auto; }
#recruit #main #sec_2 ul.list li { text-align: center; font-size: 2.4rem; font-weight: bold; }
#recruit #main #sec_2 ul.list.s1 { display: flex; justify-content: center; }
#recruit #main #sec_2 .box1 { margin-top: 60px; text-align: center; }
#recruit #main #sec_2 .box1 .txt { font-size: 1.8rem; margin-bottom: 30px; }
@media screen and (max-width: 1040px) {
	#recruit #main #sec_2 ul.list.s1 { display: block; }
	#recruit #main #sec_2 ul.list.s1 li span { display: none; }
}
@media screen and (max-width: 767px) {
	#recruit #main #sec_2 .bgbox { margin: 20px 0 0px; padding: 30px 6%; margin-bottom: 0; }
	#recruit #main #sec_2 ul.list li { font-size: 1.8rem; display: block; }
    #recruit #main #sec_2 .box1 .txt { font-size: 1.4rem; margin-bottom: 20px; }
}



/* #sec_3 */
#recruit #main #sec_3 .box { display: flex; }
#recruit #main #sec_3 .box .imgbox { width: 40%; height: 310px; margin-left: 6%; margin-top: 20px; }
#recruit #main #sec_3 .box .imgbox img { object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; }
#recruit #main #sec_3 .box .faqbox { flex: 1; }
#recruit #main #sec_3 .faqbox .question { color: #005fa3; font-size: 1.8rem; display: flex; align-items: baseline; }
#recruit #main #sec_3 .faqbox .question .txten { font-size: 4.0rem; margin-right: 20px; }
#recruit #main #sec_3 .faqbox .inbox { margin-bottom: 10px; }
#recruit #main #sec_3 .faqbox .inbox:last-child { margin-bottom: 0px; }
@media screen and (max-width: 1040px) {
	#recruit #main #sec_3 .box { display: block; margin-bottom: 20px; }
	#recruit #main #sec_3 .box .imgbox { width: 100%; margin-left: 0%; margin-top: 30px; }
}
@media screen and (max-width: 767px) {
	#recruit #main #sec_3 .faqbox .question { font-size: 1.6rem; align-items: center; }
	#recruit #main #sec_3 .faqbox .question .txten { font-size: 3.0rem; margin-right: 10px; }
}


/* #sec_4 */
#recruit #main #sec_4 { margin-top: 30px; }
#recruit #main #sec_4 dl { display: flex; flex-wrap: wrap; margin-bottom: 30px; }
#recruit #main #sec_4 dt { width: 30%; padding:20px 20px; box-sizing: border-box; background: #f7f7f7; border-right: 1px solid #ccc; text-align: left; }
#recruit #main #sec_4 dt span.en { font-size: 1.4rem; }
#recruit #main #sec_4 dd { width: 70%; padding:20px; box-sizing: border-box; background: #f7f7f7; text-align: left; }
#recruit #main #sec_4 *:nth-child(4n),#recruit #main #sec_4 *:nth-child(4n -1) { background: none; }
#recruit #main #sec_4 .txt1 { background: #191919; color: #fff; text-align: center; padding: 26px; margin-bottom: 180px; }
#recruit #main #sec_4 .txt2 { text-align: center; margin-bottom:30px; }
#recruit #main #sec_4 .txt2 span { font-weight: bold; position:relative; }
#recruit #main #sec_4 .txt2 span span { position: absolute; top: -30px; left: 0; width: 100%; text-align: center; font-size:1.2rem; font-weight: normal; letter-spacing: 0.05em; }
#recruit #main #sec_4 .box1 { text-align: center; }
#recruit #main #sec_4 .box1 { display: flex; justify-content: center; }
#recruit #main #sec_4 .box1 a { display: flex; font-size: 2.8rem; line-height: 1; font-family: 'Fjalla One', sans-serif; letter-spacing: 0.02em; text-decoration: none; color: #fff; background: #005fa3; padding: 35px 6%; min-width: 700px; box-sizing: border-box; justify-content: center; }
#recruit #main #sec_4 .box1 a img { width: 22px; margin-right: 8px; font-size: 0; }
#recruit #main #sec_4 .box1 a:hover { color: #fff; background: #191919; }
@media screen and (max-width: 1040px) {
	#recruit #main #sec_4 dt { width: 40%; padding:20px 20px; box-sizing: border-box; background: #f7f7f7; border-right: 1px solid #ccc; text-align: left; }
	#recruit #main #sec_4 dt span.en { font-size: 1.4rem; }
	#recruit #main #sec_4 dd { width: 60%; padding:20px; box-sizing: border-box; background: #f7f7f7; }
	#recruit #main #sec_4 .txt1 { margin-bottom: 80px; }
}
@media screen and (max-width: 767px) {
	#recruit #main #sec_4 .txt1 { font-size: 1.6rem; padding: 30px 6%; margin-bottom: 80px; }
	#recruit #main #sec_4 .txt2 { font-size: 1.6rem;  }
	#recruit #main #sec_4 .box1 a { font-size: 1.6rem; padding: 30px 20px; min-width: 260px; }
	#recruit #main #sec_4 dt span.en { font-size: 1.2rem; }
	#recruit #main #sec_4 .box1 a img { width: 18px; }
}
@media screen and (max-width: 639px) {
	#recruit #main #sec_4 dl { display: block; margin-bottom: 20px; margin-top: -20px; }
	#recruit #main #sec_4 dt { width: 100%; padding:20px 10px 10px; border-right: none; background: none; font-weight: bold; }
	#recruit #main #sec_4 dd { width: 100%; padding:0 10px 20px; border-bottom: 1px solid #ccc; background: none; }
	#recruit #main #sec_4 .txt1 { text-align: left; }
	#recruit #main #sec_4 .txt2 { text-align: left; }
}
@media screen and (max-width: 500px) {
	#recruit #main #sec_4 .txt1 {  padding: 20px 6%; }
}










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


#contact


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

/* common */
form .formbox>ul { }
form .formbox>ul>li { margin-bottom: 0px; border-bottom: 1px solid #333; }
form .formbox>ul>li:first-child { border-top: 1px solid #333; }
form .formbox>ul>li:last-child { margin-bottom: 0; }
form .formbox>ul>li>dl { display: flex; justify-content: space-between; }
form .formbox>ul>li>dl>dt { width: 180px; padding-top: 25px; }
form .formbox>ul>li>dl>dt { padding: 30px 25px;background: #f7f7f7; }
form .formbox>ul>li>dl>dd { width: calc(100% - 260px); padding: 15px 0; }
form .formbox>ul>li>dl>dd>ul.tategroup>li { margin-bottom: 10px }
form .formbox>ul>li>dl>dd>ul.tategroup>li:last-child { margin-bottom: 0; padding: 0; }
form .formbox>ul>li>dl>dd>ul.yoko>li{ margin-left: 20px; display: inline-block; }
form .formbox>ul>li>dl>dd>ul.yoko{ margin-left: -20px }
/*form .policy { padding: 40px; background: #f7f7f7; height: 200px; overflow: scroll; margin-bottom: 60px; }*/
form .formbox.check>ul>li>dl>dt { padding: 30px 25px; }
form .formbox.check>ul>li>dl>dd { padding: 30px 0; }
@media screen and (max-width: 767px) {
	form .formbox>ul>li { padding-top: 20px; }
	form .formbox>ul>li>dl{ flex-direction: column }
	form .formbox>ul>li>dl>dt{ width: 100%; padding: 0; margin-bottom: 0px }
	form .formbox>ul>li>dl>dd{ width: 100%; padding: 10px 0 20px; }
	form .formbox>ul>li>dl>dt { padding: 0px; background: none; }
	/*form .policy { padding: 8%; }*/
    form .formbox.check>ul>li>dl>dt { padding: 10px 0 0; }
    form .formbox.check>ul>li>dl>dd { padding: 0 0 30px; }
}
@media screen and (max-width: 639px) {
	form .formbox>ul>li>dl>dd>ul.yoko>li{ display: block; }
}

/* radiocheck */
form .formbox>ul>li.radiocheck { padding: 35px 0; }
form .formbox>ul>li.radiocheck>dl { padding-bottom: 45px; }
form .formbox>ul>li.radiocheck>dl:last-child { padding-bottom: 0px; }
form .formbox>ul>li.radiocheck>dl>dt { padding-top: 0; }
form .formbox>ul>li.radiocheck>dl>dd>ul>li { display: inline-block; margin-right: 15px; }
@media screen and (max-width: 767px) {
	form .formbox>ul>li.radiocheck { padding: 20px 0; }
	form .formbox>ul>li.radiocheck>dl { padding-bottom: 30px; }
	form .formbox>ul>li.radiocheck>dl>dd>ul>li { display: inline-block; margin-right: 15px; }
}


/* #sec_intro */
#contact #sec_intro .tel { display: flex; align-items: center; justify-content: center; color: #005fa3; }
#contact #sec_intro .tel a { text-decoration: none; color: #005fa3; }
#contact #sec_intro .tel span { font-size: 4.2rem; }
#contact #sec_intro .tel img { width: 24px; }
#contact #sec_intro .txt1 { font-size: 3.4rem; font-weight: bold; text-align: center; }
#contact #sec_intro .txt2 { text-align: center; margin-bottom: 60px;}
#contact #sec_intro .txt3 { text-align: center; }
#contact #sec_intro .bgbox .box { display: flex; align-items: center; justify-content: space-between; }
#contact #sec_intro .bgbox .box .txtbox { width: 60%; }
#contact #sec_intro .bgbox .box .imgbox a.btn { background: #005fa3; }
#contact #sec_intro .bgbox .box .imgbox a.btn.s1 { font-size: 1.6rem; font-family: Hiragino Kaku Gothic Pro; font-weight: bold; }
#contact #sec_intro .bgbox .box .imgbox a.btn:hover { background: #191919; }
#contact #sec_intro .txt_thanks { font-size: 1.8rem; text-align: center; }
@media screen and (max-width: 1380px) {
}
@media screen and (max-width: 1040px) {
	#contact #sec_intro .bgbox .box { display: block; }
	#contact #sec_intro .bgbox .box .txtbox { width: 100%; margin-bottom: 20px; }
}
@media screen and (max-width: 767px) {
	#contact #sec_intro .tel span { font-size: 3.4rem; }
	#contact #sec_intro .tel img { width: 20px; }
	#contact #sec_intro .txt1 { font-size: 2.6rem; }
	#contact #sec_intro .txt2 { margin-bottom: 40px;}
	#contact #sec_intro .txt_thanks { font-size: 1.5rem; }
}
@media screen and (max-width: 500px) {
	#contact #sec_intro .tel span { font-size: 3.0rem; }
	#contact #sec_intro .txt1 { font-size: 2.0rem; }
}


/*
#contact #sec_intro .box { margin-top: 40px; text-align: center; }
#contact #sec_intro .tel { font-size: 3.8rem; line-height: 1.5; }
@media screen and (max-width: 767px) {
	#contact #sec_intro .box { margin-top: 30px; }
	#contact #sec_intro .tel { font-size: 2.8rem; }
}
#contact #sec_intro .telbox { display: flex; justify-content: center; align-items: center; }
#contact #sec_intro .telbox .tel { color: #005fa3; font-size: 2.8rem; font-weight: bold; line-height: 1; margin-right: 10px; }
#contact #sec_intro .telbox svg { width: 20px; height: 35px; margin: -4px 5px 0 10px; fill: #005fa3; }
@media screen and (max-width: 1040px) {
	#contact #sec_intro .telbox { display: block; text-align: center; }
	#contact #sec_intro .txt1 { display: block; margin-bottom: 5px; }
	#contact #sec_intro .txt2 { display: block; margin-top: 10px; }
	#contact #sec_intro .telbox .tel { vertical-align: middle; }
	#contact #sec_intro .telbox svg { margin: -4px 0 0; vertical-align: middle; }
}
*/


/* #sec_form */
#contact #sec_form .txt1 { margin-bottom: 40px; text-align: center; }
#contact .btnbox { text-align: center; }
#contact .btnbox button.btn {display: inline-block;font-size: 2.4rem;font-family: 'Fjalla One', sans-serif;letter-spacing: 0.02em;width: 400px;color: #fff;padding: 40px 15px;min-width: 40%;line-height: 1;text-align: center;text-decoration: none!important;position: relative;box-sizing: border-box;background: #005fa3;font-weight: bold;}
#contact .btnbox button.btn s1 { font-size: 1.6rem; font-family: 'Fjalla One', sans-serif; letter-spacing: 0.02em; color: #fff; padding: 35px 15px; min-width: 40%; line-height: 1; text-align: center; text-decoration: none!important; position: relative; box-sizing: border-box; background: #005fa3; font-weight: bold; }
#contact .btnbox button.btn.grey { color: #191919; background: #f7f7f7; }
#contact .btnbox button.btn:hover { background: #191919; }
#contact .btnbox button.btn.grey:hover { background: #ddd; }
@media screen and (max-width: 1040px) {
    #contact .btnbox button.btn {width: 320px; }
}
@media screen and (max-width: 767px) {
    #contact .btnbox button.btn {font-size: 1.6rem;padding: 30px 4%; width: 300px; max-width: 40%;}
    #contact .btnbox button.btn:hover { background: #191919; }
	#contact #sec_form .txt1 { margin-bottom: 20px; text-align: left; }
}
@media screen and (max-width: 500px) {
	#contact .btnbox button.btn { min-width: 0; width: 40%; }
}










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


#estimate


//////////////////*/
#estimate .simulationbox .txt1 { margin-top: 60px; font-size: 2.8rem; padding: 20px 0; background: #191919; color: #fff; font-weight:bold; text-align:center; }
#estimate .simulationbox button.simulationbtn { padding: 20px 0; background: #005fa3; width: 500px; margin: 0 auto; }
#estimate .simulationbox .formlist { margin-bottom: 40px; }
#estimate .simulationbox .formlist>li { background: #f7f7f7; padding: 30px 60px; text-align:center; margin-top:20px; }
#estimate .simulationbox .formlist>li .title { font-weight: bold; margin-bottom:10px; }
#estimate .simulationbox .formlist>li .list1 { display: flex; justify-content: space-between;  }
#estimate .simulationbox .formlist>li .list1 li { background: #fff; text-align: center; margin-left:30px; width:30%; padding: 20px 0; font-size: 2.0rem; box-sizing: border-box; }
#estimate .simulationbox .formlist>li .list1 li:first-child { margin-left:0; }
#estimate .simulationbox .formlist>li .list1 li label{ font-weight: bold;}
#estimate .simulationbox .simulationbtn { color: #fff; font-size: 2.4rem; font-weight: bold; margin: 0 auto; display: block; height: 60px; }
#estimate .simulationbox .answer { margin: 40px 0 20px; display: flex; justify-content: center; align-items: center; font-size: 2.4rem; font-weight: bold; }
#estimate .simulationbox .answer input.total { margin-right: 10px; border: none !important; background: #f7f7f7!important; line-height: 2; padding: 0px 15px; width: 500px; font-size: 2.8rem; height: 100px; transition: 0.3s; text-align: center; font-family: 'Fjalla One', sans-serif; letter-spacing: 0.02em; }
#estimate .simulationbox .caution { text-align: center; }

#estimate input[type="radio"] { width: 18px; height: 18px; border-radius: 50%; background-color: #fff!important; cursor: pointer; vertical-align: -3px; border:1px solid #191919; background-size: 18px 18px!important; font-size: 0; transition: 0.3s; margin-right: 5px; }
#estimate input[type="radio"].checked,
#estimate input[type="radio"]:checked { background-color: #191919!important; border:1px solid #191919; }
#estimate input[type="radio"].checked:before,
#estimate input[type="radio"]:checked:before,
#estimate input[type="radio"].checked:after,
#estimate input[type="radio"]:checked:after { content:none!important; }
@media screen and (max-width: 639px) {
	#estimate input[type="radio"] { width: 15px; height: 15px; vertical-align: 0px; background-size: 15px 15px!important; }
}

@media screen and (max-width: 767px) {
	#estimate .simulationbox .txt1 { margin-top: 30px; font-size: 1.8rem; padding: 20px 0; }
	#estimate .simulationbox button.simulationbtn { padding: 10px 0; }
	#estimate .simulationbox .answer { margin: 20px 0; font-size: 2.0rem; }
	#estimate .simulationbox .answer input.total { width: 300px; height: 80px; font-size: 2.4rem; }
	#estimate .simulationbox .formlist { margin-bottom: 30px; }
	#estimate .simulationbox .formlist>li { padding: 4%; }
	#estimate .simulationbox .formlist>li .list1 li { background: #fff; text-align: center; margin-left:30px; width:30%; padding: 10px 0; font-size: 1.6rem; }
}
@media screen and (max-width: 639px) {
	#estimate .simulationbox .txt1 { margin-top: 30px; font-size: 1.8rem; padding: 20px 0; }
	#estimate .simulationbox button.simulationbtn { padding: 10px 0; width: 100%; }
	#estimate .simulationbox .simulationbtn { font-size: 1.8rem; }
	#estimate .simulationbox .answer { margin: 20px 0; font-size: 1.8rem; }
	#estimate .simulationbox .answer input.total { width: 350px; }
	#estimate .simulationbox .formlist { margin-bottom: 30px; }
	#estimate .simulationbox .formlist>li .list1 li { margin-left:0px; width:32%; }
	#estimate .simulationbox .caution { text-align: left; }
}
@media screen and (max-width: 500px) {
	#estimate .simulationbox .formlist>li .list1 { display: block; }
	#estimate .simulationbox .formlist>li .list1 li { width:100%; margin-bottom: 5px; }
	#estimate .simulationbox .formlist>li .list1 li:last-child { margin-bottom: 0px; }
	#estimate .simulationbox .answer input.total { width: 60%; height: 60px; }
}








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


#online


//////////////////*/
#online #main #sec_1 .calform { border: 1px solid #ccc; padding-bottom: 100px; margin-top: 20px; padding: 20px; }










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


#works.index


//////////////////*/
#works.index #main #sec_1 ul.catenavi { text-align: center; margin-bottom: 70px; }
#works.index #main #sec_1 ul.catenavi>li { display: inline-block; font-size: 2.4rem; }
#works.index #main #sec_1 ul.catenavi>li>a { text-decoration: none; font-weight: bold; }
#works.index #main #sec_1 ul.catenavi>li:after { content: " / "; }
#works.index #main #sec_1 ul.catenavi>li:last-child:after { display: none; }
#works.index #main #sec_1 ul.catenavi>li.current { }
#works.index #main #sec_1 ul.catenavi>li.current>a { text-decoration: underline; color: #005fa3; }
#works.index #main #sec_1 .inbox ul.list1 { display: flex; flex-wrap: wrap; margin-left: -25px; }
#works.index #main #sec_1 .inbox ul.list1 li { width: calc(25% - 25px); margin-bottom: 45px; margin-left: 25px; }
#works.index #main #sec_1 .inbox ul.list1 li a { text-decoration: none; }
#works.index #main #sec_1 .inbox ul.list1 .imgbox {margin-bottom: 20px;height: 200px; overflow: hidden; }
#works.index #main #sec_1 .inbox ul.list1 .imgbox img { object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; transition: 0.6s; }
#works.index #main #sec_1 .inbox ul.list1 a:hover .imgbox img { transform: scale(1.1); }
#works.index #main #sec_1 .inbox ul.list1 .databox { display: flex; }
#works.index #main #sec_1 .inbox ul.list1 .databox .data { color: #005fa3; margin-right: 10px;}
#works.index #main #sec_1 .inbox ul.list1 .databox .cate {  }
@media screen and (max-width: 1180px) {
    #works.index #main #sec_1 .inbox ul.list1 .imgbox { height:15vw;}
}
@media screen and (max-width: 1040px) {
	#works.index #main #sec_1 .inbox ul.list1 { margin-left: -13px; }
	#works.index #main #sec_1 .inbox ul.list1 li { width: calc(33.3% - 13px); margin-bottom: 45px; margin-left: 13px; }
    #works.index #main #sec_1 .inbox ul.list1 .imgbox { height:20vw; }
}
@media screen and (max-width: 767px) {
	#works.index #main #sec_1 ul.catenavi { margin-bottom: 40px; }
	#works.index #main #sec_1 ul.catenavi>li { font-size: 1.6rem; }
    #works.index #main #sec_1 .inbox ul.list1 a:hover .imgbox img { transform: scale(1); }
}
@media screen and (max-width: 639px) {
	#works.index #main #sec_1 .inbox ul.list1 { display: block; margin-left: 0px; }
	#works.index #main #sec_1 .inbox ul.list1 li { width: 100%; margin-bottom: 30px; margin-left: 0px; }
	#works.index #main #sec_1 .inbox ul.list1 .imgbox { height: 70vw; }
	#works.index #main #sec_1 .inbox ul.list1 .imgbox img { object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; }
}








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


#works.under


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

#works.under #main #sec_1 .mainbox .box { text-align: center; margin-bottom: 60px; }
#works.under #main #sec_1 .mainbox .box .title { font-size: 2.8rem; font-weight: bold; }
#works.under #main #sec_1 .mainbox .box .databox { display: flex; justify-content: center }
#works.under #main #sec_1 .mainbox .box .databox .data { color: #005fa3;  margin-right: 10px; }
#works.under #main #sec_1 .mainbox ul.list1 { position: relative;  display: flex; justify-content: space-between; margin-bottom: 30px; }
#works.under #main #sec_1 .mainbox ul.list1 li { width: 46%; }
#works.under #main #sec_1 .mainbox ul.list1 li:first-child:after { content: url(../img/common/arr1_blue.svg); display: inline-block; width: 26px; line-height: 0; position: absolute; top: 50%; left: 48.2%; }
#works.under #main #sec_1 .mainbox ul.list1 li .txt { color: #005fa3; font-size: 2.4rem; text-align: center; }
#works.under #main #sec_1 .box1 { margin-top: 160px; text-align: center; }
#works.under #main #sec_1 .box1 .txt { font-size: 1.8rem; margin-bottom: 30px; }
#works.under #main #sec_1 .img { display: flex; margin: 80px 0 50px; align-items: flex-start; flex-wrap: wrap; }
#works.under #main #sec_1 .img img { width: calc(33.3% - 0px); }
@media screen and (max-width: 767px) {
	#works.under #main #sec_1 .mainbox .box { margin-bottom: 30px; }
	#works.under #main #sec_1 .mainbox .box .title { font-size: 1.8rem; }
	#works.under #main #sec_1 .mainbox ul.list1 { position: static; display: block; margin-bottom: 30px; }
    #works.under #main #sec_1 .mainbox ul.list1 li { width: 100%; position: relative; margin-bottom: 30px; }
    #works.under #main #sec_1 .mainbox ul.list1 li:nth-child(2) { margin-bottom: 0; }
    #works.under #main #sec_1 .mainbox ul.list1 li:first-child:after { top: auto; bottom: -30px; left: calc(50% - 8px); transform: rotate(90deg); }
	#works.under #main #sec_1 .mainbox ul.list1 { margin-bottom: 20px;}
	#works.under #main #sec_1 .mainbox ul.list1 li:first-child:after { width: 16px; }
	#works.under #main #sec_1 .box1 { margin-top: 20px; }
	#works.under #main #sec_1 .box1 .txt { font-size: 1.4rem; margin-bottom: 20px; }
	#works.under #main #sec_1 .img { display: block; margin: 40px 0 50px; }
	#works.under #main #sec_1 .img img { width: 100%; }
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
}










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


#news.index


//////////////////*/
#news.index #main #sec_1 ul.list1 { margin-bottom: 60px; }
#news.index #main #sec_1 ul.list1 li { border-bottom: 1px solid #005fa3; padding: 26px 0; }
#news.index #main #sec_1 ul.list1 li:first-child { border-top: 1px solid #005fa3; }
#news.index #main #sec_1 ul.list1 li a { text-decoration: none; }
#news.index #main #sec_1 ul.list1 li a:hover { text-decoration: underline; }
#news.index #main #sec_1 ul.list1 li .data { color: #005fa3; margin-bottom: 5px; }









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


#news.under


//////////////////*/
#news.under #main { margin-bottom: 200px; }
#news.under #main #sec_1 .box1 { margin-bottom: 40px; }
#news.under #main #sec_1 .box1 .title { font-size: 2.8rem; margin-bottom: 20px;}
#news.under #main #sec_1 .box1 .data { color: #005fa3; }
@media screen and (max-width: 767px) {
	#news.under #main { margin-bottom: 80px; }
	#news.under #main #sec_1 .box1 { margin-bottom: 30px; }
	#news.under #main #sec_1 .box1 .title { font-size: 2.0rem; margin-bottom: 20px;  line-height: 3rem; }
	#news.under #main #sec_1 .box1 .data { color: #005fa3; }
}


