@charset "UTF-8";
/* 	
CSS page.css */
/*
base #302b2b
blue #0358B8
*/


/*//////////////////
#index
//////////////////*/

#index #mainv{ position: relative; height: 100vh; height: 100svh; width: 100%; min-height: 750px; }
#index #mainv .copybox{ color: #fff; position: absolute; z-index: 1;line-height: 2.6; left: 10%; bottom: 15%; }
#index #mainv .copybox>.inwrap{ display: inline-block; text-orientation: upright; }
#index #mainv .copybox .main{ font-size: 3.8rem; letter-spacing: 0.2em; font-feature-settings: "palt";}
#index #mainv .copybox .main span { color: rgba(255,255,255,0.0); background: rgba(255,255,255,0.0); padding: 15px 0px 5px; animation-delay: 1.3s; line-height: 2.3;}
#index #mainv .copybox .main span:nth-of-type(2) { animation-delay: 1.6s; }
#index #mainv .copybox .main span::before{ animation-delay: 1.3s; }
#index #mainv .copybox .main span:nth-of-type(2)::before { animation-delay: 1.6s; }
#index #mainv .bglist{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; }
#index #mainv .cover { background: #000; opacity: 0.3; position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
#index #mainv #scrollbtn{position: absolute;bottom: 0;right: 5%;color: #fff;}
#index #mainv #scrollbtn .arr{position: relative;height: 123px;overflow: hidden;}
#index #mainv #scrollbtn .arr .round{ width: 8px; height: 8px; background: #fff; border-radius: 50%; display: inline-block; position: absolute; left: 0; right: 0; margin-left: auto; margin-right: auto; top: 0; -webkit-animation: 3s arrow-animation infinite ease-in-out; animation: 3s arrow-animation infinite ease-in-out; }
#index #mainv #scrollbtn .arr:before{ content: ""; background: #fff; width: 1px; height: 100%; display: inline-block; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin-left: auto; margin-right: auto; }

#index #mainv .slidebox { z-index: -1; }
#index #mainv .slidebox,
#index #mainv .slidebox div,
#index #mainv .slidebox li { width: 100%; height: 100%; }
#index #mainv .slidebox li .bg { width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;'; display: block; }
#index #mainv .slidebox li:nth-child(2) .bg { object-position: 20% 100%; }
#index #mainv .slidebox li:nth-child(4) .bg { object-position: 80% 100%; }
#index #mainv .slidebox li.slick-current .bg,
#index #mainv .slidebox li.slick-slide[tabindex="0"] .bg { animation: zoomout 10s linear 0s 1 normal both; }
#index #mainv .slidebox li.slick-slide[tabindex="-1"] .bg { width: 100%; height: 100%; }
@-webkit-keyframes arrow-animation {
  0% { -webkit-transform: translate(0, 0); opacity: 1; }
  20% { opacity: 1; }
  50% { opacity: 1; }
  90% { -webkit-transform: translate(0, 123px); opacity: 1; }
  91% { -webkit-transform: translate(0, 123px); opacity: 0; }
  100% { opacity: 0; }
}
@keyframes arrow-animation {
  0% { -webkit-transform: translate(0, 0); opacity:1; }
  20% { opacity: 1; }
  50% { opacity: 1; }
  90% { -webkit-transform: translate(0, 123px); opacity: 1; }
  91% { -webkit-transform: translate(0, 123px); opacity: 0; }
  100% { opacity: 0; }
}
@keyframes zoomout {
	0% { transform: scale(1);}
	100% { transform: scale(1.2); }
}

@media screen and (max-width: 1100px){
	#index #mainv{ min-height: 650px; }
	#index #mainv .copybox>.incnt{ text-align: center; }
}
@media screen and (max-width: 767px){
	#index #mainv{ min-height: 600px; }
	#index #mainv .copybox .main{ font-size: 2.6rem; }
    #index #mainv .copybox .main span { padding: 12px 0 3px; }
	@-webkit-keyframes arrow-animation {
	  0% { -webkit-transform: translate(0, 0); opacity: 0; }
	  20% { opacity: 1; }
	  50% { opacity: 1; }
	  80% { -webkit-transform: translate(0, 63px); opacity: 0; }
	  100% { opacity: 0; }
	}
	@keyframes arrow-animation {
	  0% { -webkit-transform: translate(0, 0); opacity: 0; }
	  20% { opacity: 1; }
	  50% { opacity: 1; }
	  80% { -webkit-transform: translate(0, 63px); opacity: 0; }
	  100% { opacity: 0; }
	}
}
@media screen and (max-width: 500px){
	#index #mainv{ height: 600px; min-height: 0; }
	#index #mainv .copybox .main{ font-size: 2.2rem; }
    #index #mainv .copybox .main span {padding: 10px 0px 2px; }
	#index #mainv #scrollbtn{ right: 20px; }
}


/* #sec_1 */
#index #sec_1 .concept {width: 100%;padding: calc(180px + 8vw) 12% calc(200px + 8vw) 8%;position: relative;box-sizing: border-box;}
#index #sec_1 .concept .bg { z-index: -1; position: absolute; top: 0; left: 0; object-position: 0 100%; }
#index #sec_1 .concept .inwrap { display: flex; justify-content: space-between; }
#index #sec_1 .concept .cntbox { display: flex; flex-direction: column; align-items: flex-end; margin-top: 120px;}
#index #sec_1 .concept .cntbox .copy { margin-bottom: 60px;}
#index #sec_1 .concept .txtbox .toptitle .main {margin-left: 20px;letter-spacing: 0.3em;}
#index #sec_1 .concept .txtbox .toptitle .main span { font-size: 4.2rem; line-height: 6.8rem; }
#index #sec_1 .concept .cntbox .txt {font-size: 1.8rem;line-height: 2.1;margin-top: 25px;}
#index #sec_1 .insec ul.imgbox { display: flex; justify-content: space-between; margin: 20px 0 50px; }
#index #sec_1 .insec ul.imgbox>li { width: 32%; height: 240px; margin-top: 20px; }
#index #sec_1 .insec ul.strength {display: flex;flex-wrap: wrap;justify-content: space-between;margin-bottom: -15px;}
#index #sec_1 .insec ul.strength>li {width: 48%;display: flex;align-items: center;box-sizing: border-box;padding: 30px 0;}
#index #sec_1 .insec ul.strength>li:nth-child(-n+2) { border-bottom: 1px solid #ccc; }
#index #sec_1 .insec ul.strength>li .copy { flex-shrink: 0; letter-spacing: 0.12em; }
#index #sec_1 .insec ul.strength>li .txt { margin-left: 20px; line-height: 1.8;}
@media screen and (max-width: 1400px){
	#index #sec_1 .concept { padding: 300px 5% 300px 8%; }
	#index #sec_1 .concept .bg { object-position: 50% 100%; }
	#index #sec_1 .concept .cntbox { margin-top: 80px;}
	#index #sec_1 .concept .txtbox .toptitle .main { margin-left: 10px;}
	#index #sec_1 .concept .txtbox .toptitle .main span { font-size: 3rem; line-height: 1.4; }
	#index #sec_1 .concept .cntbox .txt { font-size: 1.7rem; }
}
@media screen and (max-width: 1100px){
	#index #sec_1 .concept { padding: 160px 8% 520px; }
	#index #sec_1 .concept .cntbox { align-items: flex-start; margin-top: 180px;}
	#index #sec_1 .concept .cntbox .copy { margin-bottom: 40px;}
	#index #sec_1 .insec ul.imgbox { margin: 20px 0 20px; }
	#index #sec_1 .insec ul.strength>li { flex-direction: column; padding: 30px 0; }
	#index #sec_1 .insec ul.strength>li .copy { width: 100%; margin-bottom: 10px; }
	#index #sec_1 .insec ul.strength>li .txt { width: 100%; margin-left: 0; }
}
@media screen and (max-width: 767px){
	#index #sec_1 .concept { padding: 120px 8% 420px; }
	#index #sec_1 .concept .bg { object-position: 30% 100%; }
	#index #sec_1 .concept .inwrap { flex-direction: column;}
	#index #sec_1 .concept .cntbox { margin-top: 0;}
	#index #sec_1 .concept .cntbox .copy { margin-bottom: 0px;}
	#index #sec_1 .concept .txtbox .toptitle .main span { font-size: 1.8rem; }
	#index #sec_1 .concept .cntbox .txt { font-size: 1.4rem; line-height: 2; }
}
@media screen and (max-width: 500px){
	#index #sec_1 .concept { padding: 80px 8% 360px; }
	#index #sec_1 .concept .cntbox .txt br { display: none;}
	#index #sec_1 .insec ul.imgbox>li { height: 180px; }
	#index #sec_1 .insec ul.strength>li { width: 100%; padding: 22px 0; }
	#index #sec_1 .insec ul.strength>li:nth-child(3) { border-bottom: 1px solid #ccc; }
}

/* #sec_2 */
#index #sec_2 .insec { display: flex; flex-direction: row; min-height: 800px; }
#index #sec_2 .insec .txtbox {display: flex;justify-content: center;align-items: center;box-sizing: border-box;flex: 1;background: #0358B8;min-height: 890px;}
#index #sec_2 .insec .txtbox .inwrap { min-width: 400px; width: 60%; color: #fff; }
#index #sec_2 .insec .txtbox .inwrap ul.inbox { border-top: 1px solid #fff; margin-top: 30px; }
#index #sec_2 .insec .txtbox .inwrap ul.inbox>li { border-bottom: 1px solid #fff; padding: 25px 0;}
#index #sec_2 .insec .txtbox .inwrap ul.inbox>li .copy { color: #fff; margin-bottom: 10px; }
#index #sec_2 .insec .imgbox { width: 48%; min-height:100vh;min-height:100svh; position: relative; display: flex; justify-content: center; align-items: center; }
#index #sec_2 .insec .imgbox .toptitle { color: #fff;}
#index #sec_2 .insec .imgbox img { position: absolute; top: 0; left: 0; z-index: -1; width: 200%; }
#index #sec_2 ul.imgsec { display: flex; justify-content: space-between; margin-top: 30px; margin-left: -15px; } 
#index #sec_2 ul.imgsec>li { margin-left: 15px; }
#index #sec_2 .btnwrap { margin-top: 30px; display: flex; flex-wrap: wrap; justify-content: center; }
#index #sec_2 .btnwrap>li { margin-top: 10px; }
#index #sec_2 .btnwrap>li:not(:last-child) { margin-right: 20px; }
@media screen and (max-width: 1100px){
	#index #sec_2 ul.imgsec { flex-wrap: wrap; justify-content: center; margin-top: 10px; } 
	#index #sec_2 ul.imgsec>li { width: 25%; margin-top: 15px; }
	#index #sec_2 ul.imgsec>li:last-child { display: none; }
}
@media screen and (max-width: 900px){
	#index #sec_2 .insec .txtbox .inwrap { min-width: 0; width: 76%; line-height: 1.85; min-height: auto; }
	#index #sec_2 .insec .imgbox { width: 50%; height:800px; }
	#index #sec_2 ul.imgsec>li { width: calc(33.3% - 15px); }
}
@media screen and (max-width: 767px){
	#index #sec_2 .insec { flex-direction: column; min-height: 0; background: #0358B8; }
	#index #sec_2 .insec .txtbox { width: 100%; padding-bottom: 80px; min-height: inherit; }
	#index #sec_2 .insec .txtbox .inwrap { width: 88%; line-height: 2; }
	#index #sec_2 .insec .imgbox { width: 100%; min-height:0; min-height:0; height:auto; flex-direction: column; align-items: flex-start;}
	#index #sec_2 .insec .imgbox img { position: static; width: 100%; z-index: 1; }	
	#index #sec_2 .insec .imgbox .toptitle { margin-top: 80px; margin-left: 6%;}
	#index #sec_2 .btnwrap { flex-direction: column; align-items: center; }
	#index #sec_2 .btnwrap>li { width: 88%; text-align: center; }
	#index #sec_2 .btnwrap>li:not(:last-child) { margin-right: 0; }
}
@media screen and (max-width: 500px){
	#index #sec_2 ul.imgsec { margin-left: -10px; } 
	#index #sec_2 ul.imgsec>li { width: calc(33.3% - 10px); margin-left: 10px; }
	#index #sec_2 .btnwrap { margin-top: 20px; }
}

/* #sec_3*/
#index #sec_3 {position: relative;padding-bottom: 200px;}
#index #sec_3 .bg { background: #F5F3F1; position: absolute; top: 80px; left: 0; width: 100%; height: calc(100% - 80px); z-index: -1; }
#index #sec_3 .toptitle .en { display: inline-block;}
#index #sec_3 .toptitle .main { display: inline-block; margin-left: 20px; vertical-align: 10px;}
#index #sec_3 .txtbox { padding-top: 30px; margin-bottom: 40px; display: flex; align-items: center;} 
#index #sec_3 .txtbox .txt1 {margin-left: 40px;font-size: 1.8rem;line-height: 1.8;margin-top: 7px;} 
#index #sec_3 .btnbox { margin-top: -40px;}
@media screen and (max-width: 1300px){
	#index #sec_3 .bg { top: 65px; height: calc(100% - 65px); }
}
@media screen and (max-width: 1100px){
	#index #sec_3 .txtbox { padding-top: 30px; margin-bottom: 40px; flex-direction: column; align-items: flex-start;} 
	#index #sec_3 .txtbox .txt1 { margin-left: 0; margin-top: 20px;} 
}
@media screen and (max-width: 767px){
	#index #sec_3 { padding-bottom: 80px; }
	#index #sec_3 .bg { top: 30px; height: calc(100% - 30px); }
	#index #sec_3 .toptitle .en { display: block;}
	#index #sec_3 .toptitle .main { display: block; margin-left: 0; vertical-align: bottom;}
	#index #sec_3 .txtbox { padding-top: 0; margin-bottom: 20px; }
	#index #sec_3 .txtbox .txt1 { margin-top: 10px; font-size: 1.4rem;} 
}
@media screen and (max-width: 500px){
	#index #sec_3 .txtbox .txt1 br { display: none;} 
}
/* #sec_4*/
#index #sec_4 .inwrap { display: flex; flex-direction: row; }
#index #sec_4 .inwrap .titlebox {flex-shrink: 0;margin-right: 10%;display: flex;flex-direction: column;padding-bottom: 30px; margin-top: -10px; }
#index #sec_4 .inwrap .secbox { width: 100%; flex: 1; }
#index #sec_4 .inwrap .titlebox .linkwrap{ padding-top: 20px; }
@media screen and (max-width: 1100px){
	#index #sec_4 .inwrap {display: block;}
	#index #sec_4 .inwrap .titlebox { width: 100%; flex-direction: row; justify-content: space-between; margin-bottom: 60px;}
	#index #sec_4 .inwrap .titlebox .toptitle { margin-bottom: 0;}
	#index #sec_4 .inwrap .titlebox p.linkwrap {padding-top: 0;margin-top: auto;}
	#index #sec_4 .inwrap .txtbox { width: 100%; }
}
@media screen and (max-width: 767px){
	#index #sec_4 .inwrap .titlebox { margin-bottom: 20px;}
}

/* #sec_5*/
#index #sec_5 { position: relative; display: flex; justify-content: center; align-items: center; height:900px; }
#index #sec_5 .bg { position: absolute; top: 0; left: 0; z-index: -1; }
#index #sec_5 .btnwrap { position: absolute; bottom: -30px; margin-top: 30px; display: flex; justify-content: center; padding: 0 6%; }
#index #sec_5 .btnwrap li { margin-top: 10px; }
#index #sec_5 .btnwrap li:not(:last-child) { margin-right: 20px; }
#index #sec_5 .copybox{ color: #fff; line-height: 2.6; }
#index #sec_5 .copybox>.inwrap{ display: inline-block; text-orientation: upright; }
#index #sec_5 .copybox .main{ font-size: 3.2rem; letter-spacing: 0.12em; font-feature-settings: "palt";}
#index #sec_5 .copybox .main span { color: rgba(255,255,255,0.0); background: rgba(255,255,255,0.0); padding: 15px 0 5px; line-height: 2.3; }
_::-webkit-full-page-media, _:future, :root #index #sec_5 .copybox .main { width: 90px;}
@media screen and (max-width: 1100px){
	#index #sec_5 { height:800px; }	
}
@media screen and (max-width: 767px){
	#index #sec_5 { margin-bottom: 180px; height:600px; }
	#index #sec_5 .btnwrap { flex-direction: column; bottom: -100px; width: 88%; align-items: center; }
	#index #sec_5 .btnwrap>li { width: 88%; text-align: center; }
	#index #sec_5 .btnwrap li:not(:last-child) { margin-right: 0; }
	#index #sec_5 .copybox .main{ font-size: 2.4rem; }
	#index #sec_5 .copybox .main span { padding: 12px 0 5px; }
	_::-webkit-full-page-media, _:future, :root #index #sec_5 .copybox .main { width: 70px;}
}
@media screen and (max-width: 500px){
	#index #sec_5 { height:480px; margin-bottom: 130px; }
	#index #sec_5 .copybox .main{ font-size: 2.2rem; }
	#index #sec_5 .copybox .main span { padding: 10px 0 5px; }
	_::-webkit-full-page-media, _:future, :root #index #sec_5 .copybox .main { width: 60px;}
}



/*//////////////////
#quolity
//////////////////*/

/* sec_1 */
#quolity #sec_1 { padding: 0; }
#quolity #sec_1 .quolitylist li { display: flex; justify-content: space-between; align-items: center; margin-bottom: 80px; }
#quolity #sec_1 .quolitylist li:nth-child(even) { flex-direction: row-reverse; }
#quolity #sec_1 .quolitylist li:last-child { margin-bottom: 0; }
#quolity #sec_1 .quolitylist li .imgbox{ width: 590px; height: 600px; display: flex; flex-direction: column; }
#quolity #sec_1 .quolitylist li .imgbox img { object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 50%; }
#quolity #sec_1 .quolitylist li:nth-child(1) .imgbox,
#quolity #sec_1 .quolitylist li:nth-child(5) .imgbox { width: 630px; }
#quolity #sec_1 .quolitylist li:nth-child(1) .imgbox img,
#quolity #sec_1 .quolitylist li:nth-child(5) .imgbox img { height: 100%; }
#quolity #sec_1 .quolitylist li .txtbox { margin-left: 70px; flex: 1;}
#quolity #sec_1 .quolitylist li:nth-child(even) .txtbox { margin-left: 0; margin-right: 70px; }
#quolity #sec_1 .quolitylist li .txtbox .titlebox {  margin-bottom: 30px; line-height: 1.7; }
#quolity #sec_1 .quolitylist li .txtbox .titlebox .copy span { font-size: 3.6rem; font-feature-settings : "palt"; line-height: 1.4; color: rgba(255,255,255,0.0); display: inline; position: relative;}
#quolity #sec_1 .quolitylist li .txtbox .titlebox .copy span::before{ content: ""; position: absolute; z-index: 1; top: 0%; right: 100%; bottom: 0%; left: 0%; background : #0358B8; }
#quolity #sec_1 .quolitylist li .txtbox .titlebox.-in .copy span{ animation-name: textanime1; animation-delay: 0.3s; animation-duration: 1.5s; animation-fill-mode: forwards; }
#quolity #sec_1 .quolitylist li .txtbox .titlebox.-in .copy span::before{ animation-name: textanime2; animation-delay: 0.3s; animation-duration: 1.5s; animation-fill-mode: forwards; }
#quolity #sec_1 .quolitylist li .txtbox .en{ line-height: 1;color: #0358B8; margin-bottom: 10px; }
#quolity #sec_1 .quolitylist li .txtbox .en span {font-size: 2rem; letter-spacing: 0.017em; line-height: 1.2; color: rgba(255,255,255,0.0); position: relative; color: transparent; display: inline; }
#quolity #sec_1 .quolitylist li .txtbox .titlebox .en span::before{ content: ""; position: absolute; z-index: 1; top: 0%; right: 100%; bottom: 0%; left: 0%; background : #0358B8; }
#quolity #sec_1 .quolitylist li .txtbox .titlebox.-in .en span{ animation-name: textanime1; animation-duration: 1.5s; animation-fill-mode: forwards; }
#quolity #sec_1 .quolitylist li .txtbox .titlebox.-in .en span::before{ animation-name: textanime2; animation-duration: 1.5s; animation-fill-mode: forwards; }
@media screen and (max-width: 1300px) {
	#quolity #sec_1 .quolitylist li .imgbox{ width: 50%; }
	#quolity #sec_1 .quolitylist li:nth-child(1) .imgbox,
	#quolity #sec_1 .quolitylist li:nth-child(5) .imgbox { width: 50%; }
}
@media screen and (max-width: 1100px) { 
	#quolity #sec_1 .quolitylist li { align-items: normal; height: auto; } 
	#quolity #sec_1 .quolitylist li .imgbox { display: flex; height: auto; width: 50%; }
	#quolity #sec_1 .quolitylist li .imgbox img { height: 50%; }
	#quolity #sec_1 .quolitylist li:first-child .imgbox img { object-position: 30% 50%;}
	#quolity #sec_1 .quolitylist li .txtbox { margin-left: 40px; padding: 60px 0;}
	#quolity #sec_1 .quolitylist li:nth-child(even) .txtbox { margin-left: 0; margin-right: 40px; }
	#quolity #sec_1 .quolitylist li .txtbox .titlebox .copy span { font-size: 3.2rem; }
}
@media screen and (max-width: 767px) { 
	#quolity #sec_1 .quolitylist li { display: block; margin-bottom: 60px; } 
	#quolity #sec_1 .quolitylist li .imgbox { display: flex; height: auto; width: 100%; height: 100%; margin-bottom: 40px; }
	#quolity #sec_1 .quolitylist li .imgbox img { height: calc(100px + 20vw); }
	#quolity #sec_1 .quolitylist li:nth-child(1) .imgbox,
	#quolity #sec_1 .quolitylist li:nth-child(5) .imgbox { width: 100%; height: calc(100px + 40vw); }
	#quolity #sec_1 .quolitylist li .txtbox { flex: none; width: 100%; padding: 0; margin-left: 0; }
	#quolity #sec_1 .quolitylist li:nth-child(even) .txtbox { margin-right: 0; }
	#quolity #sec_1 .quolitylist li .txtbox .en span { font-size: 1.4rem; }
	#quolity #sec_1 .quolitylist li .txtbox .titlebox .copy span { font-size: 2rem; margin-bottom: 20px; }
}
@media screen and (max-width: 500px) { 
	#quolity #sec_1 .quolitylist li { margin-bottom: 50px; } 
	#quolity #sec_1 .quolitylist li .imgbox { margin-bottom: 30px; }
	#quolity #sec_1 .quolitylist li .imgbox img { height: calc(100px + 20vw); }
}




/*//////////////////
#business
//////////////////*/

/* sec_1 */
#business #sec_1 { position: relative; }
#business #sec_1 .bgbox { height: 670px; z-index: -1; position: absolute; top: 0; left: 0; width: 100%;}
#business #sec_1 .copybox{ color: #fff;line-height: 2.4; width: 100%; text-align: center; padding-top: 420px; }
#business #sec_1 .copybox>.inwrap{ display: inline-block;  }
#business #sec_1 .copybox .main{ font-size: 3.8rem; letter-spacing: 0.2em; font-feature-settings: "palt";}
#business #sec_1 .copybox .main span { color: rgba(255,255,255,0.0); background: rgba(255,255,255,0.0); padding: 15px 0 12px; line-height: 2.1; }
#business #sec_1 .copybox .en { font-size: 1.8rem; margin-right: 30px; line-height: 1;}
#business #sec_1 .copybox .en span { color: rgba(255,255,255,0.0); background: rgba(255,255,255,0.0); padding: 15px 4px 12px 6px; }
#business #sec_1 .insec { margin-top: -70px; background: #fff; width: 100%; box-sizing: border-box; padding: 100px 6% 0; display: flex; }
#business #sec_1 .insec .txtbox { flex: 1; margin-right: 60px;}
#business #sec_1 .insec .txtbox .copy { margin: 20px 0 10px; position: relative;}
#business #sec_1 .insec .txtbox .copy span { background: #fff; position: relative; padding-right: 5px; }
#business #sec_1 .insec .txtbox .copy:before { content: ""; height: 1px; width: 100%; font-size: 0; background: #0358B8; display: block; position: absolute; left: 0; top: 50%;}
#business #sec_1 .insec .txtbox ul.list1>li { text-indent: -1em; padding-left: 1em;}
#business #sec_1 .insec .imgbox {display: flex;justify-content: space-between;flex-wrap: wrap;width: 510px;margin-top: -15px;} 
#business #sec_1 .insec .imgbox>li {width: calc((100% - 30px) / 3);margin-top: 15px;} 
#business #sec_1 .btnwrap { margin-top: 40px; display: flex; justify-content: center; }
#business #sec_1 .btnwrap li { margin-top: 10px; }
#business #sec_1 .btnwrap li:not(:last-child) { margin-right: 20px; }
@media screen and (max-width: 1300px) {
	#business #sec_1 .insec { align-items: flex-start;}
	#business #sec_1 .insec .imgbox { width: 50%; } 
	#business #sec_1 .insec .imgbox>li {width: calc((100% - 15px) / 2);} 
	#business #sec_1 .insec .txtbox { margin-right: 40px;}
}
@media screen and (max-width: 1100px) {
	#business #sec_1 .insec .txtbox .copy:before { display: none;}
}
@media screen and (max-width: 767px){
	#business #sec_1 .bgbox { height: calc(200px + 30vw); } 
	#business #sec_1 .copybox{ padding-top: calc(120px + 30vw); }
	#business #sec_1 .copybox .main{ font-size: 2.6rem; }
    #business #sec_1 .copybox .main span { padding: 12px 0 3px; }
	#business #sec_1 .copybox .en { font-size: 1.3rem; margin-right: 20px; }
	#business #sec_1 .insec { margin-top: 0; padding: 20px 0 0; flex-direction: column;}
	#business #sec_1 .insec .imgbox { width: 100%; margin-top: 30px;} 
	#business #sec_1 .insec .txtbox { margin-right: 0;}
	#business #sec_1 .btnwrap { margin-top: 30px; flex-direction: column; bottom: -100px; width: 100%; align-items: center; }
	#business #sec_1 .btnwrap>li { width: 88%; text-align: center; }
	#business #sec_1 .btnwrap li:not(:last-child) { margin-right: 0; }
	#business #sec_1 .insec .txtbox .copy:before { display: block;}
}
@media screen and (max-width: 500px){
	#business #sec_1 .copybox .main{ font-size: 2.2rem; }
    #business #sec_1 .copybox .main span { padding: 10px 0 8px; }
	#business #sec_1 .copybox .en { font-size: 1.2rem; margin-right: 10px; }
}

/* sec_2 */
#business #sec_2 ul.flow>li {padding-bottom: 60px;display: flex;position: relative;}
#business #sec_2 ul.flow li::before { content: ""; position: absolute; left: 27px; top: 0; height: 100%; width: 1px; font-size: 0; display: block; background: #0358B8; z-index: -1; }
#business #sec_2 ul.flow>li:last-child { padding-bottom: 0; }
#business #sec_2 ul.flow>li:last-child::before { display: none; }
#business #sec_2 ul.flow>li .txtbox { flex: 1; margin-right: 60px; }
#business #sec_2 ul.flow>li .titlebox { display: flex; align-items: center; margin-bottom: 15px;}
#business #sec_2 ul.flow>li .titlebox .num { width: 54px; height: 54px; color: #fff; font-size: 3.2rem; background: #0358B8; display: flex; justify-content: center; align-items: center; border-radius: 27px; line-height: 1; margin-right: 20px; }
#business #sec_2 ul.flow>li .titlebox .copy span { font-size: 1.8rem;}
#business #sec_2 ul.flow>li .txt { padding-left: 74px;}
#business #sec_2 ul.flow>li .imgbox { width: 310px; }
@media screen and (max-width: 1100px) {
	#business #sec_2 ul.flow>li .txtbox { margin-right: 40px; }
}
@media screen and (max-width: 767px) {
	#business #sec_2 ul.flow>li { flex-wrap: wrap; }
	#business #sec_2 ul.flow li::before { left: 20px;  }
	#business #sec_2 ul.flow>li .txtbox { margin-right: 0; }
	#business #sec_2 ul.flow>li .titlebox { margin-bottom: 10px;}
	#business #sec_2 ul.flow>li .titlebox .num { width: 40px; height: 40px; font-size: 2.2rem; border-radius: 21px; margin-right: 10px; }
	#business #sec_2 ul.flow>li .imgbox { width: calc(100% - 50px); margin-left: 50px; margin-top: 20px; }
	#business #sec_2 ul.flow>li .txt { padding-left: 50px;}
}

/* sec_3 */
#business #sec_3 .insec { margin-top: 40px;}
#business #sec_3 .insec .copy { text-align: center; margin-bottom: 20px ;}
#business #sec_3 .insec .caution { line-height: 1.6; margin-bottom: 10px;display: none;}
#business #sec_3 table { width: 100%; border-collapse: collapse; font-size: 1.4rem; letter-spacing: 0.05em; margin-bottom: 10px; }
#business #sec_3 table th,
#business #sec_3 table td {border: 1px solid #999;padding: 23px 6px;text-align: center;line-height: 1.6;}
#business #sec_3 table th {background-color: #eae5e1;padding: 16px 2px;font-size: 1.3rem;font-weight: normal;}
#business #sec_3 table td:first-child { text-align: left; padding: 12px; }
#business #sec_3 table td:nth-child(4),
#business #sec_3 table td:nth-child(5),
#business #sec_3 table td:nth-child(6),
#business #sec_3 table td:nth-child(7) { font-size: 1.6rem; }
#business #sec_3 table td:last-child { text-align: left;  width: 30%; padding: 12px; }
#business #sec_3 table tr:nth-child(even) { background-color: #f9f9f9; }
@media screen and (max-width: 767px) {
	#business #sec_3 .table1 { overflow: scroll;}
	#business #sec_3 .table1 table { font-size: 1.2rem; } 
	#business #sec_3 .table1 table { width: 800px;}
	#business #sec_3 table th {font-size: 1.1rem;}
	#business #sec_3 table th:nth-child(1){ width: 20%; }
	#business #sec_3 .insec .caution{ display: block; }
}

/*//////////////////
#equipment
//////////////////*/

/* common */
#equipment #main .insec:not(:first-child) { margin-top: 40px;}
#equipment #main .subtitle { font-size: 1.8rem; padding-bottom: 10px; }
#equipment #main ul.list { margin-top: -20px; display: flex; flex-wrap: wrap; justify-content: space-between;}
#equipment #main ul.list>li { margin-top: 20px; width: 48%;}
@media screen and (max-width: 500px) { 
	#equipment #main .insec:not(:first-child) { margin-top: 30px;}
	#equipment #main .subtitle { font-size: 1.4rem; line-height: 1.7; padding-bottom: 20px;}
	#equipment #main .sectitle { margin-bottom: 30px; }
	#equipment #main ul.list>li { width: 100%; margin-top: 10px;}
}


/*//////////////////
#company
//////////////////*/

/* sec_1 */
#company #sec_1 { position: relative; }
#company #sec_1 .insec { display: flex; position: relative; align-items: center; flex-direction: row-reverse;}
#company #sec_1 .copybox{color: #fff;line-height: 2.4;position: absolute;top: 0;left: calc(50% - 300px);z-index: 10;}
#company #sec_1 .copybox>.inwrap{ display: inline-block;  }
#company #sec_1 .copybox .main{ font-size: 3.8rem; letter-spacing: 0.2em; font-feature-settings: "palt";}
#company #sec_1 .copybox .main span { color: rgba(255,255,255,0.0); background: rgba(255,255,255,0.0); padding: 15px 0 12px; line-height: 2.1; }
#company #sec_1 .imgbox { width: 50%; margin-right: 100px; position: relative; display: flex; flex-wrap: wrap; justify-content: flex-end; }
#company #sec_1 .imgbox .bg { width: 100%; height: 80%; position: absolute; top: 40px; left: 140px; z-index: -1; background: #F5F3F1; }
#company #sec_1 .imgbox>li:nth-child(2) { width: 100%; height: calc(12vw + 400px); margin: 100px 0 20px; }
#company #sec_1 .imgbox>li:nth-child(3) { width: 30%; height: calc(5vw + 100px); margin-right: 20px; }
#company #sec_1 .imgbox>li:nth-child(4) { width: 40%; height: calc(5vw + 150px); }
#company #sec_1 .txtbox { flex: 1; margin-right: 8%;}
#company #sec_1 .txtbox .txt1 { margin-bottom: 20px; font-size: 1.8rem; line-height: 2.1;}
#company #sec_1 .txtbox .name { font-size: 1.8rem; text-align: right; margin-top: 40px; }
#company #sec_1 .txtbox .name span { font-size: 2.4rem; }
@media screen and (max-width: 1300px) { 
	#company #sec_1 .imgbox { margin-right: 60px; }
	#company #sec_1 .txtbox { margin-right: 6%;}
}
@media screen and (max-width: 1100px) { 
	#company #sec_1 .insec { flex-direction: row; flex-wrap: wrap; align-items: flex-start;}
	#company #sec_1 .copybox { position: static; width: 40%; text-align: center; }
	#company #sec_1 .imgbox { width: 100%; margin-top: 40px;}
}
@media screen and (max-width: 767px){
	#company #sec_1 .copybox .main{ font-size: 2.6rem; }
    #company #sec_1 .copybox .main span { padding: 12px 0 3px; }
	#company #sec_1 .txtbox .txt1 { font-size: 1.4rem; line-height: 2;}
	#company #sec_1 .txtbox .name { font-size: 1.4rem; margin-top: 20px; }
	#company #sec_1 .txtbox .name span { font-size: 2rem; }
	#company #sec_1 .imgbox { margin-right: 6%; }
	#company #sec_1 .imgbox .bg { top: 10px; left: 10%; }
	#company #sec_1 .imgbox>li:nth-child(2) { margin: 50px 0 15px; }
	#company #sec_1 .imgbox>li:nth-child(3) { width: 40%; height: calc(20vw + 40px); margin-right: 15px; }
	#company #sec_1 .imgbox>li:nth-child(4) { width: 50%; height: calc(20vw + 60px); }
}
@media screen and (max-width: 500px){
	#company #sec_1 .copybox { width: 100%;}
	#company #sec_1 .copybox .main{ font-size: 2.2rem; }
    #company #sec_1 .copybox .main span { padding: 10px 0 8px; }
	#company #sec_1 .txtbox { margin: 20px 6% 0;}
}

/* sec_2 */
#company #sec_2 ul.imgbox { display: flex; justify-content: space-between; margin-bottom: 60px; }
#company #sec_2 ul.imgbox>li { width: 48.5%; }
#company #sec_2 ul.list1>li { text-align: center;}
#company #sec_2 ul.list1>li:not(:first-child) { padding-top: 30px; margin-top: 30px; border-top: 1px solid #0358B8;}
#company #sec_2 ul.list1>li .title {font-size: 3rem;color: #0358B8;letter-spacing: 0.2em;}
#company #sec_2 ul.list1>li .txt { font-size: 1.8rem;}
@media screen and (max-width: 1100px){
	#company #sec_2 ul.imgbox { flex-wrap: wrap; margin-bottom: 30px; }
	#company #sec_2 ul.imgbox>li { width: 100%; margin-bottom: 10px;}
	#company #sec_2 ul.list1>li:not(:first-child) { padding-top: 20px; margin-top: 20px; }
	#company #sec_2 ul.list1>li .title { font-size: 1.8rem; color: #0358B8; margin-bottom: 7px; }
	#company #sec_2 ul.list1>li .txt { font-size: 1.4rem; }
}


/* sec_3 */
#company #sec_3 .dllist ul { border-top: 1px solid #b2b2b2; }
#company #sec_3 .dllist ul>li {border-bottom: 1px solid #b2b2b2;padding-left: 5%;padding-right: 5%;padding-top: 23px;padding-bottom: 23px;}
#company #sec_3 .dllist ul>li dl { display: flex; flex-direction: row; }
#company #sec_3 .dllist ul>li dl dt {flex-shrink: 0;margin-right: 20px;width: 21%;font-weight: bold;}
#company #sec_3 .dllist ul>li dl dd { width: 100%; }
@media screen and (max-width: 1200px){
}
@media screen and (max-width: 767px){
	#company #sec_3 .dllist ul>li { padding-left: 4%; padding-right: 4%; padding-top: 15px; padding-bottom: 15px; }
	#company #sec_3 .dllist ul>li dl { display: block; }
	#company #sec_3 .dllist ul>li dl dt {margin-right: 0;width: 100%; margin-bottom: 2px;}
	#company #sec_3 .dllist ul>li dl dd{ font-size: 1.4rem; }
}

/* sec_4 */
#company #sec_4 .historylist ul>li { margin-bottom: 0; }
#company #sec_4 .historylist ul>li dl { display: flex; flex-direction: row; }
#company #sec_4 .historylist ul>li dl dt {display: flex;flex-direction: column;align-items: center;justify-content: center;width: 23%;background: #808080;color: #fff;flex-shrink: 0;padding: 10px;}
#company #sec_4 .historylist ul>li dl dd {padding: 25px 6%;width: 100%;background: #fff;min-height: 110px;display: flex;justify-content: center;flex-direction: column;box-sizing: border-box;}
#company #sec_4 .historylist ul>li:not(:last-child) dl dt{border-bottom: 2px solid #fff;}
#company #sec_4 .historylist ul>li:not(:last-child) dl dd{ border-bottom: 1px solid #b2b2b2; }
@media screen and (max-width: 767px){
	#company #sec_4 .historylist ul>li dl dd{ padding: 20px 4%; font-size: 1.4rem; line-height: 1.7; min-height: inherit; }
	#company #sec_4 .historylist ul>li dl dt{ width: 26%; }
}
@media screen and (max-width: 500px){
	#company #sec_4 .historylist ul>li dl dt{ width: 100px; padding: 20px 6px; font-size: 1.3rem; letter-spacing: 0.1em; }
}

/* sec_5 */
#company #sec_5 { background: #0358B8; }
#company #sec_5 .txt1 { font-size: 1.8rem; line-height: 1.85; text-align: center; color: #fff; margin-bottom: 40px;}
#company #sec_5 .insec { margin-top: 20px; background: #fff; padding: 50px 60px;}
#company #sec_5 .insec img.sdgs { width: 100%; max-width: 960px; margin: 0 auto; display: block;} 
#company #sec_5 .insec ul.sust>li { display: flex; align-items: flex-start; }
#company #sec_5 .insec ul.sust>li:not(:first-child) { border-top: 1px solid #b2b2b2; margin-top: 40px; padding-top: 40px;}
#company #sec_5 .insec ul.sust>li ul.imgbox { display: flex; flex-wrap: wrap; width: 250px; justify-content: space-between; margin-top: -10px;}
#company #sec_5 .insec ul.sust>li ul.imgbox>li { width: 120px; margin-top: 10px; }
#company #sec_5 .insec ul.sust>li .txtbox { flex: 1; margin-left: 60px;}
#company #sec_5 .insec ul.sust>li .txtbox .copy { margin-bottom: 20px;}
#company #sec_5 .insec ul.sust>li .txtbox .list>li { text-indent: -1em; padding-left: 1em; line-height: 1.8; margin-top: 3px;}
@media screen and (max-width: 1100px){
}
@media screen and (max-width: 767px){
	#company #sec_5 .txt1 { font-size: 1.4rem; margin-bottom: 30px; text-align: justify;} 
	#company #sec_5 .txt1 br { display: none;} 
	#company #sec_5 .insec { padding: 6%;}
	#company #sec_5 .insec ul.sust>li:not(:first-child) { margin-top: 30px; padding-top: 30px;}
	#company #sec_5 .insec ul.sust>li ul.imgbox { width: 170px; }
	#company #sec_5 .insec ul.sust>li ul.imgbox>li { width: 80px; }
	#company #sec_5 .insec ul.sust>li .txtbox { flex: 1; margin-left: 30px;}
	#company #sec_5 .insec ul.sust>li .txtbox .copy { margin-bottom: 12px;}
}
@media screen and (max-width: 500px){
	#company #sec_5 .txt1 { font-size: 1.4rem; margin-bottom: 30px; text-align: justify;} 
	#company #sec_5 .txt1 br { display: none;} 
	#company #sec_5 .insec { padding: 6%;}
	#company #sec_5 .insec ul.sust>li { display: flex; flex-wrap: wrap; }
	#company #sec_5 .insec ul.sust>li:not(:first-child) { margin-top: 30px; padding-top: 30px;}
	#company #sec_5 .insec ul.sust>li ul.imgbox { width: 100%; justify-content: space-between; margin-top: -10px;}
	#company #sec_5 .insec ul.sust>li ul.imgbox>li { width: 31%; }
	#company #sec_5 .insec ul.sust>li .txtbox { margin-left: 0px; width: 100%; }
	#company #sec_5 .insec ul.sust>li .txtbox .copy { margin: 25px 0 10px;}
}



/*//////////////////
#works.index
//////////////////*/

/* sec_1 */
#works.index #sec_1 ul.works {display: flex;flex-wrap: wrap;margin-top: -70px;margin-left: -30px;}
#works.index #sec_1 ul.works>li {width: calc(33.3% - 30px);margin-top: 70px;margin-left: 30px;}
#works.index #sec_1 ul.works a .imgbox { margin-bottom: 20px; overflow: hidden; position: relative; width: 100%; padding-top: 100%; }
#works.index #sec_1 ul.works a .imgbox img { transition: 0.3s; position: absolute; top: 0; left: 0; width: 100%; height: 100%; -o-object-fit : cover; object-fit : cover; }
#works.index #sec_1 ul.works a .txtbox { flex: 1; transition: 0.3s;}
#works.index #sec_1 ul.works a .txtbox .info { display: flex; }
#works.index #sec_1 ul.works a .txtbox .cat { font-size: 1.4rem; line-height: 1; background: #F5F3F1; border-radius: 15px; padding: 5px 15px; display: inline-block; min-width: 70px; text-align: center; }
#works.index #sec_1 ul.works a .txtbox .date { color: #0358B8; font-size: 1.8rem; margin-left: 20px;}
#works.index #sec_1 ul.works a .txtbox .title { margin-top: 12px; line-height: 1.7;}
#works.index #sec_1 ul.works a:hover .imgbox img { transform: scale(1.05); }
#works.index #sec_1 ul.works a:hover .txtbox { opacity: 0.7; }
@media screen and (max-width: 767px){
	#works.index #sec_1 ul.works a .txtbox .cat { font-size: 1.2rem; padding: 5px 15px 1px; min-width: 0; }
	#works.index #sec_1 ul.works a .txtbox .date { color: #0358B8; font-size: 1.6rem; margin-left: 10px;}
	#works.index #sec_1 ul.works a .imgbox { margin-right: 30px; }
	#works.index #sec_intro ul { display: block; }
	#works.index #sec_1 ul.works {margin-top: -20px;}
	#works.index #sec_1 ul.works>li {width: calc(50% - 30px);margin-top: 20px;}
}
@media screen and (max-width: 500px){
	#works.index #sec_1 ul.works { padding-top: 20px; margin-top: 20px; }
	#works.index #sec_1 ul.works a .txtbox .cat { font-size: 1rem; padding: 3px 12px 1px;}
	#works.index #sec_1 ul.works a .txtbox .date { font-size: 1.4rem; margin-left: 7px;}
	#works.index #sec_1 ul.works a .txtbox .title { font-size: 1.3rem; line-height: 1.6;}
}


/*//////////////////
#works.under
//////////////////*/

/* sec_1 */
#works.under #sec_1 .pagetitle { font-size: 3.6rem; color: #0358B8; margin-bottom: 30px; line-height: 1.6; }
#works.under #sec_1 .info { display: flex; }
#works.under #sec_1 .info .cat { font-size: 1.4rem; line-height: 1; background: #F5F3F1; border-radius: 15px; padding: 5px 15px; display: inline-block; min-width: 70px; text-align: center; }
#works.under #sec_1 .info .date { color: #0358B8; font-size: 1.8rem; margin-right: 20px;}
#works.under #sec_1 .imgbox,
#works.under #sec_1 .editbody { margin: 80px 0;}
#works.under #sec_1 .imgbox>.inwrap{ width: 100%; }
#works.under #sec_1 ul.spec { border-top: 1px solid #302b2b; margin: 30px 0 60px; }
#works.under #sec_1 ul.spec >li { border-bottom: 1px solid #302b2b; padding-left: 5%; padding-right: 5%; padding-top: 25px; padding-bottom: 25px; }
#works.under #sec_1 ul.spec >li dl { display: flex; flex-direction: row; }
#works.under #sec_1 ul.spec >li dl dt {flex-shrink: 0;margin-right: 20px;width: 21%;font-weight: bold;}
#works.under #sec_1 ul.spec >li dl dd { width: 100%; }
@media screen and (max-width: 1100px){
	#works.under #sec_1 .pagetitle { font-size: 3.2rem; }
}
@media screen and (max-width: 767px){
	#works.under #sec_1 .pagetitle { font-size: 2rem; margin-bottom: 20px; }
	#works.under #sec_1 .imgbox,
	#works.under #sec_1 .editbody { margin: 50px 0;}
	#works.under #sec_1 .info .cat { font-size: 1.2rem; padding: 5px 15px 1px; min-width: 0; }
	#works.under #sec_1 .info .date { color: #0358B8; font-size: 1.6rem; margin-left: 10px;}
	#works.under #sec_1 ul.spec { margin: 20px 0 50px; }
	#works.under #sec_1 ul.spec>li { padding-left: 4%; padding-right: 4%; padding-top: 15px; padding-bottom: 15px; }
	#works.under #sec_1 ul.spec>li dl { display: block; }
	#works.under #sec_1 ul.spec>li dl dt {margin-right: 0;width: 100%; margin-bottom: 2px;}
	#works.under #sec_1 ul.spec>li dl dd{ font-size: 1.4rem; }
}
@media screen and (max-width: 500px){
	#works.under #sec_1 .info .cat { font-size: 1.1rem; padding: 3px 12px 1px;}
	#works.under #sec_1 .info .date { font-size: 1.4rem; margin-left: 7px;}
	#works.under #sec_1 ul.spec>li { padding: 15px 0; }
}

/* mainimglist */
#works.under #sec_1 .imgbox .mainimglist { margin-bottom: 10px; width: calc(100% - 9px); aspect-ratio: 50/37; margin-left: auto; margin-right: auto; }
#works.under #sec_1 .imgbox .mainimglist .slick-list,
#works.under #sec_1 .imgbox .mainimglist .slick-track,
#works.under #sec_1 .imgbox .mainimglist .slick-slide { width: 100%; height: 100%; background: #f7f7f7; }
#works.under #sec_1 .imgbox .mainimglist .slick-slide img { object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; object-position: center center; vertical-align: bottom; }
#works.under #sec_1 .imgbox .mainimglist .prev, 
#works.under #sec_1 .imgbox .mainimglist .next { position: absolute; z-index: 3; top: calc(50% - 35px); cursor: pointer; outline: none; display: flex; justify-content: center; align-items: center; background: #fff; height: 40px; width: 40px; border-radius: 21px; transition: 0.3s; right: -20px; display: none!important; }
#works.under #sec_1 .imgbox .mainimglist .prev { left: -20px; right: auto; }
#works.under #sec_1 .imgbox .mainimglist .prev:after, 
#works.under #sec_1 .imgbox .mainimglist .next:after { content: url(../img/common/arr2.svg); width: 40px; font-size: 0; display: block; }
#works.under #sec_1 .imgbox .mainimglist .prev:after { transform: rotate(180deg); }
#works.under #sec_1 .imgbox .mainimglist .prev:hover { left:-25px; }
#works.under #sec_1 .imgbox .mainimglist .next:hover { right:-25px; }
@media screen and (max-width: 1100px) {
	#works.under #sec_1 .lead { font-weight:normal; margin: 50px 0 20px;}
	#works.under #sec_1 .imgbox .mainimglist .prev, 
	#works.under #sec_1 .imgbox .mainimglist .next { top: calc(50% - 20px); height: 40px; width: 40px; border-radius: 20px; right: -10px; }
	#works.under #sec_1 .imgbox .mainimglist .prev { left: -10px; right: auto; }
	#works.under #sec_1 .imgbox .mainimglist .prev:hover { left:-10px; }
	#works.under #sec_1 .imgbox .mainimglist .next:hover { right:-10px; }
	#works.under #sec_1 .imgbox .mainimglist .prev:after, 
	#works.under #sec_1 .imgbox .mainimglist .next:after { width: 20px; }
}
/* imglist */
#works.under #sec_1 .imgbox .imglist{ display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between;align-items: center;position: relative;overflow: hidden;margin: 0 auto;}
#works.under #sec_1 .imgbox .imglist>li{ margin: 10px 5px 0; }
#works.under #sec_1 .imgbox .imglist .slick-list {margin: 0 auto;overflow: hidden;width: 80%;}
#works.under #sec_1 .imgbox .imglist .slick-track { width: 100%; height: 100%; display: flex; }
#works.under #sec_1 .imgbox .imglist .slick-slide { background: #000; margin: 0 8px; height: auto !important; }
#works.under #sec_1 .imgbox .imglist .slick-slide img { object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; object-position: center center; cursor: pointer; transition: 0.5s; }
#works.under #sec_1 .imgbox .imglist .slick-slide img:hover { opacity: 0.8; }
#works.under #sec_1 .imgbox .imglist .prev, 
#works.under #sec_1 .imgbox .imglist .next { cursor: pointer; outline: none; content: url(../img/common/arr2.svg); width: 33px; font-size: 0; transition: 0.3s; }
#works.under #sec_1 .imgbox .imglist .prev { margin-left: 20px; transform: rotate(180deg); }
#works.under #sec_1 .imgbox .imglist .next { margin-right: 20px; }
#works.under #sec_1 .imgbox .imglist .prev:hover,
#works.under #sec_1 .imgbox .imglist .next:hover { opacity: 0.5 }
#works.under #sec_1 .imgbox._count1 .imglist{ display: none!important; }
@media screen and (max-width: 1100px) {
	#works.under #sec_1 .imgbox .imglist .prev,
	#works.under #sec_1 .imgbox .imglist .next { width: 24px; }
}
@media screen and (max-width: 767px){
	#works.under #sec_1 .imgbox .imglist .slick-slide { margin: 0 5px;}
	#works.under #sec_1 .imgbox .imglist .prev { margin-left: 0px; }
	#works.under #sec_1 .imgbox .imglist .next { margin-right: 0px; }
}


/*//////////////////
#news.under
//////////////////*/

/* sec_1 */
#news.under #sec_1 .pagetitle { font-size: 3.6rem; color: #0358B8; margin-bottom: 30px; line-height: 1.6; }
#news.under #sec_1 .info { display: flex; }
#news.under #sec_1 .info .date { color: #0358B8; font-size: 1.8rem; margin-right: 20px;}
#news.under #sec_1 .editbody { margin: 80px 0;}
@media screen and (max-width: 1100px){
	#news.under #sec_1 .pagetitle { font-size: 3.2rem; }
}
@media screen and (max-width: 767px){
	#news.under #sec_1 .pagetitle { font-size: 2rem; margin-bottom: 20px; }
	#news.under #sec_1 .editbody { margin: 50px 0;}
	#news.under #sec_1 .info .date { color: #0358B8; font-size: 1.6rem; margin-left: 10px;}
}
@media screen and (max-width: 500px){
	#news.under #sec_1 .info .date { font-size: 1.4rem; margin-left: 7px;}
}


/*///////////////////////////////////
#contact
///////////////////////////////////*/
/* sec_form */
#contact #sec_form .txt1 { text-align: center;}
#contact #sec_form .txt1 span { color: red;}
#contact #sec_form .subtitle { text-decoration: underline; margin-top: 10px; text-align: center;}
#contact #sec_form .txt2 { margin-bottom: 20px;}
#contact #sec_form .btnbox { margin-top: 40px; text-align: center;}
#contact #sec_form .btnbox>ul{ margin-left: -20px; margin-bottom: -15px; text-align: center; }
#contact #sec_form .btnbox>ul>li{ margin-left: 20px; width: calc(50% - 25px); margin-bottom: 15px; display: inline-block; max-width: 600px; }
#contact #sec_form .btnbox>ul>li>button{ width: 100%; min-width: inherit; }
#contact #sec_form .ppcheck a { text-decoration: underline;}

/* sec_1 */
#contact #sec_1 { text-align: center;}
#contact #sec_1 ul.contactbox { justify-content: center; margin-top: 20px;}
@media screen and (max-width: 1100px){
	#contact #sec_1 .telbox a .sub { line-height: 1.6; font-size: 1.4rem;}
	#contact #sec_1 .telbox a .sub br { display: block;}
}
@media screen and (max-width: 767px){
	#contact #sec_form .btnbox>ul{ margin-left: -0; }
	#contact #sec_form .btnbox>ul>li{ margin-left: 0; width: 100%; max-width: 600px; }
	#contact #sec_1 .telbox>a{ padding-left: 52px; }
	#contact #sec_1 .telbox>a::before{ width: 40px; height: 40px; }
	#contact #sec_1 .telbox.telbox a { display: flex; align-items: flex-start; flex-direction:column; }
	#contact #sec_1 .telbox.telbox a::after{ width: 16px; height: 16px; left: 14px; }
	#contact #sec_1 .telbox.telbox a .main { font-size:2.8rem; }
	#contact #sec_1 .telbox.telbox a .sub { display: none; font-size: 1.2rem; }
	#contact #sec_1 .sub { display: block;}
}
@media screen and (max-width: 500px){
	#contact #sec_1 .telbox.telbox a .main { font-size: 2.8rem; }
}

/* sec_thx */
#contact #sec_thx { text-align: center; }
#contact #sec_thx ul.contactbox { justify-content: center; margin-top: 20px;}




/*///////////////////////////////////
#privacy
///////////////////////////////////*/
/* sec_1 */
#privacy #sec_1 .copy.s2 { margin: 60px 0 20px; }
#privacy #sec_1 .subtitle { text-decoration: underline; display: block; margin-top: 10px; }
@media screen and (max-width: 767px){
	#privacy #sec_1 .copy.s2 { margin: 40px 0 10px; }
}




/*///////////////////////////////////
#recruit
///////////////////////////////////*/

#recruit #mainv.under { padding: calc(350px + 8vw) 0 calc(30px + 2vw); border-bottom: 1px solid #bbb; }
#recruit #main .titlebox { line-height: 1.7; color: #0358B8; margin-bottom: 60px;}
#recruit #main .titlebox>.inwrap{ display: inline-block; }
#recruit #main .titlebox .main span { font-size: 3.8rem; letter-spacing: 0.14em; color: rgba(255,255,255,0.0); display: inline; position: relative;}
#recruit #main .titlebox .main span::before{ content: ""; position: absolute; z-index: 1; top: 0%; right: 100%; bottom: 0%; left: 0%; background : #0358B8; }
#recruit #main .titlebox .-in .main span{ animation-name: textanime1; animation-delay: 0.3s; animation-duration: 1.5s; animation-fill-mode: forwards; }
#recruit #main .titlebox .-in .main span::before{ animation-name: textanime2; animation-delay: 0.3s; animation-duration: 1.5s; animation-fill-mode: forwards; }
#recruit #main .titlebox .en { margin-right: 25px;}
#recruit #main .titlebox .en span { font-size: 9rem; line-height: 1; color: rgba(255,255,255,0.0); position: relative; color: transparent; display: inline; }
#recruit #main .titlebox .en span::before{ content: ""; position: absolute; z-index: 1; top: 0%; right: 100%; bottom: 0%; left: 0%; background : #0358B8; }
#recruit #main .titlebox .-in .en span{ animation-name: textanime1; animation-duration: 1.5s; animation-fill-mode: forwards; }
#recruit #main .titlebox .-in .en span::before{ animation-name: textanime2; animation-duration: 1.5s; animation-fill-mode: forwards; }
#recruit #sec_intro .intro {margin-bottom: 40px;}
_::-webkit-full-page-media, _:future, :root #recruit #main .titlebox>.inwrap { width: 270px;}
@media screen and (max-width: 1300px) {
	#recruit #main .titlebox .en span { font-size: 8rem; }
	#recruit #main .titlebox .main span { font-size: 3.4rem; }
	_::-webkit-full-page-media, _:future, :root #recruit #main .titlebox>.inwrap { width: 230px;}
}
@media screen and (max-width: 1100px) {
	#recruit #main .titlebox .en span { font-size: 6rem; } 
	#recruit #main .titlebox .main span { font-size: 3rem; }
	_::-webkit-full-page-media, _:future, :root #recruit #main .titlebox>.inwrap { width: 200px;}
}
@media screen and (max-width: 767px){
	#recruit #main .titlebox .en span { font-size: 4.6rem; } 
	#recruit #main .titlebox .main span { font-size: 1.8rem; }
	#recruit #main .titlebox { margin-bottom:30px;}
	_::-webkit-full-page-media, _:future, :root #recruit #main .titlebox>.inwrap { width: 140px;}
}
@media screen and (max-width: 500px){
	#recruit #mainv.under { padding: calc(260px + 8vw) 0 calc(10px + 2vw); }
}

/* sec_1 */
#recruit #sec_1 { position: relative; padding: 200px 0 420px; padding-right: 50%;}
#recruit #sec_1 .bgbox { height: 100%; position: absolute; top: 0; left: 0; width: 100%;}
#recruit #sec_1 .insec { display: flex; position: relative; }
#recruit #sec_1 .copybox{ line-height: 2.4; width: 100%; text-align: center; margin-left: 10%; box-sizing: border-box; }
#recruit #sec_1 .copybox>.inwrap{ display: inline-block; margin-bottom: 30px; }
#recruit #sec_1 .copybox .main{ font-size: 3.8rem; letter-spacing: 0.2em; font-feature-settings: "palt"; color: #fff;}
#recruit #sec_1 .copybox .main span { color: rgba(255,255,255,0.0); background: rgba(255,255,255,0.0); padding: 15px 0 6px; line-height: 2.1; }
#recruit #sec_1 .copybox .txt1 { font-size: 1.8rem; margin-top: 30px; text-align: justify; }
#recruit #sec_1 .titlebox { line-height: 1; color: #0358B8; margin-bottom: 0;}
_::-webkit-full-page-media, _:future, :root #recruit #sec_1 .titlebox { width: 120px;}
@media screen and (max-width: 1300px) {
	#recruit #sec_1 { padding-right: 45%;}
	#recruit #sec_1 .copybox{ line-height: 2.3; margin-left: 5%; }
	_::-webkit-full-page-media, _:future, :root #recruit #sec_1 .titlebox { width: 80px;}
}
@media screen and (max-width: 767px){
	#recruit #sec_1 { padding: 70px 0 280px; background: #BDE4E5; }
	#recruit #sec_1 .bgbox .coverimg { object-position: 48% 50%; }
	#recruit #sec_1 .copybox{ margin-left: 0; margin-right: calc(60% - 100px); margin-top: 50px;}
	#recruit #sec_1 .copybox .main{ font-size: 2.6rem; line-height: 2.3; }
    #recruit #sec_1 .copybox .main span { padding: 12px 0 4px; }
	#recruit #sec_1 .copybox .txt1 { font-size: 1.5rem; }
	#recruit #sec_1 .titlebox { position: absolute; top: 0; left: 10px; } 
	_::-webkit-full-page-media, _:future, :root #recruit #sec_1 .titlebox { width: 80px;}
}
@media screen and (max-width: 500px){
	#recruit #sec_1 .copybox{ margin-top: 60px;}
	#recruit #sec_1 .copybox .main{ font-size: 2.2rem; }
    #recruit #sec_1 .copybox .main span { padding: 10px 0 4px; }
	#recruit #sec_1 .copybox .txt1 { font-size: 1.5rem; }
}

/* sec_2 */
#recruit #sec_2 { margin-top: -200px; padding-bottom: 220px; position: relative;}
#recruit #sec_2 .bg { height: 100%; z-index: -1; position: absolute; top: 0; left: 0; width: 100%; background: #F5F3F1;}
#recruit #sec_2 .insec {display: flex;margin-bottom: 120px;}
#recruit #sec_2 .txtbox { flex: 1; margin-left: 120px; }
#recruit #sec_2 .txtbox .list1>li { line-height: 1.7; text-indent: -1em; padding-left: 1em; margin-bottom: 10px; }
#recruit #sec_2 .txtbox .list1>li::before { content: "・"; line-height: 1; }
#recruit #sec_2 .inbox { border: 1px solid #0358B8; background: #0358B8; box-sizing: border-box; position: relative; margin-top: 60px;}
#recruit #sec_2 .inbox::before { content: ""; background: #fff; border-radius: 8px; display: block; position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 1; transition: 0.4s; }
#recruit #sec_2 .inbox .title { color: #fff; background: #0358B8; padding: 10px 6% 12px; line-height: 1; position: relative; z-index: 2;}
#recruit #sec_2 .inbox .title span { font-size: 3rem;}
#recruit #sec_2 .inbox .txt { padding: 20px 6%; position: relative; z-index: 2; }
@media screen and (max-width: 1100px) {
	#recruit #sec_2 .txtbox { flex: 1; margin-left: 80px; }
	#recruit #sec_2 .titlebox { margin-bottom: 40px; }
	#recruit #sec_2 .txtbox .list1>li { font-size: 2rem; }
}
@media screen and (max-width: 767px) {
	#recruit #sec_2 { margin-top: -160px; }
	#recruit #sec_2 .inbox { margin-top: 40px;}
	#recruit #sec_2 .inbox .title { padding: 8px 6% 10px; line-height: 1.4;}
	#recruit #sec_2 .inbox .title span { font-size: 2rem;}
	#recruit #sec_2 .inbox .txt { padding: 20px 6%; line-height: 1.85; }
	#recruit #sec_2 .txtbox .list1>li { font-size: 1.5rem; margin-bottom: 7px; }
}
@media screen and (max-width: 500px) {
	#recruit #sec_2 { padding-bottom: 140px; }
	#recruit #sec_2 .insec { margin-bottom: 80px; flex-direction: column; }
	#recruit #sec_2 .inbox { margin-top: 30px;}
	#recruit #sec_2 .titlebox { text-align: center; }
	#recruit #sec_2 .txtbox { flex: 1; margin-left: 0; }
	#recruit #sec_2 .txtbox .list1>li { font-size: 1.4rem; margin-bottom: 5px; }
}

/* sec_3 */
#recruit #sec_3 { margin-top: -100px; }
#recruit #sec_3 .insec { display: flex; justify-content: space-between; padding: 0 6%; }
#recruit #sec_3 #role {margin-bottom: 80px;padding-bottom: 80px;border-bottom: 1px solid #302b2b;}
#recruit #sec_3 #role .txtbox { margin-top: 60px; flex: 1; display: flex; align-items: center; flex-direction: column;}
#recruit #sec_3 #role .imgbox { width: 440px; display: flex; flex-direction: column; margin-left: 80px; margin-top: -20px;}
#recruit #sec_3 #role .imgbox>li { height: 300px; margin-top: 20px; }
#recruit #sec_3 #role .imgbox>li img { border-radius: 8px; }
#recruit #sec_3 #voice .titlebox { margin-right: 80px; }
#recruit #sec_3 #voice .inbox { flex:1; }
#recruit #sec_3 #voice .inbox .imgbox { margin-top: 40px; display: flex; justify-content: space-between;}
#recruit #sec_3 #voice .inbox .imgbox>li { height: 250px; width: 48%;}
#recruit #sec_3 #voice .imgbox>li img { border-radius: 8px; }
@media screen and (max-width: 1100px) {
	#recruit #sec_3 .insec { padding: 0; }
	#recruit #sec_3 #role .imgbox { width: 45%; margin-left: 60px; }
	#recruit #sec_3 #voice .titlebox { margin-right: 60px; }
}
@media screen and (max-width: 767px) {
	#recruit #sec_3 { margin-top: -60px; }
	#recruit #sec_3 .insec { flex-direction: column; }
	#recruit #sec_3 #role { margin-bottom:60px; padding-bottom: 60px; }
	#recruit #sec_3 #role .txtbox { margin-top: 0px; } 
	#recruit #sec_3 #role .imgbox { width: 100%; margin-left: 0; margin-top: 20px; }
	#recruit #sec_3 #role .imgbox>li { height: calc(100px + 40vw); }
	#recruit #sec_3 #voice .titlebox { text-align: center; margin-right: 0;}
	#recruit #sec_3 #voice .inbox .imgbox { flex-wrap: wrap; margin-top: 20px;}
	#recruit #sec_3 #voice .inbox .imgbox>li { height:  calc(100px + 40vw);; width: 100%; margin-top: 20px;  } 
}

/* sec_4 */
#recruit #sec_4 .infobox{ margin-bottom: 40px; }
#recruit #sec_4 .infobox>ul { border-top: 1px solid #302b2b; }
#recruit #sec_4 .infobox>ul>li { border-bottom: 1px solid #302b2b; padding-left: 5%; padding-right: 5%; padding-top: 25px; padding-bottom: 25px; }
#recruit #sec_4 .infobox>ul>li dl { display: flex; flex-direction: row; }
#recruit #sec_4 .infobox>ul>li dl dt{font-weight: bold;margin-right: 40px;flex-shrink: 0;width: 17%;box-sizing: border-box;}
@media screen and (max-width: 767px){
	#recruit #sec_4 .infobox>ul>li { padding-left: 4%; padding-right: 4%; padding-top: 15px; padding-bottom: 15px; }
	#recruit #sec_4 .infobox>ul>li dl { display: block; }
	#recruit #sec_4 .infobox>ul>li dl dt {margin-right: 0;width: 100%; margin-bottom: 5px; font-weight: bold;}
	#recruit #sec_4 .infobox>ul>li dl dd{ font-size: 1.4rem; }
}
