@charset "utf-8";
.sp {
display: none!important;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
html {
}
body {
font-size: 18px;
font-family: 'Noto Serif JP', serif;
text-align: left;
color: #333;
width: 100%;
min-width: 1200px;
word-break: normal;
word-wrap: break-word;
position: relative;
overflow-x: hidden;
padding-top: 0;
letter-spacing: 0.12em;
}
p, dt, dd, li, th, td {
line-height: 1.66;
letter-spacing: 0.12em;
}
ul {
letter-spacing: normal;
}
ul li {
letter-spacing: 0.12em;
}
/*clearfix */
.clearfix:after {
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
min-height: 0px;
}
h1 {
margin-bottom: inherit;
background: inherit;
padding: inherit;
border-radius: inherit;
font-size: 0;
-webkit-margin-before: 0em;
-webkit-margin-after: 0em;
-webkit-margin-start: 0px;
-webkit-margin-end: 0px;
display: inherit;
}
h1, h2, h3, h4, h5, h6 {
margin: 0;
line-height: inherit;
text-rendering: inherit;
font-size:inherit;
font-weight:normal;
}
input[type="submit"], input[type="checkbox"], label, button,select {
cursor: pointer;
}
input[type="submit"] {
border: none;
}
input ,button, select {
background-color: #fff;
border-radius: 0;
}
button {
border: none;
}
input {
font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
letter-spacing:normal;
}
select {
font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
letter-spacing:normal;
}
textarea {
font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
letter-spacing:normal;
}
.gothic {
font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
letter-spacing: 0.085em;
line-height: 1.78;
}
.gothic ul li {
letter-spacing: 0.085em;
}
.gothic li {
letter-spacing: 0.085em;
}
.slick-slider {
    overflow: hidden;
}
img {
border: none;
vertical-align: top;
max-width: 100%;
height: auto;
}
ul, ol {
margin: 0;
padding: 0;
list-style: none;
}
li {
margin: 0px;
padding: 0px;
}
a {
color: #333;
text-decoration: none;
-webkit-transition: all 0.2s;
-ms-transition: all 0.2s;
-o-transition: all 0.2s;
-ms-transition: all 0.2s;
transition: all 0.2s;
}
a:hover {
text-decoration: none;
opacity: 0.8;
}
.hover:hover {
transition: 0.2s;
opacity: 0.8;
cursor: pointer;
}
.link01 {
text-decoration: underline;
}
.link01:hover {
text-decoration: none;
}
.linkn {
cursor: default;
}


.tar {
text-align: right;
}
.tal {
text-align: left;
}
.fl {
float: left;
}
.fr {
float: right;
}
.bold {
font-weight: bold;
}
.center {
text-align: center!important;
}
table {
border-collapse: collapse;
}
iframe {
border-top-style: none;
border-right-style: none;
border-bottom-style: none;
border-left-style: none;
}
.acccont {
display: none;
-webkit-transition: none;
-ms-transition: none;
-o-transition: none;
-ms-transition: none;
transition: none;
}
.pn {
margin-top:-109px;
padding-top:109px;
}
.top .headerwrap {
background-color: transparent;
border-bottom: 1px none #838C8F;
box-shadow: none;
}
.top .logo a {
background-image: url(../img/common/logo_02.svg);
}
.top .gnav > li > a {
color:#fff;
}
.top .gnav > li > a:hover {
color:#fff;
opacity:0.7;
}
.top .gnav > li.typecontact > a {
    background: transparent;
color:#fff;
border:solid 2px #fff;
}

.headerwrap {
width: 100%;
z-index: 9000;
min-width: 1200px;
background-color: #FFF;
height: 109px;
position: fixed;
top: 0px;
box-shadow: 0px 0px 3px 1px #999;
-webkit-transition: all 0.4s;
-ms-transition: all 0.4s;
-o-transition: all 0.4s;
-ms-transition: all 0.4s;
transition: all 0.4s;
}
.headerleft {
float:left;
}
.headerright {
float:right;
width: calc(100% - 215px);
padding-top: 8px;
}
.logo {
padding-top: 33px;
font-size: 0px;
text-indent: -9999;
}
.logo a {
background-image: url(../img/common/logo.svg);
background-repeat: no-repeat;
display: block;
height: 50px;
width: 212px;
background-size: 212px;
}

.gnavwrap {
}
.gnav {
text-align: right;
letter-spacing:normal;
letter-spacing:0.15em;
}
.gnav > li {
vertical-align: bottom;
display: inline-block;
position: relative;
}
.gnav > li > a {
font-size: 17px;
font-weight: bold;
text-align: center;
display: block;
position: relative;
padding-top: 33px;
padding-bottom: 39px;
color:#898888;
letter-spacing: 0.12em;
padding-left:10px;
padding-right:10px;
}
.gnav > li > a:hover {
color:#000;
opacity:1;
}
.gnav > li.typecontact {
    width: 180px;
    margin-left:1%;
    /* margin-top: -6px; */
}
.gnav > li.typecontact > a {
font-size: 17px;
font-weight: bold;
text-align: center;
display: block;
position: relative;
padding-top: 8px;
padding-bottom: 9px;
margin-bottom: 27px;
padding-left: 2px;
color:#fff;
background: #0339cc; /* Old browsers */
background: -moz-linear-gradient(-45deg, #0339cc 0%, #0045ff 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg, #0339cc 0%,#0045ff 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg, #0339cc 0%,#0045ff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0339cc', endColorstr='#0045ff',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
border-top:solid 2px transparent;
border-bottom:solid 2px transparent;
}
.gnav > li.typecontact > a:hover {
color:#fff;
opacity:0.6;
}
.gnav > li.typecontact > a span {
background-image: url(../img/common/btn_mail.svg);
background-repeat: no-repeat;
background-position: left center;
display:inline-block;
padding-left: 29px;
}
.subnav {
position: absolute;
top: 100px;
left: -30%;
margin: 0;
padding: 0;
background-color: #fff;
width: 160%;
display:none;
padding-top: 0;
}
.subnav li {
padding-right: 7px;
padding-left: 7px;
}
.subnav li a {
color:#898888;
vertical-align:middle;
text-align: center;
font-size: 14px;
font-weight: normal;
border-bottom: 1px solid #F1F1F1;
padding-bottom:10px;
padding-top:10px;
display:block;
}
.subnav li a:hover {
color:#000;
opacity:1;
}

.footerblock01 {
padding-top: 201px;
padding-bottom: 200px;
background-color: #fff;
}
.footerbnr01 {
}
.footerbnr02 {
background-repeat: no-repeat;
background-position: center center;
background-size:cover;
width:48.215%;
}
.footerbnr02.type01 {
float: left;
}
.footerbnr02.type02 {
float: right;
}
.footerbnr02 a {
display:block;
text-align:center;
color:#fff;
    position: relative;
    overflow: hidden;
}
.footerbnr02 a:after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -ms-background-size: cover;
    background-size: cover;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
.footerbnr02.type01 a:after {
background-image: url(../img/common/bg_footer_01.png);
}
.footerbnr02.type02 a:after {
background-image: url(../img/common/bg_footer_02.png);
}
.footerbnr02 a:hover:after {
    -moz-transform: scale(1.2);
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}
.footerbnr02 a:hover {
opacity:1;
}
.footerbnr02 a dl {
    z-index: 1;
    position: relative;
    padding-top: 79.1px;
    padding-bottom: 70.1px;
    background-color: rgba(33,52,87,0.6);
}
.footerbnr02 a dl:hover {
background-color: rgba(33,52,87,0.3);
opacity:1;
}
.footerbnr02 a dl dt {
font-size:32px;
letter-spacing:0.15em;
margin-bottom: 9px;
}
.footerbnr02 a dl dd {
font-size:18px;
letter-spacing:0.15em;
}
.footerblock02 {
padding-top: 100px;
padding-bottom: 96px;
position: relative;
z-index:100;
background-image: url(../img/common/bg_footer_03.png);
background-repeat: no-repeat;
background-position: center center;
background-size: cover;
}
#topbg .footerblock02 {
background-image: none;
}
.footerlist01 {
position:relative;
}
.footerlist02 {
text-align:center;
}
.footerlist02:nth-child(2) {
padding-top:35px;
padding-bottom:35px;
}
.footerlist02 li {
display:inline-block;
width: 20.5%;
}
.footerlist02 li a {
color:#fff;
font-size:20px;
letter-spacing:0.1em;
}
.footerlist02 li a:hover {
font-weight:bold;
opacity:1;
}
.pagetop {
position:fixed;
bottom:0;
right:3%;
z-index:3000;
display:none;
}
.footerblock03 {
padding-top: 157px;
padding-bottom: 70px;
background-color:#fff;
border-top: solid 1px #707070;
position: relative;
}
.footerbtm01 {
margin-bottom: 110px;
}
.footerbtm02 {
float:left;
width: 350px;
padding-top: 1px;
}
.footerbtm03 {
float:right;
width: 665px;
}
.footerbtm04 {
margin-bottom: 42px;
}
.footerbtm05 {
}
.footerbtm06 {
font-size:20px;
font-weight:bold;
letter-spacing: 0.03em;
margin-bottom: 4px;
}
.footerbtm07 {
font-size:32px;
letter-spacing: 0.15em;
margin-bottom: 4px;
}
.footerbtm08 {
font-size:18px;
letter-spacing: 0.15em;
}
.footerbtm09 {
font-size: 18px;
line-height: 1.77;
margin-top: -4px;
letter-spacing: 0;
}
.footerbtm10 {
float:left;
width: 74px;
}
.footernav01 {
float:left;
}
.footernav01:nth-child(2) {
margin-left: 75px;
margin-right: 75px;
}
.footernav01 li {
font-size:18px;
margin-bottom: 25px;
}
.copy {
text-align:right;
font-size:12px;
letter-spacing: 0;
}

.cmnbox01 {
max-width:1440px;
padding-left:20px;
padding-right:20px;
margin:0 auto;
}
.cmnbox02 {
max-width:1140px;
padding-left: 20px;
padding-right:20px;
margin:0 auto;
}
.typebtnblue {
background: #0339cc; /* Old browsers */
background: -moz-linear-gradient(-45deg, #0339cc 0%, #0045ff 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg, #0339cc 0%,#0045ff 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg, #0339cc 0%,#0045ff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0339cc', endColorstr='#0045ff',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.typebtnblue::before {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: -1;
content: '';
background: #0045ff; /* Old browsers */
background: -moz-linear-gradient(-45deg,  #0045ff 0%, #0339cc 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg,  #0045ff 0%,#0339cc 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg,  #0045ff 0%,#0339cc 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0045ff', endColorstr='#0339cc',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */

transform-origin: right top;
transform: scale(0, 1);
transition: transform .3s;
}
.typebtnblue:hover::before {
transform-origin: right top;
transform: scale(1, 1);
}
.typebtnwhite::before {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: -1;
content: '';
background:rgba(255,255,255,0.2);
transform-origin: left top;
transform: scale(0, 1);
transition: transform .3s;
}
.typebtnwhite:hover::before {
transform-origin: left top;
transform: scale(1, 1);
}
.typebtngray {
background:rgba(137,136,136,1);
}
.typebtngray::before {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: -1;
content: '';
background:rgba(127,126,126,0.8);
transform-origin: left top;
transform: scale(0, 1);
transition: transform .3s;
}
.typebtngray:hover::before {
transform-origin: right top;
transform: scale(1, 1);
}
.topslidewrap{
height: 935px;
}
.topmain01 {
padding-top: 349px;
padding-bottom: 344px;
background-repeat: no-repeat;
background-position: center center;
background-size: cover;
}
.topmain02{
position: relative;
}
.topmain02img {
position: absolute;
top: -20px;
width: 42%;
right: 0;
}
.topmain02img img{
width: 100%;
}
.topmain03 {
font-size:60px;
color:#fff;
letter-spacing: 0.15em;
margin-bottom: 17px;
}
.topmain04 {
font-size:34px;
color:#fff;
letter-spacing: 0.15em;
}
.topmain01.type01 {
background-image: url(../img/top/main_01.png);
}
.topmain01.type02 {
background-image: url(../img/top/main_02.png);
}
.topmain01.type03 {
background-image: url(../img/top/main_03.png);
}

.topslideouter {
position: relative;
background-color:#fff;
}

.topslidenext {
position: absolute;
bottom: 0;
right: 0;
left: 0;
width: 100%;
max-width: 1440px;
margin: 0 auto;
}
.topslidenext .topslidenextbutton {
position: absolute;
bottom: 0;
right: 20px;
padding: 24px 26px 31px 25px;
display: block;
opacity: 1;
}
.topslidenext .topslidenextbutton .arrow {
position: relative;
z-index: 1;
display: block;
}
.topslidenext .topslidenextbutton .off,
.topslidenext .topslidenextbutton .on {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
animation-duration: 9000ms;
animation-fill-mode: forwards;
animation-iteration-count: 1;
}
.topslidenext .topslidenextbutton .off {
background: url(../img/top/arrow_bg.jpg) right 0px center no-repeat;
transition: 0.3s ease;
}
.topslidenext .topslidenextbutton .on {
background: url(../img/top/arrow_bg_ov.jpg) right 0px center no-repeat;
}
.topslidenext .topslidenextbutton.is-start .off,
.topslidenext .topslidenextbutton.is-start .on {
animation-name: bg_move;
}
@keyframes bg_move {
0% {
background-position: right 0px center;
}
100% {
background-position: right -300px center;
}
}

.typebtn01 a {
font-size: 24px;
color: #fff;
width: 100%;
position: relative;
display: block;
text-align: center;
padding-top: 18px;
padding-bottom: 18px;
letter-spacing: 0.12em;
}
.typebtn01.type02 a {
padding-top: 18px;
padding-bottom: 18px;
}
.typebtn02 a {
font-size: 24px;
color: #fff;
width: 100%;
position: relative;
display: block;
text-align: center;
padding-top: 16px;
padding-bottom: 18px;
border: 1px solid #FFF;
}

.toptitle01 {
margin-bottom: 22px;
}
.toptitle02 {
font-size:32px;
display:inline-block;
vertical-align:middle;
padding-right: 15px;
letter-spacing:0.15em;
}
.toptitle03 {
font-size: 18px;
display: inline-block;
vertical-align: middle;
padding-top: 7px;
color: #0138C9;
letter-spacing:0.15em;
}
.toptitle01.type02 .toptitle03 {
color: #fff;
}

.topabt01 {
background-color: #FFF;
padding-top: 110px;
padding-bottom: 115px;
}

.topabt01 {
}
.topabt02 {
}
.topabt03 {
float:left;
width:486px;
}
.topabt04 {
float:right;
width:550px;
}
.topabt05 {
font-size:24px;
margin-bottom: 28px;
}
.topabt06 {
font-size:18px;
margin-bottom: 53px;
}
.topabt07 {
margin:0 auto;
width:550px;
}

.topnews01 {
background-image: url(../img/top/bg_01.png);
background-repeat: repeat-y;
background-position: center top;
padding-top: 0px;
padding-bottom: 102px;
background-size: 100%;
}
.topnews02 {
color:#fff;
text-align:left;
font-size:0;
position:relative;
bottom: -47px;
}
.topnews02 li {
display: inline-block;
vertical-align: middle;
text-align: center;
padding-top: 34px;
padding-right: 57px;
padding-bottom: 34px;
padding-left: 60px;
background:rgba(137,136,136,0.78);
cursor:pointer;
margin-bottom: -8px;
}
.topnews02 li.current {
background: #0339cc; /* Old browsers */
background: -moz-linear-gradient(-45deg, #0339cc 0%, #0045ff 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg, #0339cc 0%,#0045ff 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg, #0339cc 0%,#0045ff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0339cc', endColorstr='#0045ff',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.topnews03 {
font-size:32px;
line-height:1.2;
letter-spacing:0.15em;
margin-bottom: 5px;
}
.topnews04 {
font-size:18px;
line-height:1.2;
letter-spacing:0.15em;
}
.topnews05 {
background-color:#fff;
padding-top: 99px;
padding-bottom:90px;
}
.topnews06 {
margin-bottom: 80px;
width:100%;
display:table;
}
.topnews06 li {
display: table-cell;
vertical-align: middle;
text-align: center;
font-size: 24px;
border-bottom: 2px solid #C3C3C3;
padding-top: 1px;
padding-bottom: 3px;
cursor:pointer;
letter-spacing:0.15em;
}
.topnews06 li:nth-child(1) {
width: 264px;
}
.topnews06 li:nth-child(2) {
text-align:left;
padding-left: 73px;
}
.topnews06 li.current {
border-bottom: 2px solid #0138C9;
color:#0138C9;
}
.topnews07 {
margin-bottom: 70px;
}
.topnews07 li {
margin-bottom: 30px;
width:100%;
display:table;
}
.topnews08 {
width: 139px;
display:table-cell;
vertical-align:top;
color:#898888;
}
.topnews09 {
display:table-cell;
vertical-align:top;
}
.topnews10 {
width:550px;
margin:0 auto;
}
.disnone {
display:none;
}

.toplink01 {
width: 100%;
display: table;
background-color: #FFF;
padding-top: 100px;
}
.toplink02 {
width:50%;
display:table-cell;
vertical-align:middle;
position:relative;
    overflow: hidden;
text-align:center;
}
.toplink03 {
position: relative;
color: #fff;
z-index: 1;
padding-top: 250px;
padding-bottom: 234px;
}
.toplink03 dt {
font-size:32px;
letter-spacing:0.15em;
margin-bottom: 5px;
}
.toplink03 dd {
margin-bottom: 30px;
letter-spacing:0.15em;
}
.toplink04 {
width: 309px;
margin:0 auto;
}
.toplink02:after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;	
background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -ms-background-size: cover;
    background-size: cover;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
.toplink02.type01:after {
background-image: url(../img/top/bg_02.png);
}
.toplink02.type02:after {
background-image: url(../img/top/bg_03.png);
}
.toplink02:hover:after {
    -moz-transform: scale(1.2);
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}

.toprecruit01 {
background-color: #FFF;
padding-top: 100px;
}
.toprecruit02 {
width:100%;
display:table;
}
.toprecruit03 {
width:42%;
display:table-cell;
vertical-align:middle;
padding-left: 135px;
padding-top: 100px;
padding-bottom: 100px;
text-align:right;
}
.toprecruit03 img {
position:relative;
right:-15%;
}
.toprecruit04 {
width: 57.5%;
display:table-cell;
vertical-align:middle;
padding-top: 100px;
padding-bottom: 100px;
padding-right:20px;
position:relative;
overflow: hidden;
}
.toprecruit04:after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;	
background: transparent linear-gradient(270deg, #0045FF 0%, #0339CC 100%) 0% 0% no-repeat padding-box;
mix-blend-mode: multiply;
opacity: 1;
}
.toprecruit05 {
position:relative;
z-index:1;
padding-left:150px;
color: #FFF;
max-width: 700px;
}
.toprecruit06 {
font-size:24px;
margin-bottom: 23px;
}
.toprecruit07 {
margin-bottom: 62px;
}
.toprecruit08 {
}

.undermain01 {
padding-top: 182px;
padding-bottom: 226px;
background-image: url(../img/common/bg_under_main_01.png);
background-repeat: no-repeat;
background-position: center top;
background-size:cover;
}
.undermain02 {
text-align:center;
color: #FFF;
}
.undermain03 {
font-size:48px;
letter-spacing: 0.15em;
margin-bottom: 5px;
}
.undermain04 {
letter-spacing: 0.15em;
}
.undermain01.typeinfo {
background-image: url(../img/common/bg_under_main_info.png);
}
.undermain01.typeinfodetail {
background-image: url(../img/common/bg_under_main_infodetail.png);
}
.undermain01.typebusiness {
background-image: url(../img/common/bg_under_main_business.png);
}
.undermain01.typecompany {
background-image: url(../img/common/bg_under_main_company.png);
}
.undermain01.typeprofile {
background-image: url(../img/common/bg_under_main_profile.png);
}
.undermain01.typeorganization {
background-image: url(../img/common/bg_under_main_organization.png);
}
.undermain01.typeaccess {
background-image: url(../img/common/bg_under_main_access.png);
}
.undermain01.typeenvironmental {
background-image: url(../img/common/bg_under_main_environmental.png);
}
.undermain01.typerecruit {
background-image: url(../img/common/bg_under_main_recruit.png);
}
.undermain01.typenewgrads {
background-image: url(../img/common/bg_under_main_newgrads.png);
}
.undermain01.typecareers {
background-image: url(../img/common/bg_under_main_careers.png);
}
.undermain01.typewebsystem {
background-image: url(../img/common/bg_under_main_websystem.png);
}
.undermain01.typecontact {
background-image: url(../img/common/bg_under_main_contact.png);
}


.cmnfirst01 {
background-color: #FFF;
position:relative;
margin-top: -141px;
}
.cmnfirst02 {
font-size: 24px;
text-align: center;
padding-top: 65px;
padding-bottom: 64px;
line-height: 1.71em;
letter-spacing: 0.12em;
}
.cmnfirst02.type02 {
padding-top: 51px;
padding-bottom: 51px;
}
.cmnfirst03 {
margin-bottom:200px;
}
.cmnfirst02.type04 {
padding-top: 44px;
padding-bottom: 44px;
}
.cmnmaintitle01.type02 .cmnmaintitle03 span {
display:inline-block;
}
.cmnmaintitle01.type03 {
display:block;
}
.cmnmaintitle01.type04 {
padding-top: 81px;
padding-bottom: 74px;
}
.cmnmaintitle01 {
width:100%;
display: -webkit-flex;
display: flex;
-webkit-justify-content: flex-start;
justify-content: flex-start;
margin-bottom: 23px;
}
.cmnmaintitle02 {
font-size: 32px;
vertical-align:bottom;
padding-right: 26px;
letter-spacing: 0.15em;
}
.environmental01 .cmnmaintitle02 {
    padding-right: 31px;
}
.websystem01 .cmnmaintitle02 {
letter-spacing: 0.15em;
}
.recruitdetail01 .cmnmaintitle02 {
    padding-right: 31px;
}
.cmnmaintitle03 {
color: #0138C9;
vertical-align:bottom;
-webkit-flex-grow: 1;
flex-grow: 1;
padding-top: 10px;
letter-spacing: 0.15em;
}
.websystem01 .cmnmaintitle03 {
letter-spacing: 0.1em;
}
.cmnmaintitle03 span {
border-bottom: 1px solid #0339CC;
display:block;
padding-bottom:2px;
}
.toptabcontent01 .cmnmaintitle03 span {
    letter-spacing: 0.1em;
}

.cmnmidtitle01 {
font-size: 24px;
color: #0138C9;
margin-bottom: 19px;
letter-spacing: 0.12em;
}
.cmnmidtitle02 {
font-size: 24px;
margin-bottom: 19px;
letter-spacing: 0.12em;
}


.business01 {
margin-bottom: 166px;
}
.business02 {
margin-bottom: 31px;
width:535px;
position:relative;
letter-spacing: 0.15em;
}
.business02:nth-child(odd) {
float:left;
clear:both;
}
.business02:nth-child(even) {
float:right;
}
.business02 a {
display:block;
text-align:center;
position:relative;
overflow:hidden;
color:#fff;
}
.business01_02 {
padding-top: 57px;
padding-bottom: 37px;
/*background-color: rgba(103,109,139,0.5);*/
position:relative;
z-index:1;
}
.business02 a:after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -ms-background-size: cover;
    background-size: cover;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
.business02.type01 a:after {
background-image: url(../img/business/bg_01.png);
}
.business02.type02 a:after {
background-image: url(../img/business/bg_02.png);
}
.business02.type03 a:after {
background-image: url(../img/business/bg_03.png);
}
.business02.type04 a:after {
background-image: url(../img/business/bg_04.png);
}
.business02 a:hover:after {
    -moz-transform: scale(1.2);
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}
.business02 a:hover {
opacity:1;
}
.business02 a:hover .business01_02 {
background-color: transparent;
}
.business03 {
font-size:32px;
line-height:1.4;
letter-spacing: 0.15em;
}
.business04 {
position:relative;
padding-bottom:60px;
letter-spacing: 0.15em;
}
.business04:after {
position: absolute;
content: "";
display: block;
width: 19px;
height: 57px;
bottom: 0;
left:50%;
margin-left:-10px;
text-align:center;
background-position: center center;
-webkit-background-size: cover;
-moz-background-size: cover;
-ms-background-size: cover;
background-size: cover;
background-image: url(../img/business/icon_01.png);
}
.business05 {
padding-bottom:100px;
}
.business06 {
margin-bottom: 100px;
}
.business06 .youtube{
width: 100%;
height: 0;
position: relative;
padding-top: 56.25%;
overflow: hidden;
}
.business06 .youtube iframe{
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}
.business06 .youtubetitile{
font-size: 20px;
font-weight: bold;
padding-top: 20px;
display: block;
width: 100%;
margin-bottom: 10px;
}
.business06.type02 {
margin-bottom: 68px;
}
.business06.type03 {
margin-bottom: 109px;
}
.business07 {
width:535px;
float:right;
}
.business08 {
width:535px;
float:left;
padding-top: 2px;
}
.business09 {
font-size:24px;
margin-bottom: 23px;
}
.business10 {
margin-bottom: 22px;
}
.business11 {
text-align: center;
border: 1px solid #707070;
padding-top: 0px;
padding-bottom: 0px;
line-height: 1.75;
}
.business12 {
}
.business13 {
}
.business13 table {
width:100%;
}
.business13 table th {
border-top: 1px solid #707070;
font-weight: normal;
text-align: center;
vertical-align: middle;
padding-top: 12px;
padding-right: 7px;
padding-bottom: 12px;
padding-left: 7px;
background-color: #6588E5;
color: #FFF;
}
.business13 table td {
text-align: right;
vertical-align: middle;
border-bottom: 1px solid #EBEBEB;
background-color: #FFFFFF;
width: 100px;
padding-top: 8px;
padding-right: 9px;
padding-bottom: 6px;
padding-left: 10px;
}
.business13 table th:nth-child(even) {
background-color: #445C9B;
}
.business13 table td:nth-child(even) {
background-color: #F5F5F5;
}
.business13 table th:first-child {
border-left: 2px solid #707070;
}
.business13 table th:last-child {
border-right: 1px solid #707070;
}
.business13 table td:first-child {
border-left: 2px solid #707070;
}
.business13 table td:last-child {
border-right: 2px solid #707070;
}
.business13 table tr:last-child td {
border-bottom: 2px solid #707070;
}
.business13 table td.business15 {
width:300px;
text-align:left;
padding-left: 56px;
padding-right: 30px;
}
.business15 {
}
.business16 {
color:#445C9B;
}
.business17 {
font-size:15px;
text-align:right;
padding-top: 2px;
margin-bottom: -6px;
}
.business18 {
}
.business19 {
margin-bottom: 96px;
}
.business20 {
width:535px;
float:left;
padding-top: 0px;
}
.business21 {
width:540px;
float:right;
}
.business22 {margin-top: 23px;}
.business23 {
width:261px;
text-align:center;
}
.business23:nth-child(odd) {
float:left;
}
.business23:nth-child(even) {
float:right;
}
.business23 dt {
margin-bottom: 9px;
}
.business23 dd {
font-size:12px;
letter-spacing: 0.085em;
}
.business24 {
margin-bottom: 101px;
padding-top: 78px;
padding-right: 80px;
padding-bottom: 71px;
padding-left: 80px;
border: 1px solid #0138C9;
}
.business25 {
margin-bottom: 5px;
}
.business26 {
text-align:right;
}
.business27 {
width:550px;
margin:0 auto;
}
.business28 {
padding-top: 145px;
padding-bottom: 132px;
}
.business28.type01 {
background-color: #F5F5F5;
}
.business28.type02 {
    padding-top: 150px;
    padding-bottom: 89px;
}
.business28.type03 {
    padding-bottom: 43px;
}
.business29 {
margin-bottom: 99px;
padding-top: 0px;
margin-top: -8px;
}
.business29 table {
width:100%;
}
.business29 table th {
border: 1px solid #707070;
font-weight: normal;
text-align: center;
vertical-align: middle;
padding: 20px;
background-color: #FFFFFF;
width: 150px;
padding-top: 27px;
padding-bottom: 22px;
}
.business29 table th.type02 {
padding: 20px;
background-color: #FFFFFF;
width: 100%;
padding-top: 23px;
padding-bottom: 22px;
}
.business29 table td {
text-align: left;
vertical-align: middle;
padding: 27px;
border: 1px solid #707070;
background-color: #FFFFFF;
padding-top: 19px;
padding-bottom: 18px;
letter-spacing: 0.085em;
line-height: 1.8;
}
/*.business29 table tr:last-child th , .business29 table tr:last-child td {
border-bottom-width: 1px;
}*/
.business30 {
font-size:0;
margin-bottom: 99px;
}
.business30 li {
display: inline-block;
vertical-align:top;
}
.business31 {
display:block;
}
.business31 {
text-indent:-1em;
margin-left:1em;
line-height: 1.78;
}
.business32 {width: 960px;margin: 0 auto;margin-bottom: 53px;}
.aeo_document_box{ overflow: hidden; padding-bottom: 30px; margin: 0 auto; display: flex; align-items: center;}
.aeo_document{ width: 200px; margin-right: 20px;}
.aeo_document img{ width: 100%;}

.business33 {margin-bottom: 4px;}
.business33 a {background-color: #898888;color: #fff;font-size: 24px;display: block;text-align: center;padding-top: 18px;padding-bottom: 19px;}
.business33 a span {
background-image: url(../img/common/icon_blank_white.svg);
background-repeat: no-repeat;
background-position: left 9px;
padding-left: 34px;
background-size:22px;
}
.business34 {text-align: right;font-size: 15px;margin-right: -2px;}
.business35 {display: block;padding-top: 15px;padding-left: 22px;padding-bottom: 17px;}
.business36 {padding-top: 5px;}
.business37 {
padding-top: 2px;
position:relative;
height:484.13px;
overflow: hidden;
}
.business38 {
width:490px;
z-index:1000;
}
.business38.activea {
width:1101px;
position:absolute;
top:0;
z-index:1000;
-webkit-transition: all 0.2s;
-ms-transition: all 0.2s;
-o-transition: all 0.2s;
-ms-transition: all 0.2s;
transition: all 0.2s;
}
.business38:nth-child(odd).activea {
left:0;
}
.business38:nth-child(even).activea {
right:0;
}
.business38.activea .business40 {
display:none;
}
.business38.activeb {
display:none;
}
.business38:nth-child(odd) {
float:left;
}
.business38:nth-child(even) {
float:right;
}
.business39 {
margin-bottom: 15px;
-webkit-transition: all 0.2s;
-ms-transition: all 0.2s;
-o-transition: all 0.2s;
-ms-transition: all 0.2s;
transition: all 0.2s;
}
.business40 {
text-align:right;
}
.business40 a {
font-size: 18px;
display: inline-block;
color: #fff;
background-color: #898888;
padding: 3px 12px 0px 15px;
margin-bottom: 99px;
text-align: center;
line-height: 1.6;
}
.business40 span {
background-image: url(../img/business/icon_popup.png);
background-repeat: no-repeat;
background-position: left 3px;
padding-left: 22px;
}
.business41 {
}
.businessbtnclose {
color: #0138C9;
letter-spacing: 0.11em;
position:absolute;
top:-36px;
right:0;
display:none;
}
.activea .businessbtnclose {
display:block;
}
.remodal.typebusuness {
    max-width: 94%;
}
.business38.typemodal {
width:100%;
z-index:1000;
background-color:#FFF;
padding:60px 20px;
}
.business38.typemodal:nth-child(odd) {
float:none;
}
.business38.typemodal:nth-child(even) {
float:none;
}



.businessnav01 {position: relative;margin-bottom: 186px;}
.businessnav02 {padding-top: 73px;width: 718px;margin: 0 auto;}
.businessnav03 {position: absolute;}
.businessnav03.type01 {top: 0;left: 418px;}
.businessnav03.type02 {top: 233px;left: 87px;}
.businessnav03.type03 {top: 233px;right: 86px;}
.businessnav03.type04 {bottom: -74px;left: 418px;}
.businessnav03 a {
display:block;
width:264px;
}
.businessnav03 a img {
transition: all 0.1s;
}
.businessnav03 a img:nth-child(2) {
position:absolute;
opacity:0;
left:0;
top:0;
}
.businessnav03 a:hover {
opacity:1;
}
.businessnav03 a:hover img:nth-child(2) {
opacity: 1;
}
.info01 {
margin-bottom: 200px;
}
.info02 {
text-align:center;
font-size:0;
margin-bottom: 28px;
letter-spacing:normal;
}
.info02 li {
font-size: 32px;
color: #FFF;
background-color: #E8E8E8;
text-align: center;
vertical-align: middle;
display: inline-block;
padding-top: 13px;
padding-bottom: 22px;
width:50%;
cursor:pointer;
}
.info02 li.current {
background-color: #0138C9;
}
.info03 {
letter-spacing:0.15em;
}
.info04 {
}
.info05 {
margin-bottom:200px;
}
.info05 li a {
display: block;
padding-top: 23px;
padding-bottom: 26px;
border-bottom: 2px solid #C3C3C3;
}
.info05.type02 {
margin-top:100px;
margin-bottom:60px;
}
.info05.type02 li {
width:525px;
}
.info05.type02 li:nth-child(odd) {
float:left;
clear:both;
}
.info05.type02 li:nth-child(even) {
float:right;
}
.info05.type02 li:nth-child(1) {
border-top: 2px solid #C3C3C3;
}
.info05.type02 li:nth-child(2) {
border-top: 2px solid #C3C3C3;
}
.info06 {
color: #898888;
display: block;
margin-bottom: 6px;
}
.info07 {
display: block;
font-size:24px;
}
.info05.type02 .info07 {
font-size:18px;
}
.info08 {
position:relative;
    padding-bottom: 1px;
}
.info08.type01 {
background-image: url(../img/common/icon_pdf.svg);
background-repeat: no-repeat;
background-position: right 8px;
background-size:22px;
padding-right:30px;
}
.info05.type02 .info08.type01 {
    background-position: right 1px;
    background-size: 20px;
padding-top:2px;
padding-bottom:5px;
}
.info08.type02 {
padding-right:23px;
}
.info08.type02:after {
    display: block;
    position: absolute;
    bottom: 9px;
    right: 0px;
    width: 11px;
    height: 11px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
    border-top-width: 4px;
    border-right-width: 4px;
    border-top-style: solid;
    border-right-style: solid;
    border-top-color: #707070;
    border-right-color: #707070;
}
.info05.type02 .info08.type02:after {
    bottom: 5px;
    width: 10px;
    height: 10px;
}

.infomore {
cursor:pointer;
position:relative;
}
.info09 {
padding-top: 13px;
padding-right: 3px;
padding-bottom: 51px;
padding-left: 3px;
border: 1px solid #0138C9;
font-size: 24px;
color: #0138C9;
background-image: url(../img/common/icon_more.svg);
background-repeat: no-repeat;
background-position: center bottom 15px;
text-align:center;
}
.info09.current {
border-top: 1px none #0138C9;
border-right: 1px none #0138C9;
border-bottom: 1px solid #0138C9;
border-left: 1px none #0138C9;
}
.info10 {
position:absolute;
right:5px;
bottom:5px;
font-size:16px;
z-index:1;
color: #0138C9;
}
.info11 {
}

.infodetail01 {margin-top: -17px;margin-bottom: 200px;}
.infodetail02 {
font-size: 28px;
border-bottom: 2px solid #C3C3C3;
margin-bottom: 18px;
padding-bottom: 18px;
letter-spacing:0.15em;
}
.infodetail03 {
color: #898888;
margin-bottom: 57px;
}
.infodetail04 {
margin-bottom: 92px;
}
.infodetail05 {
font-size: 24px;
margin-bottom: 24px;
letter-spacing:0.12em;
}
.infodetail06 {
}
.infodetail07 {
margin-bottom: 150px;
text-align:center;
}
.infodetail07 a {
font-size: 24px;
display: inline-block;
padding-top: 12px;
padding-right: 72px;
padding-bottom: 12px;
padding-left: 76px;
border: 1px solid #000;
}
.infodetail07 a span {
background-image: url(../img/common/icon_pdf.svg);
background-repeat: no-repeat;
background-position: left 10px;
background-size:25px;
display: inline-block;
padding-top: 5px;
padding-bottom: 4px;
padding-left: 35px;
letter-spacing: 2.88px;
}
.infodetail08 {
margin-bottom: 142px;
padding-top: 10px;
}
.infodetail09 {
text-align:center;
margin-bottom: 44px;
}
.infodetail10 {
text-align:center;
}
.infodetail11 {
margin-bottom:0;
margin-top: 142px;
}
.infodetail12 {
width:430px;
}
.infodetail12:nth-child(odd) {
float:left;
}
.infodetail12:nth-child(even) {
float:right;
}

.company01 {
padding-top:85px;
margin-bottom:290px;
background-repeat: no-repeat;
margin-top: 293px;
}
.company01.type01 {
background-position: right top;
}
.company01.type02 {
background-position: left top;
}
.company01.typebg01 {
background-image: url(../img/company/pic_02.png);
}
.company01.typebg02 {
background-image: url(../img/company/pic_03.png);
}
.company01.typebg03 {
background-image: url(../img/company/pic_04.png);
}
.company01.typebg04 {
background-image: url(../img/company/pic_05.png);
margin-bottom: 292px;
}
.company02 {
width: 550px;
box-shadow: 7px 7px 15px -1px #bbb;
background-color: #fff;
text-align: center;
padding-top: 148px;
padding-bottom: 145px;
}
.company02.type02 {padding-top: 100px;padding-bottom: 116px;}
.company01.type02 .company02 {
float:right;
}
.company03 {
font-size: 32px;
margin-bottom: 25px;
letter-spacing:0.15em;
}
.company04 {
color: #0138C9;
margin-bottom: 30px;
line-height:1.5;
letter-spacing:0.15em;
}
.company04.type02 {
margin-bottom: 19px;
}
.company05 {
margin-bottom: 35px;
}
.company05.type02 {
margin-bottom: 15px;
}
.company06 {
width:250px;
margin:0 auto;
}
.company07 {
}
.company06.typebtn01.type02.typelh {margin-top: 18px;}

.company06.typebtn01.type02 a {
font-size:25px;
padding-top: 17px;
padding-bottom: 18px;
}
.typebtn01.type02.typelh a {
    padding-top: 8px;
    padding-bottom: 9px;
    line-height: 1.15;
}

.profile01 {
margin-bottom: 193px;
}
.profile02 {
width:100%;
float:none;
}
.profile03 {
    width: 300px;
    float: right;
    padding-top: 0;
    margin-top: -65px;
    margin-left: 50px;
margin-bottom:20px;
}
.cmnmaintitle01.profile27 {
width:calc(100% - 410px);
}
.profile04 {
text-align:left;
line-height: 1.8;
padding-top: 0px;
margin-top: -5px;
}
.profile05 {
text-align:center;
padding: 0 20px;
padding-bottom: 30px;
}
.profile05 dt {
text-align:center;
margin-bottom: 15px;
margin-top: 2px;
}
.profile05 dd {
font-size:16px;
}
.profile05 dd span {
font-size:24px;
display: inline-block;
}
.profile06 {
margin-bottom: 50px;
text-align: center;
padding-top: 94px;
padding-bottom: 93px;
border: 1px solid #BCBCBC;
box-shadow:7px 7px 15px -5px #bbb;
}
.profile06.type02 {
padding-top: 74px;
padding-bottom: 73px;
}
.profile06.type03 {
padding-top: 86px;
padding-bottom: 85px;
margin-bottom: 40px;
}
.profile07 {
font-size:32px;
letter-spacing:0.15em;
margin-bottom: 9px;
}
.profile08 {
color: #0138C9;
margin-bottom: 29px;
letter-spacing:0.15em;
}
.profile09 {
font-size:24px;
}
.profile09 span {
font-size:18px;
}
.profile10 {
margin-top: 54px;
padding-top: 22px;
padding-right: 50px;
padding-bottom: 22px;
padding-left: 53px;
border: 1px solid #707070;
}
.profile10 li {
text-align:left;
line-height: 2.2;
}
.profile11 {
margin-bottom:190px;
line-height: 2.25;
}
.profile12 {
margin-bottom: 166px;
}
.profile12.type02 {
margin-bottom: 213px;
}
.profile13 {
margin-top: 50px;
}
.remodal-wrapper .profile13.type02 {
margin-top: 0px;
}
.profile13.type02 {
margin-top: 23px;
}
.profile13 table {
width:100%;
}
.profile13 table th {
border: 1px solid #E8E8E8;
font-weight: normal;
text-align: center;
vertical-align:middle;
padding-top: 29px;
padding-right: 7px;
padding-bottom: 28px;
padding-left: 7px;
background-color: #ECEEF5;
width: 14.7em;
line-height:1.77;
letter-spacing:0.085em;
}
.profile13 table td {
text-align: left;
vertical-align: middle;
padding-top: 29px;
padding-right: 16px;
padding-bottom: 28px;
padding-left: 39px;
border: 1px solid #E8E8E8;
line-height:1.77;
letter-spacing:0.085em;
position: relative;
background-color: #fff;
}
.profile13 table th.valigntop , .profile13 table td.valigntop {
vertical-align:top;
}
.profile13.type02 table th {
padding-top: 17px;
padding-bottom: 17px;
font-size: 16px;
width: 16.5em;
line-height:1.75;
letter-spacing: 0.085em;
vertical-align:top;
}
.profile13.type02 table td {
padding-top: 17px;
padding-bottom: 17px;
font-size: 16px;
line-height:1.75;
letter-spacing: 0.085em;
vertical-align:top;
}
.profile14 {
display:inline-block;
vertical-align:middle;
}
.profile15 {
display:inline-block;
vertical-align:middle;
position: absolute;
left: 364px;
top: 21px;
}
.profile15 a {
background: #0339cc; /* Old browsers */
background: -moz-linear-gradient(-45deg, #0339cc 0%, #0045ff 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg, #0339cc 0%,#0045ff 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg, #0339cc 0%,#0045ff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0339cc', endColorstr='#0045ff',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
display: block;
color: #FFF;
padding-top: 7px;
padding-right: 22px;
padding-bottom: 5px;
padding-left: 20px;
}
.profile15 a span {
display: inline-block;
background-image: url(../img/common/icon_map.svg);
background-repeat: no-repeat;
background-position: left 7px;
padding-left: 19px;
padding-top: 2px;
padding-bottom: 2px;
}
.profile16 {padding-top: 0px;}
.profile17 {
margin-bottom: 30px;
padding-top: 0px;
}
.profile17 dt {
margin-bottom: 5px;
line-height:1.77;
letter-spacing:0.085em;
}
.profile17 dd {
padding-left:1em;
color:#898888;
line-height:1.77;
letter-spacing:0.085em;
}
.profile17:last-child {
margin-bottom:0px;
}
.profile18 {
margin-bottom: 208px;
}
.profile19 {position: relative;padding-top: 106px;padding-bottom: 89px;}
.profile20 {position: absolute;right: 23px;top: 6px;}
.profile21 {margin-left: 1px;}
.profile21 li {
float:left;
margin-right: 40px;
margin-bottom: 3px;
}
.profile21 li a {
background-image: url(../img/common/icon_blank.svg);
background-repeat: no-repeat;
background-position: left 3px;
background-size: 20.5px;
padding-left: 27px;
}
.mac .profile21 li a {
background-position: left top;
padding-bottom:2px
}

.profile22 {margin-top: 50px;}
.profile22 li {
width:538px;
}
.profile22 li a {
text-align: center;
display: block;
color: #FFF;
background-color: #0138C9;
background-image: url(../img/company_profile/btn_arrow.png);
background-repeat: no-repeat;
background-position: right 34px top 20px;
padding: 10px 17px 8px 7px;
font-size: 16px;
letter-spacing: 0.1em;
/* margin-left: -8px; */
}
.profile22 li:nth-child(odd) {
float:left;
}
.profile22 li:nth-child(even) {
float:right;
}
.profile23 {padding-top: 113px;padding-bottom: 113px;}
.profile24 {position: relative;}
.profile25 {font-size: 24px;line-height: 1.25;letter-spacing: 0.1em;color: #0138C9;background-color: #fff;text-align: center;padding-top: 13px;padding-bottom: 14px;}

.organization01 {
    padding-top: 2px;
    padding-bottom: 200px;
}
.organization02 {
margin-top: 50px;
margin-bottom: 36px;
}
.organization03 {
float: right;
margin-bottom: 47px;
}
.organization03 a {
font-size: 16px;
display: inline-block;
border: 1px solid #707070;
padding-top: 5px;
padding-right: 20px;
padding-bottom: 4px;
padding-left: 20px;
letter-spacing: -0.02em;
}
.organization04 {
text-align:center;
margin-bottom: 34px;
}
.organization05 {
width:550px;
margin:0 auto;
}
.organizationzoom01 {
display:none;
}

.access01 {
}
.access02 {
}
.access03 {
float:right;
width:500px;
}
.access04 {
float:left;
width:550px;
position:relative;
}
.access05 {
font-size:32px;
letter-spacing:0.15em;
margin-bottom: 4px;
}
.access06 {
color: #0138C9;
letter-spacing:0.15em;
margin-bottom: 29px;
}
.access07 {
}
.access08 {
position:absolute;
top: 1px;
right:0;
}
.access08 a {
background: transparent linear-gradient(270deg, #0045FF 0%, #0339CC 100%) 0% 0% no-repeat padding-box;
display: block;
color: #FFF;
padding-top: 5px;
padding-right: 21px;
padding-bottom: 4px;
padding-left: 17px;
}
.access08 a span {
display: inline-block;
background-image: url(../img/common/icon_map.svg);
background-repeat: no-repeat;
background-position: 3px 8px;
padding-left:22px;
padding-top: 2px;
padding-bottom: 2px;
}
.access09 {
border-bottom: 1px solid #898888;
margin-bottom: 10px;
padding-bottom: 8px;
letter-spacing: 0.085em;
}
.access13 .access09 {
font-weight:bold;
padding-top: 5px;
padding-bottom: 6px;
}
.access10 {
}
.access10 li {
border-bottom: 1px solid #898888;
margin-bottom: 10px;
padding-bottom: 8px;
}
.access10 li:last-child {
border-bottom: 1px none #898888;
}
.access11 {
font-weight:bold;
display:inline-block;
width: 90px;
letter-spacing: 0.12em;
}
.access12 {
margin-top: 63px;
margin-bottom: 120px;
}
.access13 {
width:500px;
margin-bottom: 51px;
}
.access13:nth-child(odd) {
float:left;
clear:both;
}
.access13:nth-child(even) {
float:right;
}
.access14 {
margin-bottom: 23px;
}
.access14 li {
float:left;
}
.access14 li:nth-child(odd) {
margin-left:1.2em;
}
.access14 li:nth-child(even) {
float:right;
margin-right: 27px;
}
.access15 {
font-weight:bold;
display:inline-block;
width: 64px;
letter-spacing: 0.12em;
}
.access16 {
margin-top: 75px;
margin-bottom: 49px;
}
.access16 table {
width:100%;
}
.access16 table th {
border: 1px solid #E8E8E8;
font-weight: normal;
text-align: center;
vertical-align:middle;
padding: 7px;
padding-top: 6px;
padding-bottom: 5px;
background-color: #ECEEF5;
width: 14.7em;
letter-spacing: 0.085em;
line-height: 1.778;
}
.access16 table td {
text-align: left;
vertical-align: middle;
padding-top: 6px;
padding-right: 7px;
padding-bottom: 5px;
padding-left: 40px;
border: 1px solid #E8E8E8;
letter-spacing: 0.085em;
line-height: 1.778;
}
.access17 {
margin-bottom: 200px;
}
.access17.type05 {
margin-bottom: 130px;
}
.access18 {
text-align: center;
border: 1px solid #707070;
margin-bottom: 48px;
padding-top: 0px;
padding-bottom: 0px;
}
.access19 {
}
.access20 {
text-align:center;
width:475px;
margin-bottom: 0;
}
.access20:nth-child(odd) {
float:left;
}
.access20:nth-child(even) {
float:right;
}
.access20 dt {
margin-bottom: 11px;
}
.access20 dd {
font-size:12px;
letter-spacing: 0.085em;
}
.access21 {
width:550px;
margin:60px auto 80px;
}
.access22 {
margin-bottom: 243px;
}
.access23 {
margin-bottom: 59px;
}
.access24 {
width:525px;
margin-bottom: 60px;
position:relative;
}
.access24:nth-child(odd) {
float:left;
}
.access24:nth-child(even) {
float:right;
}
.access25 {
font-size:40px;
}
.access26 {
margin-bottom:60px;
}
.spaccess01 {
letter-spacing: -0.033em;
}

.environmental01 {
margin-bottom: 200px;
padding-top: 2px;
}
.environmental01.type02 {
margin-bottom: 203px;
}
.environmental02 {
margin-bottom: 44px;
/* padding-top: 0px; */
margin-top: -6px;
}
.environmental03 {
margin-bottom: 80px;
}
.environmental04 {
margin-bottom: 74px;
}
.environmental05 {
float:left;
width:620px;
}
.environmental06 {
float:right;
width:450px;
}
.environmental07 {padding-top: 28px;}
.environmental07 table {
width:100%;
}
.environmental07 table th {
border: 1px solid #E8E8E8;
font-weight: normal;
text-align: center;
vertical-align:middle;
padding: 7px;
}
.environmental07 table th.type02 {
background-color: #ECEEF5;
}
.environmental07 table td {
width: 273px;
border: 1px solid #E8E8E8;
text-align: center;
vertical-align:middle;
padding: 7px;
}
.environmental08 {
text-align:center;
margin-bottom: 28px;
}
.environmental09 {
text-align:center;
font-size:12px;
}
.environmental10 {
width:550px;
margin:0 auto;
}
.environmental11 {
text-align:center;
font-size:0;
margin-bottom:100px;
}
.environmental12 {
display:inline-block;
vertical-align:top;
margin-left: 25px;
margin-right: 25px;
}

.recruit01 {
margin-bottom: 200px;
}
.recruit01.type02 {
margin-bottom: 262px;
}
.recruit02 {
margin-top: 70px;
margin-bottom: 28px;
padding-top: 0px;
padding-bottom:85px;
background-repeat: no-repeat;
}

/*.recruit02.type01 {
background-image: url(../img/recruit/bg_01.png);
background-position: right top;
}*/

.recruit02.type02 {
background-image: url(../img/recruit/bg_02.png);
background-position: left top;
/* margin-top: 24px; */
}
.recruit03 {
width:550px;
}
.recruit03.nonephoto{
width: 100%;
}
.recruit02.type02 .recruit03 {
margin-left:auto;
}
.recruit04 {
font-size:24px;
margin-bottom: 23px;
letter-spacing: 0.12em;
}
.recruit05 {
}
.recruit06 {
}
.recruit07 {
width:550px;
margin: 0 auto;
}
.recruit08 {
margin-bottom:200px;
}
.recruit02 .mynavi{
width: 100%;
display: block;
margin-top: 40px;
}
.recruit02 .mynavi img{
width: 195px;
}
.recruit02 .mynavi span{
display:block;
font-size: 16px;
}
.recruitdetail01 {
}
.recruitdetail02 {
margin-top:45px;
margin-bottom:145px;
}
.recruitdetail03 {
width:550px;
margin:0 auto;
margin-bottom: 164px;
}

.recruitbtm01 {
background-image: url(../img/common/bg_recruit_btm.png);
background-repeat: no-repeat;
background-position: center center;
background-size:cover;
padding-top: 197px;
padding-right: 0;
padding-bottom: 194px;
padding-left: 0;
margin-bottom: 0;
}
.recruitbtm02 {
text-align:center;
font-size:0;
width:100%;
display:table;
max-width:1400px;
margin-left:auto;
margin-right:auto;
}
.recruitbtm03 {
display:table-cell;
text-align:center;
}
.recruitbtm03:nth-child(odd) {position: relative;right: 12px;}
.recruitbtm03:nth-child(even) {position: relative;left: 12px;}
.recruitbtm03 a {
font-size: 25px;
color: #0138C9;
text-align: center;
display: block;
padding-top: 15px;
padding-bottom: 18px;
background-color: rgba(255,255,255,0.8);
border: 1px solid #FFF;
max-width: 551px;
position:relative;
margin-left:auto;
margin-right:auto;
letter-spacing: 0.096em;
}
.recruitbtm03 a:hover {
opacity:0.95;
}
.recruitbtm03 a::before {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: -1;
content: '';
background-color: rgba(255,255,255,0.85);
transform-origin: center center;
transform: scale(0, 1);
transition: transform .3s;
}
.recruitbtm03 a:hover::before {
transform: scale(1, 1);
}

.websystem01 {
margin-bottom: 98px;
}
.websystem02 {
margin-top: 60px;
}
.websystem03 {
width: 190px;
float:left;
margin-left: 37px;
}
.websystem03:first-child {
margin-left:0;
}
.websystem03.type02 {
margin-left: 38px;
}
.websystem04 {
margin-bottom: 23px;
background-color: #F5F5F5;
text-align: center;
padding-top: 10px;
padding-bottom: 17px;
height: 188px;
}
.websystem04 dt {
    margin-bottom: 11px;
}
.websystem04 dd {
font-weight: bold;
color: #898888;
letter-spacing: 0.085em;
}
.websystem03.type01 .websystem04 {
padding-top: 10px;
}
.websystem03.type01 .websystem04 dt {
    margin-left: 28px;
    margin-bottom: 3px;
    padding-top: 23px;
}
.websystem03.type02 .websystem04 {
padding-top: 5px;
}
.websystem03.type02 .websystem04 dt {
    margin-left: -3px;
    margin-bottom: 13px;
    padding-top: 37px;
}
.websystem03.type03 .websystem04 {
padding-top: 13px;
}
.websystem03.type03 .websystem04 dt {
    margin-left: 0px;
    margin-bottom: 2px;
    padding-top: 19px;
}
.websystem03.type04 .websystem04 {
padding-top: 4px;
}
.websystem03.type04 .websystem04 dt {
    margin-left: 2px;
    margin-bottom: 15px;
    padding-top: 38px;
}
.websystem03.type05 .websystem04 {
padding-top: 10px;
}
.websystem03.type05 .websystem04 dt {
    margin-left: 0px;
    margin-bottom: 2px;
    padding-top: 22px;
}
.websystem05 {letter-spacing: 0.08em;line-height: 1.78;}
.websystem06 {
}
.websystem07 {
margin-bottom: 42px;
padding-top: 0px;
margin-top: -7px;
}
.websystem08 {
margin-bottom:100px;
}
.websystem08 table {
width:100%;
}
.websystem08 table th {
border: 1px solid #E8E8E8;
font-weight: normal;
text-align: center;
vertical-align:middle;
padding: 7px;
background-color: #ECEEF5;
width: 14.7em;
letter-spacing: 0.085em;
}
.websystem08 table td {
text-align: left;
vertical-align: middle;
padding-top: 7px;
padding-right: 7px;
padding-bottom: 7px;
padding-left: 40px;
border: 1px solid #E8E8E8;
letter-spacing: 0.085em;
}
.websystem09 {
width:100%;
display:table;
margin-bottom:7px;
/* padding-top: 0px; */
}
.websystem10 {
display: table-cell;
vertical-align: middle;
background-color: #E8E8E8;
padding-top: 62px;
padding-bottom:60px;
background-image: url(../img/websystem/arrow_01.png);
background-repeat: no-repeat;
background-position: right center;
}
.websystem10.type01 {
width: 378px;
padding-left: 44px;
padding-right: 65px;
}
.websystem10.type02 {
width: 366px;
padding-left: 29px;
padding-right: 70px;
}
.websystem10.type03 {
padding-left: 26px;
padding-right: 65px;
background-image: url(../img/websystem/arrow_02.png);
}
.websystem10 p {letter-spacing: 0.085em;line-height: 1.79;}
.websystem10.type01 p {
}
.websystem10.type02 p {
}
.websystem10.type03 p {
}
.websystem11 {
margin-bottom: 115px;
font-size:12px;
text-align:right;
padding-right: 70px;
}
.websystem12 {
margin-bottom: 100px;
}
.websystem12 li {
width:200px;
float:left;
margin-left:85px;
}
.websystem12 li:first-child {
margin-left:0;
}
.websystem12 a {
font-size: 24px;
display: inline-block;
padding-top: 10px;
padding-bottom: 9px;
border: 1px solid #000;
width: 240px;
text-align: center;
padding-left: 0px;
}
.websystem12 a span {
background-image: url(../img/common/icon_pdf.svg);
background-repeat: no-repeat;
background-position: left 13px;
background-size:25px;
display: inline-block;
padding-top: 5px;
padding-bottom: 5px;
padding-left: 39px;
}

.websystembtm01 {
background-color: #F5F5F5;
margin-bottom: 202px;
padding-top: 84px;
padding-bottom: 84px;
}
.websystembtm02 li {line-height: 1.76;text-indent: -1em;margin-left: 1em;}
.websystembtm02 li a {
background-image: url(../img/common/icon_blank_gray.svg);
background-repeat: no-repeat;
background-position: right 7px;
background-size:17px;
display: inline-block;
padding-right: 24px;
margin-right: 2px;
margin-left: 1em;
}
.svgcol01 {
fill:#898888;
}

.contact01 {
font-size: 24px;
padding-top: 83px;
padding-bottom: 80px;
letter-spacing:0.15em;
font-weight: normal;
text-align: center;
}
.contact02 {
letter-spacing:0.118em;
}
.contact03 {
font-size: 24px;
margin-bottom: 35px;
letter-spacing: 0.118em;
line-height: 1.68;
}
.contact03.type02 {
margin-bottom: 40px;
padding-top: 5px;
}
.contact03.type03 {
margin-bottom: 61px;
}
.contact04 {
margin-bottom: 140px;
}
.contact04.type02 {
margin-bottom: 152px;
}
.contact04.type03 {
margin-bottom: 106px;
}
.contact04 li {
text-indent:-1em;
margin-left:1em;
margin-bottom: 4px;
line-height: 1.66;
}
.contact04.type02 li {
line-height: 1.67;
}
.contact05 {
margin-bottom:160px;
}
.contact06 {
margin-bottom: 17px;
font-weight:bold;
}
.contact07 {
margin-bottom: 44px;
}
.contact07 table {
width:100%;
border: 1px solid #E8E8E8;
}
.contact07 table th {
border-bottom: 1px solid #E8E8E8;
font-weight: normal;
text-align: center;
vertical-align:middle;
padding: 7px;
background-color: #ECEEF5;
width: 14.7em;
padding-top: 8px;
padding-bottom: 6px;
letter-spacing: 0.085em;
}
.contact07 table td {
width:;
text-align: left;
vertical-align:middle;
padding: 7px 12px;
padding-top: 8px;
padding-bottom: 6px;
letter-spacing: 0.085em;
padding-left: 23px;
}
.contact08 {
padding-top: 106px;
padding-bottom: 65px;
border: 1px solid #707070;
margin-bottom: 200px;
letter-spacing: 0.155em;
}
.contact09 {
font-size: 24px;
text-align: center;
margin-bottom: 17px;
font-weight:bold;
}
.contact10 {
margin-bottom: 27px;
}
.contact11 dt {
font-weight:bold;
letter-spacing: 0.085em;
margin-bottom: 2px;
}
.contact11 dd {
margin-bottom: 33px;
}
.contact11 dd ul li {line-height: 1.8;}
.contact12 {
    padding: 25px;
    border: 1px solid #707070;
    margin-top: 160px;
text-align:center;
}
.contact12 span {
display:inline-block;
margin-left:2em;
}
.form01 {
margin-bottom: 195px;
}
.form01.typeinput {
margin-top: 106px;
margin-bottom: 200px;
}
.form01.typeconfirm {
margin-bottom: 200px;
}
.form02 {
font-size: 24px;
text-align: center;
margin-bottom: 47px;
letter-spacing: 0.12em;
padding-top: 2px;
}
.form01.typeinput .form02 {
margin-bottom: 75px;
}
.form03 {
margin-bottom: 155px;
}
.form01.typeinput .form03 {
margin-bottom: 49px;
}
.form03 table {
width:100%;
}
.form03 table th {
vertical-align:top;
font-weight:normal;
width:345px;
position:relative;
padding-top: 10px;
padding-bottom: 63px;
letter-spacing: 0.085em;
font-weight: bold;
line-height: 1.77;
}
.form03 table th.type04 {
padding-bottom: 46px;
}
.form01.typeconfirm .form03 table th {
padding-top: 37px;
padding-bottom: 36px;
}
.form01.typeconfirm .form03 table td {
padding-top: 37px;
padding-bottom: 36px;
padding-left: 19px;
padding-right: 15px;
}
.form03 table td {
vertical-align:top;
padding-top: 0px;
padding-bottom: 48px;
letter-spacing: 0.085em;
line-height: 1.77;
}
.form03 table tr:last-child td {
line-height:1.8;
}
.form03 table td.type02 {
padding-bottom: 80px;
}
.form03 table td.type03 {
padding-bottom: 59px;
}
.form03 table td.type05 {
padding-bottom: 37px;
}
.form04 {
padding-left: 18px;
margin-top: 17px;
font-size: 16px;
letter-spacing: 0;
}
.form03 input {
font-size: 16px;
padding: 11px 30px 11px 17px;
width: 100%;
border: 1px solid #707070;
border-radius:7px;
}
.form03 textarea {
font-size: 16px;
padding: 13px 17px;
width: 100%;
height: 275px;
border: 1px solid #707070;
border-radius:7px;
}
.form05 {
margin-bottom: 37px;
}
.require {
font-size: 12px;
color: #FFF;
background-color: #B7B0B0;
line-height: 1;
display: inline-block;
padding-top: 10px;
padding-right: 18px;
padding-bottom: 10px;
padding-left: 20px;
position:absolute;
right: 54px;
top: 37px;
letter-spacing: 0.085em;
font-weight: normal;
}
.form01.typeinput .require {
top: 8px;
}
.form06 {
width:550px;
margin:0 auto;
}
.form06 input {
display:block;
border:none;
width:100%;
font-size: 24px;
font-family: 'Noto Serif JP', serif;
text-align:center;
padding-top: 18px;
padding-bottom: 18px;
background-color:transparent;
position:relative;
color:#fff;
cursor:pointer;
letter-spacing: 0.12em;
}
.form09 .form06 {
width:430px;
margin: inherit;
}
.form09 .form06.type01 {
float:left;
}
.form09 .form06.type02 {
float:right;
}
.form07 {
position:relative;
}
.form06 .typebtnblue::before {
z-index:0;
}
.form06 .typebtngray::before {
z-index:0;
}
.selectwrap {
position:relative;
display:inline-block;
width:100%;
}
.selectwrap select::-ms-expand {
display: none;
}
.selectwrap select {
font-size: 16px;
width: 100%;
display: block;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
padding: 11px 30px 11px 17px;
background-color: #fff;
border: 1px solid #707070;
border-radius:7px;
letter-spacing: -0.04em;
}
.selectwrap::before {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 6px);
    right: 15px;
    width: 0;
    height: 0;
    border-top: 12px solid #333;
    border-right: 7px solid transparent;
    border-bottom: 12px solid transparent;
    border-left: 7px solid transparent;
    pointer-events: none;
}
.selectwrap::after {
    content: "";
    display: block;
    position: absolute;
    top: 10px;
    right: 41px;
    width: 1px;
    height: 31px;
}
.form08 {
width:550px;
margin:0 auto;
margin-bottom: 222px;
}

.spwidth02 {
    display: inline-block;
    width: 9em;
}
.spwidth03 {
    display: inline-block;
    width: 12em;
}
.error-message{
color: #b12421;
}
.profile06.type03 .pdflink{
    background-image: url(../img/common/icon_pdf.svg);
    background-repeat: no-repeat;
    background-position: right 8px;
    background-size: 12px;
text-align: right;
display: block;
margin-top: 8px;
padding-top: 3px;
font-size: 14px;
padding-right: 20px;
color: #0138C9;
}


@media (min-width: 768px) {

}
