@charset "utf-8");
img {
	max-width: 100%;
	height: auto;
	vertical-align:bottom;
}
.pc {
	display:none;
}
.btnMore a {
	font-size: .875em;
}
h2 {
	font-size:1.375em;
}
p, li, dl {
	font-size:.875em;
	line-height: 1.8em;
}header,
.Inner, #aboutINDEX .shosai, #aboutINDEX .shosai ul, #recruitINDEX .Inn,.kasoCo,#pankuzu ul {
	width:94%;
	margin:auto;
}
iframe.movie{
min-height: 13.2em;
width:100%;
height:auto;
}

#logo {
	padding: .8em 0 .8em 2em;
	text-align: left;
	width:60%;
}

#contactF .box {
	padding: 2em 0;
}
#contactF .box+.box {
	border-top:1px dotted #CCC;
}
#contactF dd br {
	display:none;
}
.linkSite {
	padding: 0;
	overflow-x:scroll;
}
.linkSite ul {
	display:flex;
	white-space:nowrap;
flex-wrap:wrap;
}
.linkSite ul li {
width:50%;
	font-size:.688em;
}
.linkSite ul li a {
	display:block;
	padding: .8em 0;
border-left:0;
border-bottom: 1px solid rgba(255,255,255,.5);
border-right: 1px solid rgba(255,255,255,.5);
}
.linkSite ul li:last-child a{
border-bottom:0;
}
.linkSite ul li:nth-of-type(6){
 font-feature-settings: "palt";
letter-spacing:-.04em;
}

.boxLine{
padding: .8em;
}
/**/
.bnrMeti{
padding: 1.5em 1em;
}
.bnrMeti ul{
width:100%;
flex-wrap:wrap;
}
.bnrMeti ul li{
width: 48%;
padding: .5em 0;
}

p.catch, p.catchSub {
font-size: 1.25em;
}
#pageCommon p.catchMin,
#pageCommon p.txtML{
font-size: 1em;
}
/* ------------------- scroll -------------------- */

.tblScroll {
	margin-bottom: 15px;
	clear:both;
}
.tblScroll table {
	margin-bottom: 5px;
	width: 760px!important;
	zoom: 80%;
}
.tblScroll {
	overflow: auto;
	overflow-x: auto;
}

/* ---- */

/**/
footer {
	padding: 2.5em 0 1.5em;
}
footer .Inner {
	margin: 1em auto;
}
footer .Inn img {
	width:40%;
}
footer .Inn address {
	padding: 1em 0;
	text-align: center;
}

#pageTop{
width: 20%;
bottom:50px;
}

/**/
.boxNotice .Inner{
padding: 1.2em;
}

.boxNotice .Inner h2{
font-size: 1em;
}
/**/

#mainINDEX {
	height:auto;
overflow:visible;
}
.mainArea {
	padding: .5em 0 1.5em;
}
#mainINDEX h1 {
	font-size: 1.75em;
	padding: 6.8em 0 0;
}
#mainINDEX h1,
#mainINDEX p{
text-shadow: 0 0 10px rgba(0,0,0,.8);
}

#mainINDEX h1+p {
	padding: 0 0 1em;
}
#mainINDEX h1 br, #mainINDEX p br {
	display:none;
}
.mainArea:after {
	top:2em;
height:100%;
}
#mainINDEX.mainArea {

height:32.88em;
}
#mainINDEX.mainArea .Inner{
position:absolute;
left:15px;
right:15px;
height:30em;
z-index:10;
}


#mainINDEX img.main {
	max-width:none;
	height: 84%;
	left:-2%;
}
#mainINDEX::before{
bottom:1px;
top:60px;
}
#mainK{
width:100%;
}

#mainK h1{
font-size: 1.375em;
padding: 1.6em 0 .8em .8em;
text-align: left;
}
#mainK img.main{
max-width:none;
height: 84%;
top:auto;
bottom:0;
vertical-align:bottom;
}

/**/
.slider {
	margin:auto;
	zoom:70%;
	position:relative;
}
 #newsINDEX .Inner::after, #aboutINDEX .Inner::after, #seminarINDEX .Inner::after, #officeINDEX .Inner::after, #recruitINDEX .Inner::after {
font-size: 6em;
right:0;
top:0;
left:auto;
bottom:auto;
}

#newsINDEX::before{
width:90%;
clip-path:polygon(80% 0, 100% 0, 100% 100%, 0% 100%);
}
#aboutINDEX::after{
width:200%;
z-index:-1;
clip-path:polygon(90% 0, 100% 0, 100% 100%, 0% 100%);
}
#aboutINDEX{
z-index:0;
}
/**/
#newsINDEX .Inner {
	padding: 2.5em 0 1em;
}
#newsINDEX h2 a {
	font-size: .5em;
	padding: .5em 2em;
}
#newsINDEX dl {
	display:block;
}
#newsINDEX dt, #newsINDEX dd {
	width:100%;
	text-align:left;
}
#newsINDEX dt {
	padding: 1em 0 .5em 1em;
}
#newsINDEX dd {
	padding: 0 1em 1em 1em;
}

#newsINDEX .boya{
position:absolute;
right:0;
bottom:-4em;
width:16%;
}
/**/#pageCommon ul.listCategory{
flex-wrap:wrap;
padding: 0 0 2em;
}
#pageCommon ul.listCategory li{
font-size:.75em;
width: 32.4%;
margin: 0 0 .6em;
}

/**/
#aboutINDEX {
	margin:0;
}
#aboutINDEX .Inner {
	padding: 2em 0;
}
#aboutINDEX .round {
	zoom:52.88%;
	margin:auto;
}
#aboutINDEX h2 {
	margin-bottom: .8em;
}
#aboutINDEX h2+p {
	font-size: 1.063em;
}
#aboutINDEX .shosai .box h3 {
	margin: 0;
font-size:1.25em;
}
#aboutINDEX .shosai .box p {
	padding: 0 0 1em;
}
#aboutINDEX .shosai .box img {
	float:none;
	margin: 0 0 .5em;
	width:100%;
}
#aboutINDEX .shosai ul {
	padding:0 0 1.5em;
width:96%;
}
#aboutINDEX .shosai li a {
	padding: 1.4em 0 1.4em 3.4em;
}
#aboutINDEX .shosai .box .btnMore{
padding: 0 0 .6em;
}
#aboutINDEX .shosai .box .btnMore a{
margin: 0 0 0 .4em;
font-size:.75em;
padding: .3em 2em;
}
/**/
#seminarINDEX {
	padding: 2em 0;
}
#seminarINDEX ul{
display:block;
}
#seminarINDEX ul li {
	width: 100%;
}

#seminarINDEX ul li {
	padding: 0 0 2.5em;
}
#seminarINDEX ul li::after {
bottom:2.8em;
}
#seminarINDEX .btnMore {
	padding: .5em 0 2.5em;
}
#seminarINDEX .boxInfo h3 {
	font-size: .938em;
	width:25%;
}
#seminarINDEX .boxInfo h3 img{
display:block;
margin: .4em auto;
}
#seminarINDEX .boxInfo dl {
	width:75%;
	display:block;
}
#seminarINDEX .boxInfo dt {
	width:100%;
	align-items:center;
	padding: 1em 1em 0;
	display:flex;
	justify-content:space-between;
}
#seminarINDEX .boxInfo dd {
	padding: .5em 1em 1em;
	width:auto;
	border:0;
}

#seminarINDEX .boxInfo dt:nth-child(n+3),
#seminarINDEX .boxInfo dd:nth-child(n+3) {
display:none;
}

#seminarINDEX img.boya{

width:16%;
}

/**/
.seminarCo .btnMore{
display:flex;
justify-content:space-between;
}
.seminarCo .btnMore a{
width:46.8%;
margin: 1em auto .5em;
}
 td,th{
font-size: .875em;
}

.spBLOCK th,
.spBLOCK td{
width:100%;
display:block;
border-bottom:0;
}
.spBLOCK table{
border-bottom:1px solid #CCC;
}
.spBLOCK th br{
display:none;
}
.tblNormal.gaiyo th,
.tblNormal.gaiyo td{
padding: .6em;
font-size: .75em;
}
.tblNormal.gaiyo th{
white-space:nowrap;
}
.news dt span {
	font-size: .688em;
}
/**/
#recruitINDEX {
	padding: 0;
}
#officeINDEX .Inner {
	padding:2em 0;
}
#officeINDEX .btnMore {
	padding: 1em 0 2em;
}
.btnG a {
	padding: 1em 2em;
	font-size: .938em;
}
/**/
#recruitINDEX .Inner {
	padding: 16em 0 2em;
}
#recruitINDEX .recIMG {
	width: 94%;
	top: 3.6em;
	left:3%;
}
#recruitINDEX .Inn {
	padding: 2em .8em 1em;
}
#recruitINDEX .Inn p{
font-size: .75em;
}
#recruitINDEX .btnMore {
	padding: 1em 0 2em;
}

/**/
.kasoCo{
padding: 0 0 1em;
}
#secondTOP{
padding: 1.8em 0;
}
#secondTOP  ul{
display:block;
}
#secondTOP ul li{
margin: 0 0 1.5em;
width:100%;
}

#secondTOP.biz .flexPC{
margin: 0 calc(50% - 50vw);
background:transparent;
width: 100vw;
margin-bottom:2em;
}

#secondTOP.biz .Inn{
padding: 1.5em;
}
#secondTOP.biz .box .btnMore a{
padding: 1.2em 1.8em;
}
#secondTOP.biz .flexPC img{
clip-path: polygon(95% 0, 100% 16%, 100% 100%, 0 100%, 0 0);
}
#secondTOP.biz .flexPC.verse img{
clip-path: polygon(8% 0, 100% 0, 100% 100%, 0 100%, 0 20%);
}
#secondTOP.biz .flexPC .Inn{

background:#07bd83;/**/
clip-path: polygon(100% 0, 100% 100%, 3% 100%, 0 86%, 0 0);
}
#secondTOP.biz .flexPC.verse .Inn{
clip-path: polygon(100% 0, 100% 76%, 95% 100%, 0 100%, 0 0);
}

/**/

#pankuzu{
padding:3em 0 1em 0;
}#pankuzu li {
font-size:.688em;
}
#pankuzu li a{
padding:0;
}
/**/
#pageCommon{
padding: 1.8em 0;
}
#pageCommon h3{
font-size: 1.125em;
}
#pageCommon h4 {
font-size:1em;
}
#pageCommon h5,
#pageCommon h6{
font-size:.938em;
}
.w30{
width:30%;
}
.w40{
width:40%;
}
.wHalf{
width:50%;
}
.w100 {
    width: 100%;
}

.fltLpc {
    float: none;
    width: 100% !important;
}
.Column .box .btnMore{
padding: 0 0 2em;
}

#pageCommon ul.flowTxt li {
    padding: 0.91em;
}
/**/

#pageCommon .linkCo{
display: block;
}
#pageCommon .linkCo .box{
width:auto;
}

/**/
#pageCommon .flexPC.contactCenter .box h4{
font-size: 1em;
display:block;
padding: .4em 0;
margin: 2em 0 1.2em;
}
#pageCommon .flexPC.contactCenter .box th{
padding-right:1.6em;
}
#pageCommon .flexPC.contactCenter .box th::after{

right: .6em;
content:"：";
}
#pageCommon .flexPC.contactCenter .box table{
width:auto;
margin: 0 auto;
}#pageCommon #FAQ h4{
font-size: .938em;
padding-right:2em;
}
#pageCommon #FAQ .qaA p{
font-size: .875em;
}
#pageCommon #FAQ .qaA{
padding: 1em .8em 1em 2.4em;
}
#pageCommon #FAQ .qaA::before{
left:.6em;
top: .6em;
zoom:80%;
}
#pageCommon #FAQ .qaA::after{
left: .88em;
top: .88em;
zoom:80%;
}

/**/
#pageCommon #sdgsINDEX h3{
font-size: 1.063em;
}

#pageCommon ul.listSDGs a{
line-height: 1.3em;
height:5em;
}
#pageCommon .tblSDGs th, #pageCommon .tblSDGs td{
font-size: .813em;
padding: .6em;
}
/**/
#colorbox {
background:#FFF;
border-radius:px;
}
#cboxContent #cboxCurrent{
color:transparent;
display:none;
}

#pageCommon.magazineCo .Column.four{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}

#pageCommon.magazineCo .Column.four .box{
width:47.6%;
}

#pageCommon.magazineCo .Column a+a.pdf{
margin-top: 1em;
}

/**/
#pageCommon #qaCo h3{
font-size:.938em;
padding-right:3em;
}
#pageCommon #qaCo h3::after{
right:.4em;
zoom:80%;
top:.48em;
}

#pageCommon.meyasuCo .tblNormal th,
#pageCommon.meyasuCo .tblNormal td{

}
#pageCommon.meyasuCo .tblNormal td{
white-space:nowrap;
text-align: center;
}
/**/

#kyoukai {
background-size: auto 100%;
	height: 440px;
	width: 100%;
	min-width: 340px;
position:relative;
	z-index: 1;
}


#kyoukai #zenkoku {
	position: absolute;
	top: 100px;
	left: 30px;
}
#kyoukai #hokkaido {
	position: absolute;
	top: 40px;
	left: 200px;
}
#kyoukai #tohoku {
	position: absolute;
	top: 150px;
	left: 266px;
}
#kyoukai #hokuriku {
	position: absolute;
	top: 170px;
	left: 138px;
}
#kyoukai #kansai {
	position: absolute;
	top: 198px;
	left: 104px;
}
#kyoukai #chugoku {
	position: absolute;
	top: 200px;
	left: 55px;
}
#kyoukai #kanto {
	position: absolute;
	top: 245px;
	left: 220px;
}
#kyoukai #chubu {
	position: absolute;
	top: 258px;
	left: 150px;
}
#kyoukai #shikoku {
	position: absolute;
	top: 276px;
	left: 75px;
}
#kyoukai #kyusyu {
	position: absolute;
	top: 314px;
	left: 15px;
}
#kyoukai #okinawa {
	position: absolute;
	top: 300px;
	left: 280px
}

ul.listEvent{
display:flex;
flex-wrap:wrap;
}

ul.listEvent li{
width:25%;
padding: .18em 0 .6em 1em;
float:none;
}
/**/
#pageCommon #galleryCo ul li{
width:48.4%;
 font-feature-settings: "palt";
font-size: .688em;
}
video{
width:100%;
height: 14em;
}
/* -- CSR -- */


#pageCommon #csrINDEX{
background-size: cover;

padding: 2em 0;

}
#pageCommon #csrINDEX p{
font-size: .938em;
}

#pageCommon ul.listCSR{
display:block;
}

#pageCommon ul.listCSR li{
width: 100%;
}

#pageCommon ul.listCSR a{
text-align: left;
}


#pageCommon p.csrMENU::before,
#pageCommon p.csrMENU::after{
width: 30%;
}

#pageCommon ul.Column{
display:block;
}

#pageCommon ul.Column.two li{
width:100%;
}


/**/

dl.dlNormal {
	padding-bottom: 2em;
}
dl.dlNormal dt {

	background-size: 1.125em;
	font-size: .938em;

	padding: 0 0 .6em 1.4em;
}
dl.dlNormal dd {
	font-size: .813em;
	line-height: 1.6em;
	padding: 0 0 1.6em 1.8em;
}