@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@100;200;300;400;500;600;700;800;900&family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');



/* html
------------------------------------------------*/

html {
    overflow-y: scroll;
    height: 100%;
}

::selection {
    background: #131A2C;
    color: #fff;
}

//Firefox
::-moz-selection {
    background: #131A2C;
    color: #fff;
}


*{
	box-sizing: border-box;
}

sub{
	position: relative;
	top: -0.2em;
}

/* body
------------------------------------------------*/

body {
    margin: 0;
	color: #231F20;
	font-family: 'Heebo', 'Noto Sans JP', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 16px;
    text-align: left;
    line-height: 1.7em;
	font-weight: 400;
	overflow-x: hidden;
	background: #fff !important;
}


/* 99% for safari; 100% is too large */

select,
input,
textarea {
    font: 99%;
	font-family: 'Heebo', 'Noto Sans JP',"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}
select:focus,
input:focus,
textarea:focus{
outline:none;
}
textarea{
	font-family: 'Heebo', 'Noto Sans JP', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	resize: none;
	width: 100%;
}




/* Bump up !IE to get to 13px equivalent */

pre,
code {
    font: 115% monospace;
    *font-size: 100%;
}


/* link
------------------------------------------------*/

a {
    font-size: 100%;
	cursor: pointer;
}

a:link {
    color: #231F20;
    text-decoration: none;
}

a:visited {
    color: #231F20;
    text-decoration: none;
}

a:hover,
a:active {
    color: #231F20;
    text-decoration: underline;
}

a.under {
    text-decoration: underline;
}

a.under:hover {
    text-decoration: none;
}
a.linkArrow:hover{
	opacity: 0.7;
	text-decoration: none;
}

/* img
------------------------------------------------*/

img {
    border: 0;
	vertical-align: middle;
}

a:active img {
    text-decoration: none;
}




/* text
------------------------------------------------*/

strong {
    font-weight: bold;
    line-height: 1.3;
    letter-spacing: 0em;
}

em {
    font-weight: bold;
    font-style: normal;
    line-height: 1.2;
}

address {
    font-style: normal;
}


/* h1, h2, h3, h4, h5, h6
------------------------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1em;
    margin: 0;
}


/* paragraph
------------------------------------------------*/

div {
    margin: 0;
}

p {
    margin: 0;
}


/* list
------------------------------------------------*/

ul {
    list-style-type: disc;
    margin: 0;
    padding: 0;
}

ul li {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

ul li ul {
    list-style: disc;
    margin: 0;
}

ol {
    list-style: decimal;
    margin: 0;
    padding-left: 0;
}

dl {
    margin: 0;
}

dl dt {
    margin: 0;
    padding: 0;
    line-height: 1.2;
}

dl dd {
    margin: 0;
    line-height: 1.5;
}


.list{
	margin-left: 1.5em;
}
.list li{
	list-style: disc;
	line-height: 1.4em;
}
.list li:nth-of-type(n+2){
	margin-top: 0.3em;
}

.decimal{
	margin-left: 1.5em;
}
.decimal li{
	list-style: decimal;
	line-height: 1.4em;
}
.decimal li:nth-of-type(n+2){
	margin-top: 0.3em;
}

.square{
	margin-left: 1.5em;
}
.square li{
	list-style: square;
	line-height: 1.4em;
}
.square li:nth-of-type(n+2){
	margin-top: 0.3em;
}


/* form
--------------------------------------*/

input,
textarea,
select {
    margin: 0;
    font-size: 15px;
	/*-webkit-appearance: none; */
	line-height: 1.5em;
	padding: 0.5em 1.2em;
	box-sizing: border-box;
	-moz-appearance: textfield;
	border: #C3C3C3 solid 1px;
	border-radius: 10px;
}

input[type="submit"],
input[type="button"]{
	-webkit-appearance: none;
}

input:focus,
textarea:focus {
  outline: 0;
}

option {
    padding-left: 0px;
}

.Eng {
    ime-mode: disabled;
}


/* common rules
================================================*/


/* align
------------------------------------------------*/

.right {
    text-align: right;
}

.center {
    text-align: center;
}

.left {
    text-align: left;
}

.middle {
    vertical-align: middle;
}

.bottom {
    vertical-align: bottom;
}

.top {
    vertical-align: top;
}

.red{
	color: #f00;
}
.black{
	color: #000;
}


/* table
------------------------------------------------*/

table {
    border-spacing: 0;
    border-collapse: collapse;
    width: 100%;
}


/* width
------------------------------------------------*/

.w100p {
    width: 100%;
}
.w90p {
    width: 90%;
}
.w80p {
    width: 80%;
}
.w70p {
    width: 70%;
}
.w60p {
    width: 60%;
}
.w50p {
    width: 50%;
}
.w40p {
    width: 40%;
}
.w30p {
    width: 30%;
}
.w20p {
    width: 20%;
}
.w10p {
    width: 10%;
}


.w50 {
    width: 50px;
    max-width: 50px;
}

.w100 {
    width: 100px;
    max-width: 100px;
}

.w200 {
    width: 200px;
    max-width: 200px;
}

.w300 {
    width: 300px;
    max-width: 300px;
}

.w400 {
    width: 400px;
    max-width: 400px;
}


/* text
------------------------------------------------*/

.f22 {
    font-size: 22px;
}

.f20 {
    font-size: 20px;
}

.f18 {
    font-size: 18px;
}

.f16 {
    font-size: 16px;
}

.f14 {
    font-size: 14px;
}

.f12 {
    font-size: 12px;
    line-height: 1.5em;
}


/*12px*/

.f-11 {
    font-size: 11px;
}


/*11px*/

.f-10 {
    font-size: 10px;
    line-height: 1.5em;
}


/*10px*/

.f-8 {
    font-size: 8px;
}

.f-warning {
    color: #C00;
}

.f-red {
    color: #FF0000;
}

.f-pink {
    color: #dc4d70;
}

.f-bk {
    color: #000;
}

.f-gy {
    color: #666;
}

.f-wt {
    color: #FFF;
}

.f-br {
    color: #b28146;
}

.f-plain {
    font-weight: normal;
}

.bold {
    font-weight: bold;
}
.normal{
	font-weight: normal;
}

.submessage {
    font-size: 11px;
}


/*10px*/


/* margin
------------------------------------------------*/

.m5 {
    margin: 5px;
}

.m10 {
    margin: 10px;
}

.mT2 {
    margin-top: 2px;
}

.mT5 {
    margin-top: 5px;
}
.mT10 {
    margin-top: 10px;
}
.mT15 {
    margin-top: 15px;
}
.mT20 {
    margin-top: 20px;
}
.mT30 {
    margin-top: 30px;
}
.mT35 {
    margin-top: 35px;
}
.mT40 {
    margin-top: 40px;
}
.mT50 {
    margin-top: 50px;
}
.mT60 {
    margin-top: 60px;
}
.mT80 {
    margin-top: 80px;
}

.mL5 {
    margin-left: 5px;
}

.mL10 {
    margin-left: 10px;
}

.mL15 {
    margin-left: 15px;
}

.mL18 {
    margin-left: 18px;
}

.mL20 {
    margin-left: 20px;
}

.mL30 {
    margin-left: 30px;
}

.mL35 {
    margin-left: 35px;
}

.mL50 {
    margin-left: 50px;
}

.mL100 {
    margin-left: 100px;
}

.mL200 {
    margin-left: 200px;
}

.mR5 {
    margin-right: 5px;
}

.mR10 {
    margin-right: 10px;
}

.mR15 {
    margin-right: 15px;
}

.mR20 {
    margin-right: 20px;
}

.mR30 {
    margin-right: 30px;
}

.mLR10 {
    margin-right: 10px;
    margin-left: 10px;
}

.mLR20 {
    margin-right: 20px;
    margin-left: 20px;
}

.mB5 {
    margin-bottom: 5px;
}

.mB10 {
    margin-bottom: 10px;
}

.mB15 {
    margin-bottom: 15px;
}

.mB20 {
    margin-bottom: 20px;
}

.mB30 {
    margin-bottom: 30px;
}

.mB40 {
    margin-bottom: 40px;
}

.mB50 {
    margin-bottom: 50px;
}

.mB60 {
    margin-bottom: 60px;
}

.mTB10 {
    margin-top: 10px;
    margin-bottom: 10px;
}


/* float
------------------------------------------------*/

.Lfloat {
    float: left;
}

.Rfloat {
    float: right;
}


/* [hack] clear fix
--------------------------------------*/

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.clearfix {
    display: inline-block;
    min-height: 1%;
    /* for IE 7*/
}


/* Hides from IE-mac \*/

* html .clearfix {
    height: 1%;
}

.clearfix {
    display: block;
}





@media screen and (max-width:959px){
	body,
	textarea, select{

	}

}



/* スマホ
------------------------------------------------*/
@media screen and (max-width:767.5px){
	body{
		font-size: 14px;
	}
	
	.mT10,.mT15 {
		margin-top: 3%;
	}
	.mT20 {
		margin-top: 5%;
	}
	.mT30,.mT35,.mT40,.mT50,.mT60{
		margin-top: 7%;
	}
	
	.mT80{
		margin-top: 12%;
	}
	
	
	input, textarea{
		transform: scale(0.9);
		font-size: 16px;
	}
	
	textarea{
		margin-left: -5%;
		padding: 0.5em 0.8em;
	}
	

}


@media print{
	.mT50 {
		margin-top: 20px !important;
	}
	.mT60 {
		margin-top: 30px;
	}
	.mT100 {
		margin-top: 50px !important;
	}
	
	
}





/* show_sp
--------------------------------------*/
.sSP {
    display: none;
}


/* general layout
================================================*/

.flexBox{
	display: flex;
}
.ac{
	align-items: center;
}
.afe{
	align-items: flex-end;
}
.jsb{
	justify-content: space-between;
}
.jcenter{
	justify-content: center !important;
}

.flexBox.half{
	justify-content: space-between;
	flex-wrap: wrap;
}
.flexBox.half > div{
	width: 47%;
}
.flexBox.half > div:nth-of-type(n+3){
	margin-top: 2em;
}

.flexBox.block3{
	flex-wrap: wrap;
}
.flexBox.block3 > div{
	width: 32%;
	margin-right: 2%;
}
.flexBox.block3 > div:nth-of-type(3n){
	margin-right: 0;
}
.flexBox.block3 > div:nth-of-type(n+4){
	margin-top: 2em;
}


.flexBox.ratio64,
.flexBox.ratio73,
.flexBox.ratio82,
.flexBox.ratio91{
	justify-content: space-between;
	flex-wrap: wrap;
}
.flexBox.ratio64 > .ratio60{
	width: 57%;
}
.flexBox.ratio64 > .ratio40{
	width: 40%;
}
.flexBox.ratio73 > .ratio70{
	width: 67%;
}
.flexBox.ratio73 > .ratio30{
	width: 30%;
}
.flexBox.ratio82 > .ratio80{
	width: 77%;
}
.flexBox.ratio82 > .ratio20{
	width: 20%;
}
.flexBox.ratio91 > .ratio90{
	width: 87%;
}
.flexBox.ratio91 > .ratio10{
	width: 10%;
}

.mB0{
	margin-bottom: 0 !important;
}



/* wrap
------------------------------------------------*/
.MW1200{
	max-width: 1280px;
	padding: 0 40px;
	margin: 0 auto;
}
.MW1500{
	max-width: 1580px;
	padding: 0 40px;
	margin: 0 auto;
}


h2{
	font-family: 'Roboto', sans-serif;
	font-size: 65px;
	font-weight: 700;
	line-height: 1em;
	font-style: italic;
	color: #0E2884;
	position: relative;
	margin-bottom: 1em;
}
h2:before{
	content: "";
	position: absolute;
	bottom: -0.3em;
	left: 0;
	background: url("../images/common/h2_bg.svg") center top no-repeat;
	background-size: 100% auto;
	width: 1.5em;
	height: 0.1em;
}
h2 span{
	display: block;
	color: #000;
	font-size: 16px;
	position: absolute;
	bottom: -4em;
	left: 0;
	line-height: 1.5em;
	width: 100%;
	font-style: normal;
	white-space: nowrap;
}

h3{
	font-size: 34px;
	margin-bottom: 1em;
}
h3 span{
	display: block;
	font-size: 16px;
	line-height: 1.5em;
	color: #0E2884;
	font-family: 'Roboto', sans-serif;
	font-style: italic;
	font-weight: 500;
	margin-top: 0.8em;
}

h4{
	font-size: 24px;
	color: #333;
	margin-bottom: 1.5em;
	padding-bottom: 0.8em;
	border-bottom: #C3C3C3 solid 4px;
}


h5{
	color: #0E2884;
	font-size: 20px;
	margin-bottom: 1em;
}
h5:before {
	content: "■";
}




.linkArrow{
	position: relative;
	display: block;
}
.linkArrow:before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	width: 50px;
	height: 50px;
	background: url("../images/common/link_arrow.svg") center top no-repeat;
	background-size: 100% auto;
}

.pdfLink{
	position: relative;
	display: inline-block;
	margin-right: 0.5em;
	color: #015DC7 !important;
	font-weight: 500;
}
.pdfLink:after {
	font-family: "Font Awesome 5 Free";
	content: "\f1c1";
	font-weight: 900;
	width: 1em;
	height: 1em;
	display: inline-block;
	margin-left: 6px;
	line-height: 1em;
	color: #D50700;
}


#UnderlayerMainTitleOuter{
	padding: 4em 0 2em;
	border-bottom: #C3C3C3 solid 1px;
}
#UnderlayerMainTitleOuter .mainTitleIn{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
#UnderlayerMainTitleOuter .mainTitleIn h2 span {
	font-size: 20px;
	bottom: -3.5em;
}

#breadcrumb ul{
	display: flex;
	font-size: 12px;
}
#breadcrumb ul li:nth-of-type(n+2):before{
	content: ">";
	margin: 0 1em;
}
#breadcrumb ul li a{
	color: #015DC7;
}


.SecondLayerBox{
	display: flex;
	flex-wrap: wrap;
	margin: 5em auto 7em;
}
.SecondLayerBox > div{
	width: 31%;
	margin-right: 3.5%;
	box-shadow: 0 0 5px #c2c2c2;
}
.SecondLayerBox > div:nth-of-type(3n){
	margin-right: 0;
}
.SecondLayerBox > div:nth-of-type(n+4){
	margin-top: 3em;
}
.SecondLayerBox > div a{
	text-decoration: none;
	height: 100%;
	display: block;
}
.SecondLayerBox > div .photo{
	overflow: hidden;
}
.SecondLayerBox > div .photo img{
	transition: 0.2s;
}
.SecondLayerBox > div:hover .photo img{
	transform: scale(1.1, 1.1);
}
.SecondLayerBox > div .SecondLayerIn{
	padding: 1.5em 1.5em 3em;
	position: relative;
}
.SecondLayerBox > div .SecondLayerIn .titleMain{
	font-size: 18px;
	font-weight: 500;
	color: #0E2884;
	margin-bottom: 0.5em;
}
.SecondLayerBox > div .SecondLayerIn .txt{
	font-size: 15px;
}

.SecondLayerBox > div .linkArrow:before{
	top: auto;
	bottom: 1em;
	right: 1em;
	width: 35px;
	height: 35px;
}

.ULContentStart{
	margin: 5em auto 7em;
}
.ULContentStart,
.ULContentStart .ULContentStartIn:nth-of-type(n+2){
	margin-top: 5em;
}
h3 + .ULContentStart{
	margin-top: 0;
}
.ULContentStartIn .ULContentStart3em{
	margin-top: 3em;
}


.tableOuter01 table{
	border-top: #CBCBCB solid 1px;
}
.tableOuter01 table tr th,
.tableOuter01 table tr td{
	padding: 1em;
	border-bottom: #CBCBCB solid 1px;
}
.tableOuter01 table tr th{
	background: #F2F7FC;
}

.tableOuter01.border01 table tr th,
.tableOuter01.border01 table tr td{
	border-right: #CBCBCB solid 1px;
}
.tableOuter01.border01 table tr th:last-child,
.tableOuter01.border01 table tr td:last-child{
	border-right: none;
}
.tableOuter01.border02 table tr th{
	text-align: center;
}
.tableOuter01.border02 table tr th,
.tableOuter01.border02 table tr td{
	border-right: #CBCBCB solid 1px;
}
.tableOuter01.border02 table tr th:first-child,
.tableOuter01.border02 table tr td:first-child{
	border-left: #CBCBCB solid 1px;
}

.tableOuter01 table tr .top{
	vertical-align: top
}


.kvLead{
	background: #015DC7;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	padding: 2em 0;
	line-height: 1.5em;
	overflow: hidden;
	position: relative;
}
.kvLead > div{
	position: relative;
	z-index: 10;
}
.kvLead:before{
	content: "";
	position: absolute;
	top: 0;
	right: -10%;
	background: url("../images/common/kvlead_bg.png") center top no-repeat;
	background-size: 100% auto;
	width: 70%;
	height: 100%;
	min-width: 42em;
}
.kvLead .min{
	font-size: 70%;
	line-height: 1.7em;
	margin-top: 0.5em;
}
.kvLead h3{
	margin-bottom: 0.5em;
}

.btnBlue a{
	background: #015DC7;
	display: block;
	color: #fff;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
	padding: 1.5em 0;
	position: relative;
	border: solid 1px #015DC7;
}
.btnBlue a span{
	position: relative;
	z-index: 2;
}
.btnBlue a:hover{
	color: #015DC7;
}
.btnBlue a:hover .pdf:before{
	content: "";
    background: url(../images/common/pdf_b.svg) center top no-repeat;
    background-size: 100% auto;
}
.btnBlue a::before{
	content: "";
    width: 0;
    height: 100%;
    background: #fff;
    transition: 0.2s;
    position: absolute;
    top: 0;
    left: 0;
	z-index: 1;
}
.btnBlue a:hover::before{
	width: 100%;
}
.w20em{
	margin: 3em auto 0;
	width: 20em;
}



/* header
------------------------------------------------*/
header{
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1000000;
	border-bottom: #C3C3C3 solid 1px;
}
#headerIn{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 20px;
	height: 120px;
}
#headerIn h1{
	transition: 0.2s;
	display: flex;
	align-items: center;
	font-size: 18px;
	text-align: center;
}
#headerIn h1 a{
	text-decoration: none;
	transition: 0.3s;
	display: flex;
	align-items: flex-end;
}
#headerIn h1 a:hover{
	opacity: 0.7;
}
#headerIn h1 img{
	max-width: 160px;
	display: block;
	margin-right: 0.5em;
}
#headerIn h1 img:nth-child(2){
	margin-right: 0;
}

#headerIn .hNav,
#headerIn .hNav .hNavSP,
#headerIn .hNav nav,
#headerIn .hNav .mainNav{
	height: 100%;
}
#headerIn .hNav .hNavSP{
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	justify-content: center;
}
#headerIn .hNav .hNavSP > nav{
	width: 100%;
}
#headerIn .hNav .lofoBox{
	display: none;
	justify-content: flex-end;
	align-items: center;
	margin-bottom: 0.7em;
	padding: 1.5em 0 0;
	transition: 0.2s;
}
#headerIn .hNav .lofoBox .nipponsteel{
	max-width: 220px;
	transition: 0.2s;
}
#headerIn .hNav .lofoBox .nipponsteel:hover{
	opacity: 0.7;
}
#headerIn .hNav .lofoBox .kohtetsu{
	font-size: 22px;
	font-weight: bold;
	margin-left: 1em;
}

#headerIn .hNav nav{
	display: flex;
	align-items: center;
}
#headerIn .hNav .mainNav{
	font-size: 17px;
	display: flex;
	font-weight: bold;
}
#headerIn .hNav .mainNav li{
	display: flex;
	align-items: center;
}
#headerIn .hNav .mainNav li:nth-of-type(n+2){
	margin-left: 2em;
}
#headerIn .hNav .mainNav li > a{
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	/*padding: 0.5em 0 1.2em;*/
	text-decoration: none;
	color: #000;
	font-weight: bold;
	height: 100%;
	position: relative;
	transition: 0.2s;
}
#headerIn .hNav .mainNav li a:hover{
	color:#0E2884;
}
/* #headerIn .hNav .mainNav li a:before{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 7px;
	background: #0E2884;
	transition: 0.4s;
	opacity: 0;
}
#headerIn .hNav .mainNav li a:hover:before{
	opacity: 1;
} */

header:not(.kv) #headerIn .hNav .subNav li:first-child{
	display: none;
}
header:not(.kv) #headerIn .hNav .subNav li a{
	display: block;
	background: #015DC7;
	color: #fff;
	font-weight: 500;
	padding: 0.8em 2em;
	text-decoration: none;
	text-align: center;
	position: relative;
	border: solid 1px #015DC7;
}
header:not(.kv) #headerIn .hNav .subNav li a span{
	position: relative;
	z-index: 2;
}
header:not(.kv) #headerIn .hNav .subNav li a::before{
	content: "";
    width: 0;
    height: 100%;
    background: #fff;
    transition: 0.2s;
    position: absolute;
    top: 0;
    left: 0;
	z-index: 1;
}
header:not(.kv) #headerIn .hNav .subNav li a:hover::before{
	width: 100%;
}
header:not(.kv) #headerIn .hNav .subNav li a:hover{
	transition: 0.2s;
	color: #015DC7;
}

#headerIn .hNav .mainNav .menuSub {
  background-color: rgba(14,40,132,0.9);
  width: 100%;
  position: absolute;
  top: 70px;
  left: 0;
  visibility: hidden;
  opacity: 0;
  transition: 0.2s;
  height: 0;
}
#headerIn .hNav .mainNav .menuSub:before{
	content: "";
	position: absolute;
	top: -1em;

	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 1em 1em 1em;
	border-color: transparent transparent #0e2884 transparent;
	opacity: 0.9;
}
#headerIn .hNav .mainNav .company .menuSub:before{
	right: 36.7em;
}
#headerIn .hNav .mainNav .business .menuSub:before{
	right: 30.7em;
}
#headerIn .hNav .mainNav .offer .menuSub:before{
	right: 24.3em;
}
#headerIn .hNav .mainNav .csr .menuSub:before{
	right: 18.7em;
}
#headerIn .hNav .mainNav .recruit .menuSub:before{
	right: 13.8em;
}

#headerIn .hNav .mainNav .menuSub .menuSubIn{
	max-width: 1200px;
	margin: 3em auto;
	color: #fff;
	padding: 0 40px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#headerIn .hNav .mainNav .menuSub .menuSubIn .title{
	font-weight: bold;
	font-size: 24px;
	width: 15%;
}
#headerIn .hNav .mainNav .menuSub .menuSubIn .title a{
	color: #fff;
}
#headerIn .hNav .mainNav .menuSub .menuSubIn ul{
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	width: 82%;
}
#headerIn .hNav .mainNav .menuSub .menuSubIn ul li{
	position: relative;
	width: 25%;
	margin-left: 0 !important;
}
#headerIn .hNav .mainNav .menuSub .menuSubIn ul li:nth-of-type(n+5){
	margin-top: 1.5em;
}

/* #headerIn .hNav .mainNav .menuSub .menuSubIn ul li:nth-of-type(n+3) {
	margin-top: 1em;
} */
#headerIn .hNav .mainNav .menuSub .menuSubIn ul li a{
	color: #fff;
	padding-left: 0.7em;
	font-size: 15px;
	line-height: 1.5em;
}
#headerIn .hNav .mainNav .menuSub .menuSubIn ul li a:before {
  content: "";
  position: absolute;
  top: 0.4em;
  left: -0.2em;
  margin: auto;
  width: 7px;
  height: 7px;
  border-top: #fff solid 2px;
  border-right: #fff solid 2px;
  transform: rotate(45deg);
}
#headerIn .hNav .mainNav .menuSub .menuSubIn ul li a:hover{
	text-decoration: underline;
}

#headerIn .hNav .mainNav .business .menuSub .menuSubIn ul li,
#headerIn .hNav .mainNav .csr .menuSub .menuSubIn ul li{
	width: auto;
	margin-right: 5em;
}
#headerIn .hNav .mainNav .recruit .menuSub .menuSubIn ul li:nth-of-type(4n+1){
	width: 30%;
}
#headerIn .hNav .mainNav .recruit .menuSub .menuSubIn ul li:nth-of-type(4n+2){
	width: 28%;
}
#headerIn .hNav .mainNav .recruit .menuSub .menuSubIn ul li:nth-of-type(4n+3),
#headerIn .hNav .mainNav .recruit .menuSub .menuSubIn ul li:nth-of-type(4n){
	width: 21%;
}






@media screen and (min-width:999.5px){
	
	header:not(.kv) #headerIn .hNav .subNav{
		margin-left: 2em;
	}

	#headerIn .hNav .mainNav .menuHover:hover{
		color: #0E2884;
	}
	#headerIn .hNav .mainNav .menuHover:hover .menuSub{
		visibility: visible;
		opacity: 1;
		height: 11em;
	}
	#headerIn .hNav .mainNav .business.menuHover:hover .menuSub,
	#headerIn .hNav .mainNav .offer.menuHover:hover .menuSub,
	#headerIn .hNav .mainNav .csr.menuHover:hover .menuSub{
		height: 7em;
	}

	.kv #headerIn .hNav nav{
		margin-top: -0.8em;
	}
	.kv #headerIn .hNav .lofoBox{
		display: flex;
	}
	.kv #headerIn .hNav .subNav{
		font-size: 13px;
		display: flex;
		background: #EDF3FB;
		margin-left: 3em;
		padding: 0.2em 0.5em;
	}
	.kv #headerIn .hNav .subNav li{
		display: block;
	}
	.kv #headerIn .hNav .subNav li:nth-of-type(n+2):before{
		content: "|";
		margin: 0 0.5em;
	}

}




.spHMenu{
	display: none;
}



/* footer
------------------------------------------------*/


#pageTop {
    position: fixed;
	bottom: 50px;
	right: 50px;
	z-index: 1000;
	display: none;
}
#pageTop span{
	background-color:#015DC7;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 30px;
	cursor: pointer;
	transition: 0.2s;
	width: 70px;
	height: 70px;
	color: #fff;
	border-radius: 50%;
}
#pageTop span:hover{
	opacity: 0.7;
}
#pageTop span img{
	display: block;
	transform:rotate(-90deg);
	width: 25px;
}



#footerRecruitMenu{
	background: #e7f4f6;
	padding: 5em 0;
	display: none;
}
#footerRecruitMenu .mainTitle{
	font-size: 24px;
	font-weight: 500;
	color: #fff;
	background: #61B7C1;
	text-align: center;
	padding: 0.7em;
	margin-bottom: 1.5em;
}
#footerRecruitMenu .btnBox{
	display: flex;
	justify-content: space-between;
}
#footerRecruitMenu .btnBox .btn{
	width: 48%;
}
#footerRecruitMenu .btnBox .btn a{
	display: block;
	text-align: center;
	border: #61B7C1 solid 1px;
	padding: 1em;
	text-decoration: none;
	position: relative;
	transition: 0.2s;
}
#footerRecruitMenu .btnBox .btn a:before {
	content: "";
	width: 0;
	height: 100%;
	background: #61B7C1;
	transition: 0.2s;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

#footerRecruitMenu .btnBox .btn a span{
	position: relative;
	z-index: 10;
}
#footerRecruitMenu .btnBox .btn a span:before {
	font-family: "Font Awesome 5 Free";
	content: "\f054";
	font-weight: 900;
	width: 11px;
	height: 12px;
	display: inline-block;
	margin-right: 8px;
	color: #61B7C1;
	transition: 0.2s;
}
#footerRecruitMenu .btnBox .btn a:hover:before{
	width: 100%;
}
#footerRecruitMenu .btnBox .btn a:hover,
#footerRecruitMenu .btnBox .btn a:hover span:before{
	color: #fff;
}
.RecruitMenuContent{
	margin-top: 2em;
}
.RecruitMenuContent .RMBox{
	display: flex;
	border-bottom: #C3C3C3 solid 1px;
	padding-bottom: 1.3em;
}
.RecruitMenuContent .RMBox:nth-of-type(n+2){
	margin-top: 1.3em;
}
.RecruitMenuContent .RMBox .name{
	font-size: 18px;
	font-weight: 500;
	color: #0E2884;
	min-width: 13em;
}
.RecruitMenuContent .RMBox ul{
	display: flex;
	flex-wrap: wrap;
}
.RecruitMenuContent .RMBox ul li:nth-of-type(n+2):before{
	content: "/";
	margin-right: 1em;
	margin-left: 1em;
}



#footerRecruit{
	background: url("../images/recruit/top/entry_bg.png") center top no-repeat;
	background-size: cover;
	text-align: center;
	color: #fff;
	padding: 5em 0;
	display: none;
}
#footerRecruit h2{
	color: #fff;
}
#footerRecruit h2:before{
	display: none;
}
#footerRecruit h2 span{
	text-align: center;
	color: #fff;
	bottom: -3em;
}
#footerRecruit .telephoneNo{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 40px;
	font-family: 'Roboto', sans-serif;
	margin-top: 2.3em;
	line-height: 1em;
	font-weight: 700;
}
#footerRecruit .telephoneNo p:nth-of-type(n+2){
	margin-left: 1em;
}
#footerRecruit .telephoneNo a{
	color: #fff;
}
#footerRecruit .btnBlue{
	margin: 2em auto 0;
	max-width: 20em;
	font-size: 18px;
}
#footerRecruit .btnBlue a{
	background: #fff;
	color: #0E2884;
}



#footerContact{
	background: url("../images/common/footercontact_bg.png") center top no-repeat;
	background-size: cover;
	color: #fff;
	padding: 4em 0 5em;
}
.contact #footerContact{
	display: none;
}
.footerContactIn{
	background-color: rgba(1,93,199,0.9);
	padding: 3em 2em;
}
#footerContact h2{
	text-align: center;
	color: #fff;
	margin-bottom: 0.3em;
}
#footerContact h2:before{
	display: none;
}
.footerContactFlex{
	display: flex;
	align-items: center;
}
.footerContactFlex > div{
	width: 50%;
	text-align: center;
}
.footerContactFlex > div:nth-of-type(n+2){
	border-left: #fff solid 1px;
}
.footerContactFlex .titleSub{
	font-weight: bold;
	color: #fff;
	font-size: 22px;
	margin-bottom: 1em;
}
.footerContactFlex .telContact .telNo{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
}
.footerContactFlex .telContact .telNo .toCall{
	font-size: 50px;
	line-height: 1em;
	font-weight: bold;
}
.footerContactFlex .telContact .telNo .toCall a{
	color: #fff;
	text-decoration: none;
}
.footerContactFlex .webContact a{
	font-weight: bold;
	border: #fff solid 2px;
	font-size: 18px;
	display: block;
	color: #fff;
	text-decoration: none;
	position: relative;
	width: 75%;
	max-width: 18em;
	padding: 1em;
	margin: 0 auto;
	transition: 0.2s;
}
.footerContactFlex .webContact a:hover{
	color: #015DC7;
}
.footerContactFlex .webContact a:before{
	content: "";
	width: 0;
	height: 100%;
	background: #fff;
	transition: 0.2s;
	position: absolute;
	top: 0;
	left: 0;
}
.footerContactFlex .webContact a:hover:before{
	width: 100%;
}
.footerContactFlex .webContact a span{
	position: relative;
	z-index: 10;
}




#footerMenu{
	background: #0E2884;
	color: #fff;
	padding: 3em 0;
}
#footerMenu .footerMenuIn ul{
	display: flex;
	justify-content: space-between;
}
#footerMenu .footerMenuIn ul li a{
	color: #fff;
}
#footerMenu .footerMenuIn ul > li > a{
	font-weight: bold;
}
#footerMenu .footerMenuIn > ul > li:first-child{
	width: 6%;
}
#footerMenu .footerMenuIn > ul > li:nth-of-type(2){
	width: 25%;
}
#footerMenu .footerMenuIn > ul > li:nth-of-type(n+3){
	width: 14%;
}
#footerMenu .footerMenuIn ul ul{
	flex-direction: column;
	font-size: 12px;
	border-top: #6d7db5 solid 1px;
	margin-top: 0.8em;
	padding-top: 1.2em;
}
#footerMenu .footerMenuIn ul ul li a{
	color: #cfd4e7;
	line-height: 1.3em;
	display: block;
	font-weight: normal;
}
#footerMenu .footerMenuIn ul ul li:nth-of-type(n+2){
	margin-top: 1em;
}
#footerMenu .footerMenuIn > ul > li:nth-of-type(2) ul{
	flex-wrap: wrap;
	max-height: 10em;
}
#footerMenu .footerMenuIn > ul > li:nth-of-type(2) ul li:nth-of-type(5){
	margin-top: 0;
}


#footerEnd{
	padding: 4em 0 3em;
}
#footerEnd .companyBox{
	display: flex;
	align-items: flex-end;
	justify-content: center;
}
#footerEnd .companyBox .logo{
	transition: 0.2s;
	font-size: 25px;
	font-weight: bold;
	margin-right: 1.5em;
}
#footerEnd .companyBox .logo img{
	width: 180px;
	margin-right: 0.5em;
}
#footerEnd .companyBox .logo:hover{
	opacity: 0.7;
}
#footerEnd .companyBox .logo a{
	text-decoration: none;
	display: flex;
	align-items: flex-end;
}
#footerEnd .companyBox .address{
	font-size: 14px;
	position: relative;
	top: 6px;
} 

#footerEnd ul{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 3em;
	font-size: 14px;
}
#footerEnd ul li:nth-of-type(n+2):before{
	content: "|";
	margin-left: 1em;
	margin-right: 1em;
}

#footerEnd .copy{
	margin-top: 1.5em;
	font-size: 12px;
	text-align: center;
}




@media screen and (max-width:1199.5px){
	#headerIn h1{
		width: 21%;
	}
	#headerIn h1 img{
		margin-right: 0;
		width: 45%;
	}
	#headerIn h1 img:nth-child(2){
		margin-top: 0.5em;
	}
	h2 {
		font-size: 55px;
	}
	#footerEnd .companyBox .logo {
		font-size: 20px;
	}
}



@media screen and (max-width:999.5px){
	
	.spHMenu{
		display: block;
	}
	
	
	.w100p,
	.w90p,
	.w80p{
		width: 100%;
	}

	.w70p,
	.w60p,
	.w50p{
		width: 70%;
	}
	.w40p {
		width: 60%;
	}
	
	.btnBlue a{
		padding: 1.2em 0;
	}


	header,
	#headerIn{
		height: 70px;
	}
	
	header a.spHMenu{
		float: right;
		width: 70px;
		height: 70px;
		position: absolute;
		top:0;
		right: 0;
		display: block;
		background: #015DC7;
	}

	header a.spHMenu:before,
	header a.spHMenu span,
	header a.spHMenu:after{
		background-color: #fff;
		content: " ";
		height: 2px;
		
		position: absolute;
		transition: all 0.4s ease-out 0s;
		width: 27px;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		margin: auto;
	}

	header a.spHMenu:before{
		top: -20px;
	}
	header a.spHMenu:after{
		top: 20px;
	}
	header a.spHMenu.MenuOpen:before{
		top: 0;
		transform: rotate(225deg);
	}
	header a.spHMenu.MenuOpen:after{
		top: 0;
		transform: rotate(-225deg);
	}
	header a.spHMenu.MenuOpen span{
		background-color: #3D436A;
		opacity:0;
	}
	
	
	#headerIn .hNav,
	#headerIn .hNav .hNavSP,
	#headerIn .hNav nav,
	#headerIn .hNav .mainNav{
		height: auto;
	}
	#headerIn h1{
		display: flex;
		align-items: center;
		height: 80px;
	}
	#headerIn h1 img {
		max-width: 100px;
		display: inline;
		width: auto;
	}
	
	#headerIn h1 img:nth-child(2){
		margin-top: 0.2em;
	}
	#headerIn .hNav{
		display: none;
		position: fixed;
		top: 70px;
		left: 0;
		width: 100%;
		background: #fff;
		padding: 0 0 3em;
	}
	#headerIn .hNav .hNavSP{
		display: flex;
		flex-direction: column-reverse;
	}
	#headerIn .hNav nav{
		display: block;
		margin-top: 0;
	}
	#headerIn .hNav .mainNav{
		flex-wrap: wrap;
		border-top: #6d7db5 solid 1px;
	}
	#headerIn .hNav .mainNav li{
		width: 100%;
		margin: 0 !important;
		border-bottom: #6d7db5 solid 1px;
		display: block;
	}
	/*#headerIn .hNav .mainNav li:nth-of-type(2n){
		border-left: #6d7db5 solid 1px;
	} */
	#headerIn .hNav .mainNav li > a,
	#headerIn .hNav .mainNav li > p{
		padding: 1em;
		height: auto;
		width: 100%;
		text-align: left;
		justify-content: flex-start;
		position: relative;
	}
	#headerIn .hNav .mainNav li > a:before {
		content: "";
		position: absolute;
		top: 0;
		right: 1.2em;
		bottom: 0;
		margin: auto;
		width: 7px;
		height: 7px;
		border-top: #0E2884 solid 2px;
		border-right: #0E2884 solid 2px;
		transform: rotate(45deg);
	}
	#headerIn .hNav .mainNav li > p:before,
	#headerIn .hNav .mainNav li > p:after {
		content: "";
		position: absolute;
		top: 0;
		right: 1em;
		bottom: 0;
		margin: auto;
		width: 1em;
		height: 2px;
		background: #0E2884;
		transition: 0.2s;
	}
	#headerIn .hNav .mainNav li > p:after {
		transform: rotate(90deg);
	}
	#headerIn .hNav .mainNav li > p.open:after {
		transform: rotate(0deg);
	}
	
	#headerIn .hNav .subNav{
		margin: 2em auto 0;
		justify-content: center;
		width: 50%;
	}
	
	#headerIn .hNav .mainNav .menuSub{
		display: none;
		opacity: 1;
		visibility: visible;
		position: relative;
		transition: none;
		height: auto;
		margin: 0;
		padding: 0;
		top: 0;
		background: none;
	}
	#headerIn .hNav .mainNav .menuSub .menuSubIn .title{
		display: none;
	}
	#headerIn .hNav .mainNav .menuSub:before{
		display: none;
	}
	#headerIn .hNav .mainNav .menuSub .menuSubIn{
		margin: 0;
		padding: 0;
	}
	#headerIn .hNav .mainNav .menuSub .menuSubIn ul{
		display: block;
		max-width: none;
		margin: -0.7em auto 1em;
		width: 90%;
	}
	#headerIn .hNav .mainNav .menuSub .menuSubIn ul li{
		padding: 0;
		margin: 0 !important;
		border-top: none;
		width: auto !important;
		border-bottom: none;
	}
	#headerIn .hNav .mainNav .menuSub .menuSubIn ul li:nth-of-type(2n){
		margin: 0 !important;
	}
	#headerIn .hNav .mainNav .menuSub .menuSubIn ul li a{
		padding: 0.5em 0;
		color: #231F20;
		font-size: 90%;
	}
	#headerIn .hNav .mainNav .menuSub .menuSubIn ul li a:before{
		border-top: #0E2884 solid 2px;
		border-right: #0E2884 solid 2px;
		left: auto;
		right: 3px;
		top: 0;
	}
	#headerIn .hNav .mainNav .menuSub .menuSubIn ul li a:after{
		content: "";
		position: absolute;
		top: 0;
		right: 3px;
		bottom: 0;
		margin: auto;
		width: 1em;
		height: 2px;
		background: #0E2884;
		transition: 0.2s;
	}
	
	
	#headerIn .hNav .lofoBox{
		justify-content: center;
		margin-top: 2em;
		padding: 0;
		font-size: 18px;
		width: 100%;
	}

	#headerIn .hNav .subNav li:first-child{
		display: none !important;
	}
	#headerIn .hNav .subNav li a{
		display: block;
		background: #015DC7;
		color: #fff;
		font-weight: 500;
		padding: 0.8em 2em;
		text-decoration: none;
		text-align: center;
	}

	
	.linkArrow:before{
		width: 40px;
		height: 40px;
	}
	
	#footerRecruit .telephoneNo{
		display: block;
	}
	#footerRecruit .telephoneNo p:nth-of-type(n+2) {
		margin-top: 0.5em;
		margin-left: 0;
	}
	
	#footerMenu .footerMenuIn > ul > li:first-child {
		width: 10%;
	}
	#footerMenu .footerMenuIn > ul > li:nth-of-type(2) {
		width: 22%;
	}
	.footerContactFlex .telContact .telNo .toCall {
		font-size: 33px;
	}
	#footerMenu .footerMenuIn > ul > li:nth-of-type(2) ul{
		max-height: none;
	}
	#footerMenu .footerMenuIn ul ul li:nth-of-type(n+2) {
		margin-top: 0.8em !important;
	}
	
	#footerEnd .companyBox .logo img{
		display: block;
		margin-bottom: 0.5em;
	}
	
	
	.SecondLayerBox {
		justify-content: space-between;
	}
	.SecondLayerBox > div{
		width: 48%;
		margin-right: 0 !important;
	}
	.SecondLayerBox > div:nth-of-type(n+3) {
		margin-top: 3em;
	}


}


/* スマホ
------------------------------------------------*/
@media screen and (max-width:767.5px){
	
	body {
		font-size: 14px;
	}
	
	#wrap{
		position: relative;
	}
	.sPC{
		display: none;
	}
	.sSP{
		display: block;
	}
	
	.subMenu li a{
		padding: 0.8em;
	}
	

	.spmT10{
		margin-top: 1em;
	}
	
	
	.flexBox.spBlock{
		display: block;
	}
	
	.flexBox.half.spBlock > div,
	.flexBox.spBlock.ratio64 > .ratio60,
	.flexBox.spBlock.ratio64 > .ratio40,
	.flexBox.spBlock.ratio73 > .ratio70,
	.flexBox.spBlock.ratio73 > .ratio30,
	.flexBox.spBlock.ratio82 > .ratio80,
	.flexBox.spBlock.ratio82 > .ratio20,
	.flexBox.spBlock.ratio91 > .ratio90,
	.flexBox.spBlock.ratio91 > .ratio10{
		width: auto;
	}
	.flexBox.spBlock.ratio64 > div:nth-of-type(n+2),
	.flexBox.spBlock.ratio73 > div:nth-of-type(n+2),
	.flexBox.spBlock.ratio82 > div:nth-of-type(n+2),
	.flexBox.spBlock.ratio91 > div:nth-of-type(n+2){
		margin-top: 1em;
	}
	
	.flexBox.half.spBlock > div:nth-of-type(n+2){
		margin-top: 2em;
}
	.MW1200,
	.MW1500{
		padding: 0 20px;
	}
	
	h2 {
		font-size: 40px;
	}
	h2 span{
		bottom: -3em;
	}
	h3 {
		font-size: 22px;
		line-height: 1.3em;
	}
	h3 span{
		font-size: 14px;
	}
	h4 {
		font-size: 20px;
		border-bottom: #C3C3C3 solid 3px;
	}
	h5 {
		font-size: 17px;
		margin-bottom: 0.7em;
	}
	
	
	.w100p,
	.w90p,
	.w80p,
	.w70p,
	.w60p,
	.w50p,
	.w40p{
		width: 100%;
	}
	
	input[type="text"],
	input[type="email"],
	textarea{
		width: 110%;
		margin-left: -5%;
	}
	
	.spmb1{
		margin-bottom: 1em;
	}
	
	.linkArrow::before {
		width: 35px;
		height: 35px;
	}
	
	#pageTop{
		bottom: 10px;
		right: 10px;
	}
	#pageTop span{
		font-size: 25px;
		width: 50px;
		height: 50px;
	}
	
		
	.kvLead {
	  font-size: 16px;
	}
	.kvLead::before{
		width: 170%;
		min-width: auto;
	}

	header,
	#headerIn h1,
	#headerIn{
		height: 60px;
	}
	#headerIn h1{
		font-size: 14px;
	}
	
	header a.spHMenu{
		width: 60px;
		height: 60px;
	}
	#headerIn .hNav{
		top: 60px;
		padding-bottom: 30px;
		height: calc(100% - 60px);
		overflow-y: scroll;
	}
	
	#headerIn .hNav .subNav{
		width: 60%;
	}
	
	#headerIn .hNav .lofoBox{
		display: block;
		text-align: center;
	}
	#headerIn .hNav .lofoBox .nipponsteel{
		margin: 0 auto;
	}
	#headerIn .hNav .lofoBox .kohtetsu{
		margin: 0.8em 0 0;
	}
	
	#headerIn .hNav .mainNav li > a,
	#headerIn .hNav .mainNav li > p{
		font-size: 15px;
	}
	
	
	#footerRecruit{
		padding: 2.5em 0;
	}
	#footerRecruit h2 span {
		bottom: -2em;
	}
	#footerRecruit .telephoneNo{
		font-size: 28px;
		margin-top: 1.8em;
	}
	#footerRecruit .btnBlue {
		margin: 1.5em auto 0;
		max-width: 17em;
		font-size: 16px;
	}
	#footerRecruit .btnBlue a {
		padding: 1em 0;
	}
	
	
	
	
	#footerRecruitMenu{
		padding: 2em 0;
	}
	#footerRecruitMenu .mainTitle {
		font-size: 18px;
		margin-bottom: 1em;
	}
	#footerRecruitMenu .btnBox{
		display: block;
	}
	#footerRecruitMenu .btnBox .btn{
		width: auto;
	}
	#footerRecruitMenu .btnBox .btn:nth-of-type(n+2){
		margin-top: 0.4em;
	}
	.RecruitMenuContent .RMBox{
		display: block;
		padding-bottom: 1em;
	}
	.RecruitMenuContent .RMBox:nth-of-type(n+2) {
		margin-top: 1em;
	}
	.RecruitMenuContent .RMBox .name {
		font-size: 16px;
		margin-bottom: 0.5em;
	}
	.RecruitMenuContent .RMBox ul {
		font-size: 13px;
	}
	.RecruitMenuContent .RMBox ul li:nth-of-type(n+2)::before {
		margin-right: 0.7em;
		margin-left: 0.7em;
	}
	
	
	
	#footerContact{
		padding: 2.5em 0;
	}
	.footerContactIn{
		padding: 2em 1.5em;
	}
	.footerContactFlex{
		display: block;
	}
	.footerContactFlex > div{
		width: auto;
		position: relative;
	}
	.footerContactFlex > div:nth-of-type(n+2){
		border: none;
		margin-top: 1.2em;
		padding-top: 1.4em;
	}
	.footerContactFlex > div:nth-of-type(n+2):before{
		content: "";
		position: absolute;
		right: 0;
		left: 0;
		top: 0;
		margin: auto;
		width: 70%;
		height: 1px;
		background: #fff;
	}
	.footerContactFlex .telContact .telNo .toCall {
		font-size: 28px;
	}
	.footerContactFlex .telContact .telNo .toCall a{
		color: #fff;
	}
	.footerContactFlex .titleSub{
		margin-bottom: 0.7em;
		font-size: 18px;
	}
	.footerContactFlex .webContact a{
		padding: 0.7em 1em;
		font-size: 16px;
	}

	
	#footerMenu{
		padding: 0;
	}
	#footerMenu > div{
		padding: 0;
	}
	#footerMenu .footerMenuIn ul{
		flex-wrap: wrap;
	}
	#footerMenu .footerMenuIn ul li{
		width: 50% !important;
		text-align: center;
		border-bottom: #6d7db5 solid 1px;
	}
	#footerMenu .footerMenuIn ul li:nth-of-type(2n){
		border-left: #6d7db5 solid 1px;
	}
	#footerMenu .footerMenuIn ul li a{
		padding: 1em;
		display: block;
	}
	#footerMenu .footerMenuIn ul ul{
		display: none;
	}
	
	#footerEnd {
		padding: 2em 0 1em;
	}
	#footerEnd .companyBox{
		display: block;
	}
	#footerEnd .companyBox .logo{
		margin: 0;
		text-align: center;
	}
	#footerEnd .companyBox .logo a{
		justify-content: center;
	}
	#footerEnd .companyBox .logo img{
		margin: 0 0 0.7em;
		width: 40%;
	}
	#footerEnd .companyBox .logo img:nth-child(2n){
		margin-left: 0.5em;
	}
	#footerEnd .companyBox .address{
		margin-top: 1em;
		position: static;
	}
	#footerEnd ul{
		flex-wrap: wrap;
		margin: 1.5em auto 0;
		max-width: 23em;
	}
	#footerEnd ul li:nth-of-type(n+2):before {
		margin-left: 0.5em;
		margin-right: 0.5em;
	}
	#footerEnd ul li:nth-of-type(4){
		margin-top: 0.5em;
	}
	#footerEnd ul li:nth-of-type(4):before {
		display: none;
	}
	#footerEnd .copy {
		margin-top: 1em;
	}
	
	
	#UnderlayerMainTitleOuter {
		padding: 2em 0 0.5em;
	}
	#UnderlayerMainTitleOuter .mainTitleIn{
		align-items: flex-start;
		flex-direction: column;
	}
	#UnderlayerMainTitleOuter .mainTitleIn h2 {
		font-size: 36px;
		margin-bottom: 1.3em;
	}
	#UnderlayerMainTitleOuter .mainTitleIn h2 span {
		font-size: 16px;
		bottom: -3em;
	}
	
	#breadcrumb{
		margin-top: 0.5em;
		padding-top: 0.5em;
		border-top: #C3C3C3 solid 1px;
		width: 100%;
		overflow-x: scroll;
	}
	#breadcrumb ul{
		white-space: nowrap;
	}
	
	
	.SecondLayerBox{
		margin: 2.5em auto 4em;
	}
	.SecondLayerBox > div {
		width: auto;
	}
	.SecondLayerBox > div:nth-of-type(n+2) {
		margin-top: 2em;
	}
	
	
	.ULContentStart{
		margin: 2.5em auto 4em;
	}
	.ULContentStart .ULContentStartIn:nth-of-type(n+2) {
		margin-top: 3.5em;
	}
	
	.spBlock table tr th,
	.spBlock table tr td {
		display: block;
		padding: 0.7em;
	}
	.spBlock table tr th{
		width: auto !important;
		border-bottom:  none;
	}
	
	.tableOuter01.spScroll{
		overflow-x: scroll;
	}
	.tableOuter01.spScroll table{
		width: 1000px;
	}
	
	

	
}







