@charset "utf-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
/* ------------------------------------------------------------------------------------------ common */
body {
font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "sans-serif";
font-feature-settings: "palt" 1;
font-size: 1em;
line-height: 1.9em;
letter-spacing: -0.02em;
}
a {
color: #000;
text-decoration: none;
}
a img {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
a:hover, a img:hover, button:hover {
opacity: 0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
transition: all 0.3s ease;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
}
.fL {
float: left;
}
.fR {
float: right;
}
.ccenter {
text-align: center;
}
.clearfix:after {
content: " ";
display: block;
clear: both;
}
.mT10 {
margin-top: 10px!important;
}
.mT20 {
margin-top: 20px!important;
}
.mT30 {
margin-top: 30px!important;
}
.mT40 {
margin-top: 40px!important;
}
.mT50 {
margin-top: 50px!important;
}
.mB10 {
margin-bottom: 10px!important;
}
.mB20 {
margin-bottom: 20px!important;
}
.mB30 {
margin-bottom: 30px!important;
}
.mB40 {
margin-bottom: 40px!important;
}
.mB50 {
margin-bottom: 50px!important;
}
.mL10 {
margin-left: 10px!important;
}
.mL20 {
margin-left: 20px!important;
}
.mL30 {
margin-left: 30px!important;
}
.mR10 {
margin-right: 10px!important;
}
.mR20 {
margin-right: 20px!important;
}
.mR30 {
margin-right: 30px!important;
}
.fontLL {
font-size: 1.5em;
}
.fontL {
font-size: 1.3em;
}
.fontM {
font-size: 1.0em;
}
.fontS {
font-size: 0.8em;
}
.fontSS {
font-size: 0.7em;
}
.require {
color: #c00;
}
.yellow {
color: #f39700;
}
.red {
color: #e50012;
}
.imgauto {
width: auto;
max-width: 100%;
}
.pcshow {
display: block;
}
.spshow {
display: none;
width: 80%;
margin: 0 auto;
}

@media (max-width: 768px) {
  .engineering_youtubu p, .engineering_youtubu h2{
    width: 95%;
    margin: 0 auto;
  }
  .engineering_youtubu iframe{
    display: block;
    margin: 0 auto;
    width: 95%;
    height: 350px;
  }
  .pcshow {
    display: none;
  }
  .spshow {
    display: block;
  }
  .p15 {
    padding-left: 15px!important;
    padding-right: 15px!important;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.inner {
width: 960px;
margin: auto;
}

@media (max-width: 768px) {
  .inner {
    width: 100%;
  }
}
/* ------------------------------------------------------------------------------------------ header */
#header {
width: 100%;
margin: 0 auto;
position: fixed;
z-index: 4;
top: 0;
background-color: #fff;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
align-items: center;
}
#header h1#logo {
width: auto!important;
max-width: 270px;
margin-left: 10px;
margin-right: 30px;
}
#header h1#logo img {
width: 100%;
}
#header nav#gNav {
max-width: 900px;
margin: 0 0 0 auto;
line-height: 0;
}
#header nav#gNav ul {
padding: 0;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
flex-wrap: wrap;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
/* 2019/01/10 メニュー追加に伴いclass追加、修正 */
#header nav#gNav ul li {
padding: 15px 0;
margin-left: 2%;
}
#header nav#gNav ul li a {
height: 100%;
display: inline-block;
line-height: 35px;
max-width: 100%;
}
#header nav#gNav ul li img {
max-width: 100%;
height: auto;
vertical-align: bottom;
margin-bottom: 8px;
}
#header nav#gNav ul li.menu01 {
width: 6.366%;
}
#header nav#gNav ul li.menu02 {
width: 6.312%;
}
#header nav#gNav ul li.menu03 {
width: 6.312%;
}
#header nav#gNav ul li.menu04 {
width: 6.312%;
}
#header nav#gNav ul li.menu05 {
width: 6.312%;
}
#header nav#gNav ul li.menu06 {
width: 6.366%;
}
#header nav#gNav ul li.menu07 {
width: 9.28%;
}
#header nav#gNav ul li.menu08 {
width: 12.733%;
}
#header nav#gNav ul li.buttons {
width: 23%;
padding: 0;
margin: 0 0 0 1%;
text-align: right;
font-size: 0;
}
#header nav#gNav ul li .btn01 {
margin: 0;
box-sizing: border-box;
width: 50%;
height: 100%;
max-width: 85px;
padding: 0 10px;
background-color: #0068b2;
display:inline-block;
}
#header nav#gNav ul li .btn02 {
margin: 0;
box-sizing: border-box;
width: 50%;
height: 100%;
max-width: 85px;
padding: 0 10px;
background-color: #00334e;
display:inline-block;
}
#header nav#gNav ul li.btn01 img, #header nav#gNav ul li.btn02 img {
width: 100%;
margin-bottom:0;
}
#header .header_entrybtn {
display: none;
}
#header #spMenu {
display: none;
}

@media (max-width: 1024px) {
  #header {
    padding: 0;/*上下のpaddingも0にしました*/
    height:72px;/*追加*/
  }
  #header h1#logo {
    width: 240px;
    max-width: 240px;
    margin-top: 10px;
    margin-right: 0;
    width: 60% !important;
  }
  #header nav#gNav {
    display: none;
  }
  #header .header_entrybtn {
    display: block;
    background-color: #0068b2;
    width: 14vw;
    max-width: 64px;
    height: 14vw;
    max-height: 64px;
    position: absolute;
    left: auto;
    right: 82px;
  }
  #header .header_entrybtn img {
    width: 100%;
    height: auto;
  }
  #header #spMenu {
    display: block;
  }
  #header #spMenu h1 img {
    width: 230px;
  }
  #header #spMenu button {
    width: 44px;
    padding: 0;
    display: block;
    position: fixed;
    z-index: 4;
    top: 5px;
    right: 20px;
    background: none;
    border: none;
    color: #00334e;
    cursor: pointer;
    outline: none;
    text-align: center;
  }
  #header #spMenu button span.bar {
    display: block;
    height: 5px;
    background-color: #00334e;
    margin: 7px 0;
    transition: all 0.2s;
    transform-origin: 0 0;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
  }
  #header #spMenu button .close {
    display: none;
  }
  #header #spMenu button .menu {
    display: block;
  }
  #header #spMenu button.active span.bar {
    width: 46px;
    height: 3px;
    margin: 8.5px 0;
  }
  #header #spMenu button.active .bar1 {
    transform: rotate(30deg);
  }
  #header #spMenu button.active .bar2 {
    opacity: 0;
  }
  #header #spMenu button.active .bar3 {
    transform: rotate(-30deg);
  }
  #header #spMenu button.active .menu {
    display: none;
  }
  #header #spMenu button.active .close {
    display: block;
  }
  #header #spMenu nav {
    width: 240px;
    height: 100%;
    transition: all 0.2s;
    transform: translate(300px);
    position: fixed;
    top: 68px;
    right: 0;
    z-index: 50!important;
    background-color: #fff;
  }
  #header #spMenu nav.open {
    transform: translate(0);
  }
  #header #spMenu h1 {
    margin: 10px 0 0 10px;
    float: left;
  }
  #header #spMenu nav {
  }
  #header #spMenu nav ul li {
    font-weight: bold;
  }
  #header #spMenu nav ul li a {
    width: 80%;
    margin: auto;
    padding: 10px 15px;
    display: block;
    border-top: 2px dotted #00334e;
  }
  #header #spMenu nav ul li a small {
    margin-left: 5px;
    font-size: 0.8em;
    font-weight: normal;
  }
  #header #spMenu nav p#spmypage {
    width: 50%;
    display: block;
    float: left;
    text-align: center;
    line-height: 0;
    background-color: #0068b2;
  }
  #header #spMenu nav p#spentry {
    width: 50%;
    display: block;
    float: right;
    text-align: center;
    line-height: 0;
    background-color: #00334e;
  }
  #header #spMenu nav p#spmypage img, #header #spMenu nav p#spentry img {
    width: 60%;
  }
}

/* ------------------------------------------------------------------------------------------ footer */
#footer {
width: 100%;
padding: 50px 0 70px 0; /*20190131 bottom20pxから70pxに変更*/
clear: both;
overflow: hidden;
background-color: #00334e;
}
#footer figure {
margin-bottom: 30px;
text-align: center;
}
#footer figure img {
width: 530px;
}
#footer nav {
margin: 0 auto!important;
}
#footer nav ul {
margin-bottom: 10px;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
text-align: center;
align-items: center;
justify-content: center;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
font-size: 0.75em;
line-height: 1.5em;
letter-spacing: 0.05em;
}
#footer nav ul li {
padding: 0 10px;
border-right: 1px solid #fff;
}
#footer nav ul li:last-child {
border-right: 0 none;
}
#footer nav ul li a {
color: #fff;
}
#footer p#copy {
clear: both;
overflow: hidden;
text-align: center;
color: #fff;
font-size: 0.8em;
letter-spacing: 0.05em;
}
p#pageTop a {
width: 50px;
height: 40px;
position: fixed;
bottom: 30px;
right: 30px;
padding-top: 10px;
text-align: center;
background-color: #fff;
border-radius: 50%;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
z-index:3;/*20190130 追加項目*/
}
p#pageTop a:after {
content: "";
display: inline-block;
width: 8px;
height: 8px;
border: solid #00334e;
border-width: 3px 3px 0 0;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}

@media (max-width: 768px) {
  #footer {
  padding: 40px 0 20px 0;
  }
  #footer figure img {
  width: 300px;
  }
  #footer nav ul {
  justify-content: space-between;
  flex-wrap: wrap;
  }
  #footer nav ul li {
  width: 49.9%;
  padding: 10px 0;
  }
  #footer nav ul li {
  margin-bottom: 1px;
  border-right: 0 none;
  }
  p#pageTop a {
  bottom: 30px;
  right: 10px;
  }
  #footer p#copy {
  top: 10px;
  font-size: 0.5em;
  }
}
/* ------------------------------------------------------------------------------------------ 共通部分*/
#main {
width: 100%;
background-color: #fff;
}

@media (max-width: 768px) {
  #main {
    font-size: 0.9em;
    line-height: 1.7em;
  }
}
#main.concreteContents {
color: #5a5a5a;
}
#main.concreteContents #entry {
margin: 80px 0 0 0!important;
}
#main.concreteContents #entry0 {
margin: 0!important;
}

@media (max-width: 768px) {
  #main.concreteContents #entry {
  margin: 60px 0 0 0;
  }
}
#main.concreteContents section {
margin: 73px auto; /*20190120 50pxから73pxに変更*/
}
#main.concreteContents article {
margin: auto auto 50px auto!important;
}
#main.concreteContents article:last-of-type {
margin: auto;
}
#main.concreteContents article img {
width: auto;
max-width: 100%;
}
#main.concreteContents article ul {
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: space-between;
}
#main.concreteContents article ul.switchbox {
flex-direction: row-reverse;
}
#main.concreteContents article ul.col2 li {
width: 48%;
}
#main.concreteContents article ul.col2 li img {
margin: auto!important;
display: block;
}
#main.concreteContents article ul.col2-1 li:first-child {
width: 25%!important;
}
#main.concreteContents article ul.col2-1 li:last-child {
width: 72%!important;
}

@media (max-width: 768px) {
  #main.concreteContents section {
  width: 100%;
  margin: 42px auto; /*30PXから42PXに変更*/
  }
  #main.concreteContents article {
  width: 90%;
  margin: auto;
  }
  #main.concreteContents article ul {
  width: 100%;
  display: block;
  }
  #main.concreteContents article ul.switchbox {
  flex-direction: row-reverse;
  }
  #main.concreteContents article ul.col2 li, #main.concreteContents article ul.col2-1 li:last-child {
  width: 100%!important;
  margin: auto auto 15px auto;
  }
  #main.concreteContents article ul.col2-1 li:first-child {
  width: 100%!important;
  margin: auto auto 15px auto;
  text-align: center;
  }
}
#main.concreteContents h3 {
margin-bottom: 50px;
text-align: center;
color: #4d4d4d;
font-size: 1.5em;
}
#main.concreteContents h4 {
margin-bottom: 15px;
color: #00334e;
font-size: 2em;
font-weight: bold;
line-height: 35px;
}
#main.concreteContents h5 {
margin-bottom: 15px;
padding-bottom: 3px;
color: #404040;
border-bottom: 2px solid #909090;
font-size: 1.5em;
font-weight: bold;
}
#main.concreteContents em {
margin-bottom: 15px;
color: #00334e;
font-size: 1.2em;
font-weight: bold;
}
h2#contentsTit {
width: 100%;
margin: 73px auto 80px auto; /*62pxから73pxに変更しました*/
padding: 20px 0;
text-align: center;
background-color: #0068b2;
color: #fff;
font-size: 1.8em;
font-weight: bold;
letter-spacing: 0.1em;
line-height: 1.1em;
}
h2#contentsTit small {
display: block;
color: #fff;
font-size: 0.5em;
font-weight: normal;
}

@media (max-width: 768px) {
  h2#contentsTit {
  margin: 72px auto 50px auto; /*65pxから72pxに変更しました*/
  }
  #main.concreteContents h3 {
  font-size: 1.2em;
  }
  #main.concreteContents h3 img {
  width: auto;
  max-width: 100%;
  }
}
/* ------------------------------------------------------------------------------------------ トップページ */
#mainVisual {
width: 100%;
margin: 60px auto 0 auto!important;
}
#mainVisual ul {
width: 100%;
max-width: 1920px;
margin: 0 auto!important;
line-height: 0;
}
#mainVisual ul li img {
width: 100%;
height: 100%;
}
#mainVisual ul li img.pcshow {
display: block!important;
}
#mainVisual ul li img.spshow {
display: none!important;
}

@media (max-width: 768px) {
  #mainVisual ul li img.pcshow {
  display: none!important;
  }
  #mainVisual ul li img.spshow {
  display: block!important;
  }
}
#main #engineering {
width: 100%;
margin: 0!important;
padding: 50px 0;
background-color: #0068b2;
clear: both;
overflow: hidden;
}
#main #engineering ul {
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: space-between;
}
#main #engineering ul li:first-child {
width: 330px;
position: relative;
z-index: 3;
}
#main #engineering ul li:last-child {
width: 600px;
}
#main #engineering ul li img {
width: 100%;
}
#main #engineering ul li h2 {
width: 420px;
margin-bottom: 20px;
float: left;
color: #0068b2;
}
#main #engineering ul li p {
color: #fff;
}

@media (max-width: 768px) {
  #main #engineering ul {
  width: 90%;
  padding: 0;
  display: block;
  }
  #main #engineering ul li:first-child, #main #engineering ul li:last-child {
  width: 100%;
  margin-bottom: 15px;
  position: static;
  }
  #main #engineering ul li h2 {
  width: 90%;
  margin: auto auto 15px auto;
  text-align: center;
  display: block;
  float: none;
  }
}
#main #message {
width: 100%;
margin: 0 auto!important;
padding: 40px 0 0 0!important;
clear: both;
overflow: hidden;
background-color: #eef3f6;
}
#main #message h2 {
margin-bottom: 20px;
}
#main #message ul.messageSlider {
margin: 30px auto 0 auto!important;
}
#main #message ul.messageSlider li {
width: 33%;
padding: 0 15px;
height: 415px;
}
/*
#main #message ul.messageSlider li img {
backface-visibility: inherit;
}*/
#main #message ul.messageSlider li figcaption {
/*width: 65%;*/
width: 72%;
margin: auto;
padding: 10px 20px;
position: relative;
top: -50px;
left: -5px;
z-index: 3;
background-color: #fff;
}
#main #message ul.messageSlider li figcaption h3 {
margin-bottom: 10px;
line-height: 1.5em;
letter-spacing: 0.1em;
color: #00334e;
}
#main #message ul.messageSlider li figcaption p {
line-height: 1.3em;
color: #666;
}
/* Slider */
.slick-loading .slick-list {
background: #fff url('/application/themes/yahagi_theme/images/ajax-loader.gif') center center no-repeat;
}
.slick-prev, .slick-next {
width: 45px;
height: 45px;
padding: 0;
position: absolute;
z-index: 2!important;
top: 50%;
display: block;
font-size: 0;
line-height: 0;
-webkit-transform: translate(0, -50%);
-ms-transform: translate(0, -50%);
transform: translate(0, -50%);
cursor: pointer;
border: none;
outline: none;
background: transparent;
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
color: transparent;
outline: none;
background: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before {
opacity: 1;
}
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {
opacity: .25;
}
.slick-prev:before, .slick-next:before {
font-family: 'slick';
font-size: 40px;
line-height: 1;
opacity: 1;
color: #fff;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.slick-prev {
left: 10px;
}
[dir='rtl'] .slick-prev {
right: 10px;
left: auto;
}
.slick-prev:before {
content: url(/application/themes/yahagi_theme/images/prev.png);
}
[dir='rtl'] .slick-prev:before {
content: '→';
}
.slick-next {
right: 10px;
}
[dir='rtl'] .slick-next {
right: auto;
left: 10px;
}
.slick-next:before {
content: url(/application/themes/yahagi_theme/images/next.png);
}
[dir='rtl'] .slick-next:before {
content: url(/application/themes/yahagi_theme/images/prev.png);
}
.slider {
display: none;
}
.slider.slick-initialized {
display: block;
}

@media (max-width: 768px) {
  #main #message {
  width: 100%;
  margin: auto;
  padding: 20px 0!important;
  }
  #main #message h2 {
  width: 75%;
  margin: auto auto 20px auto;
  text-align: center;
  display: block;
  }
  #main #message h2 img {
  width: 90%;
  margin: auto;
  }
  ul.messageSlider {
  width: 80%;
  margin: 30px auto auto auto;
  }
  ul.messageSlider {
  width: 70%!important;
  }
  ul.messageSlider li {
  }
  ul.messageSlider li img {
  width: 60%;
  margin: auto!important;
  }
  #main #message ul.messageSlider li figcaption {
  width: 50%;
  top: 0!important;
  left: 0!important;
  font-size: 0.8em;
  }
}

@media (max-width: 640px) {
  ul.messageSlider li img {
  width: 90%;
  }
  #main #message ul.messageSlider li {
  height: auto;
  }
  #main #message ul.messageSlider li figcaption {
  width: 75%;
  }
  .slick-prev {
  left: -30px;
  }
  [dir='rtl'] .slick-prev {
  right: -30px;
  }
  .slick-next {
  right: -30px;
  }
  [dir='rtl'] .slick-next {
  left: -30px;
  }
}
#main #project {
margin: 15px auto!important;
background-color: #0067b2;
}
#main #project.inner {
padding: 95px 0;
background-image: url(/application/themes/yahagi_theme/images/backProject.png);
background-position: center;
background-repeat: no-repeat;
background-size: cover;
clear: both;
overflow: hidden;
}
#main #project h2 {
width: 302px;
float: left;
}
#main #project button {
width: 200px;
margin: 15px 80px 0 0;
padding: 15px 0;
float: right;
display: block;
background-color: #fff;
color: #21aad1;
cursor: pointer;
border: 0 none;
font-size: 0.9em;
letter-spacing: 0.3em;
}
#main #project button:after {
content: "";
width: 8px;
height: 8px;
margin: 5px 0 0 10px;
vertical-align: middle;
position: absolute;
border-top: 3px solid #21aad1;
border-right: 3px solid #21aad1;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

@media all and (-ms-high-contrast: none) {
  #main #project {
  margin: 30px auto 15px auto!important;
  }
  #main #project button:after {
  margin: 10px 0 0 10px;
  }
}

@media (max-width: 768px) {
  #main #project.inner {
  padding: 60px 0;
  }
  #main #project h2 {
  margin: auto auto 20px auto;
  float: none;
  text-align: center;
  }
  #main #project h2 img {
  width: 80%;
  margin: auto;
  }
  #main #project button {
  width: 70%;
  margin: auto;
  float: none;
  color: #0064c8;
  }
  #main #project button:after {
  border-top: 3px solid #0064c8;
  border-right: 3px solid #0064c8;
  }
}
#main #works {
margin: 15px auto!important;
background-color: #1c88c7;
}
#main #works.inner {
padding: 50px 0;
background-image: url(/application/themes/yahagi_theme/images/backWorks.png);
background-position: center;
background-repeat: no-repeat;
background-size: cover;
clear: both;
overflow: hidden;
}
#main #works h2 {
width: 302px;
margin-top: 30px;
float: left;
}
#main #works ul {
width: 420px;
margin: 15px 80px 0 0;
float: right;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
line-height: 0;
}
#main #works ul li {
width: 200px;
margin-bottom: 20px;
}
#main #works ul li button {
width: 100%;
margin: 0 auto;
padding: 15px 0;
display: block;
background-color: #fff;
color: #82bdd6;
cursor: pointer;
border: 0 none;
font-size: 0.9em;
letter-spacing: 0.3em;
}
#main #works ul li button:after {
content: "";
width: 8px;
height: 8px;
margin: 5px 0 0 10px;
vertical-align: middle;
position: absolute;
border-top: 3px solid #7eb8d6;
border-right: 3px solid #7eb8d6;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

@media all and (-ms-high-contrast: none) {
  #main #works ul li button {
  padding: 25px 0;
  }
  #main #works ul li button:after {
  margin: -5px 0 0 10px;
  }
}

@media (max-width: 768px) {
  #main #works.inner {
  padding: 60px 0 50px 0;
  }
  #main #works h2 {
  margin: auto auto 20px auto;
  float: none;
  text-align: center;
  }
  #main #works h2 img {
  width: 80%;
  margin: auto;
  }
  #main #works ul {
  width: 100%;
  margin: 15px auto;
  float: none;
  display: block;
  }
  #main #works ul li {
  width: 70%;
  margin: 0 auto 10px auto;
  }
  #main #works ul li button {
  width: 100%;
  color: #0064c8;
  }
  #main #works ul li button:after {
  border-top: 3px solid #0064c8;
  border-right: 3px solid #0064c8;
  }
}
#main #company {
margin: 15px auto!important;
background-color: #0067b2;
}
#main #company.inner {
padding: 95px 0;
background-image: url(/application/themes/yahagi_theme/images/backCompany.png);
background-position: center;
background-repeat: no-repeat;
background-size: cover;
clear: both;
overflow: hidden;
}
#main #company h2 {
width: 346px;
float: left;
}
#main #company button {
width: 200px;
margin: 15px 80px 0 0;
padding: 15px 0;
float: right;
display: block;
background-color: #fff;
color: #0067b2;
cursor: pointer;
border: 0 none;
font-size: 0.9em;
letter-spacing: 0.3em;
}
#main #company button:after {
content: "";
width: 8px;
height: 8px;
margin: 5px 0 0 10px;
vertical-align: middle;
position: absolute;
border-top: 3px solid #21aad1;
border-right: 3px solid #21aad1;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

@media all and (-ms-high-contrast: none) {
  #main #company button:after {
  margin: 10px 0 0 10px;
  }
}

@media (max-width: 768px) {
  #main #company.inner {
  padding: 70px 0;
  }
  #main #company h2 {
  margin: auto auto 20px auto;
  float: none;
  text-align: center;
  }
  #main #company h2 img {
  width: 70%;
  margin: auto;
  }
  #main #company button {
  width: 70%;
  margin: auto;
  float: none;
  color: #0064c8;
  }
  #main #company button:after {
  border-top: 3px solid #0064c8;
  border-right: 3px solid #0064c8;
  }
}
#main #recruit {
margin: 15px auto!important;
background-color: #3ea2db;
}
#main #recruit.inner {
padding: 95px 0;
background-image: url(/application/themes/yahagi_theme/images/backRecruit.png);
background-position: center;
background-repeat: no-repeat;
background-size: cover;
clear: both;
overflow: hidden;
}
#main #recruit h2 {
width: 302px;
float: left;
}
#main #recruit ul {
width: 490px;
margin: 15px 80px 0 0;
float: right;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: space-between;
line-height: 0;
}
#main #recruit ul li:nth-child(1) {
width: 270px;
}
#main #recruit ul li:nth-child(2) {
width: 200px;
}
#main #recruit ul li button {
width: 100%;
margin: 0 auto;
padding: 15px 0;
display: block;
background-color: #fff;
color: #7eb8d6;
cursor: pointer;
border: 0 none;
font-size: 0.9em;
letter-spacing: 0.3em;
}
#main #recruit ul li button:after {
content: "";
width: 8px;
height: 8px;
margin: 5px 0 0 10px;
vertical-align: middle;
position: absolute;
border-top: 3px solid #7eb8d6;
border-right: 3px solid #7eb8d6;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

@media all and (-ms-high-contrast: none) {
  #main #recruit {
  margin: 15px auto 30px auto!important;
  }
  #main #recruit ul li button {
  padding: 25px 0;
  }
  #main #recruit ul li button:after {
  margin: -5px 0 0 10px;
  }
}

@media (max-width: 768px) {
  #main #recruit.inner {
  padding: 70px 0 60px 0;
  }
  #main #recruit h2 {
  margin: auto auto 20px auto;
  float: none;
  text-align: center;
  }
  #main #recruit h2 img {
  width: 80%;
  margin: auto;
  }
  #main #recruit ul {
  width: 100%;
  margin: 15px 30px 0 0;
  float: none;
  display: block;
  }
  #main #recruit ul li:nth-child(1), #main #recruit ul li:nth-child(2) {
  width: 70%;
  margin: auto auto 10px auto;
  }
  #main #recruit ul li button {
  width: 100%;
  margin: auto;
  float: none;
  color: #0064c8;
  }
  #main #recruit ul li button:after {
  border-top: 3px solid #0064c8;
  border-right: 3px solid #0064c8;
  }
}
#main #bnrArea {
width: 100%;
margin: 0 auto!important;
padding: 50px 0 0 0!important;
background-color: #eef3f6;
}
#main #bnrArea ul {
margin: auto;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: center;
align-items: center;
line-height: 0;
}
#main #bnrArea ul li {
width: 45%;
padding: 0 30px;
}
#main #bnrArea ul li a img {
width: 100%;
}
#main #bnrArea ul li a h2 {
width: 70%;
padding: 30px 0;
position: relative;
top: -350px;
left: -20px;
text-align: center;
background-color: rgba(0,53,100,0.80);
color: #fff;
font-size: 1.5em;
letter-spacing: 0.1em;
}

@media (max-width: 768px) {
  #main #bnrArea ul li a h2 {
  top: -280px;
  left: -20px;
  font-size: 1.2em;/*background-color:red;*/
  }
}

@media (max-width: 640px) {
  #main #bnrArea ul {
  width: 100%;
  display: block;
  }
  #main #bnrArea ul li {
  width: 80%;
  margin: auto;
  }
  #main #bnrArea ul li a h2 {
  top: -400px;
  }
}

@media (max-width: 580px) {
  #main #bnrArea ul li a h2 {
  top: -400px;
  }
}
@media (max-width: 480px) {
  #main #bnrArea ul li a h2 {
  top: -300px;
  }
}
@media (max-width: 380px) {
  #main #bnrArea ul li a h2 {
  top: -280px;
  }
}
@media (max-width: 340px) {
  #main #bnrArea ul li a h2 {
  top: -250px;
  }
}

#main #recruitList {
margin: 0 auto!important;
padding: 20px 0 50px 0!important;
background-color: #eef3f6;
}

@media (max-width: 768px) {
  #main #recruitList {
  padding: 20px 0 20px 0!important;
  }
}
#main #recruitList ul {
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: center;
font-size: 1.2em;
}
#main #recruitList ul li {
padding: 10px 50px;
display: inline-block;
text-align: center;
background-image: url(/application/themes/yahagi_theme/images/recruitList.png);
background-repeat: no-repeat;
background-position: right center;
background-size: 50px 40px;
}
#main #recruitList ul li a {
padding: 0 0 10px 0;
color: #00334e;
}

@media (max-width: 768px) {
  #main #recruitList {
  padding: 0;
  }
  #main #recruitList ul {
  display: block;
  border-top: 2px dotted #00334e;
  }
  #main #recruitList ul li {
  width: 100%;
  padding: 10px 0 5px 0;
  border-bottom: 2px dotted #00334e;
  }
  #main #recruitList ul li:last-child {
  border-bottom: 0 none;
  }
  #main #recruitList ul li a {
  width: 100%;
  display: block;
  }
}
#main #entry, #main #entry0 {
background-color: #d9e721;
}
#main #entry h2 a, #main #entry0 h2 a {
width: 100%;
padding: 40px 0;
display: block;
text-align: center;
}
#main #entry h2 a img, #main #entry0 h2 a img {
line-height: 0;
margin: 0 auto;
}

@media (max-width: 768px) {
  #main #entry h2 img, #main #entry0 h2 img {
  width: 35%;
  }
}
/* ------------------------------------------------------------------------------------------ 社員紹介 */
.staffMainVisual {
margin-top: 70px!important;
}
.staffMainVisual img {
width: auto;
max-width: 100%;
height: auto;
margin: auto;
text-align: center;
}
#staffMessage {
margin: 50px auto 30px auto;
}
#staffMessage article {
width: 85%;
margin: 40px auto!important;
}
#staffMessage article figure {
margin: 40px auto;
text-align: center;
}
#staffMessage article figure img {
width: auto;
max-width: 100%;
}
#staffMessage h4 {
width: 85%;
margin: 0 auto;
}
#staffMessage h4 img {
width: 33%;
}
#staffMessage h5 {
margin-bottom: 20px!important;
color: #0068b2!important;
font-size: 1.4em!important;
font-weight: bold!important;
letter-spacing: 0.07em!important;
border-bottom: 0 none!important;
}
#staffMessage h5 p {
text-indent: 0!important;
}
#staffMessage ul {
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: space-between;
}
#staffMessage ul.switchbox {
flex-direction: row-reverse;
}
#staffMessage ul li {
width: 48.5%;
}
#staffMessage ul li img {
width: auto;
max-width: 100%;
height: auto;
}
#staffMessage p {
text-indent: 1em;
}

@media (max-width: 768px) {
  #staffMessage {
  width: 100%;
  margin: 30px auto;
  }
  #staffMessage h4 img {
  width: 50%;
  padding: 0 20px;
  }
  #staffMessage h5 {
  margin-bottom: 10px;
  font-size: 1.2em!important;
  }
  #staffMessage article {
  margin: 20px auto;
  }
  #staffMessage ul.switchbox {
  flex-direction: row-reverse;
  }
  #staffMessage ul li {
  width: 100%;
  margin: auto;
  }
  #staffMessage ul li img {
  width: 100%;
  margin: auto auto 15px auto!important;
  display: block;
  }
}
#policy {
width: 100%;
margin: 0!important;
background-color: #00a0dc;
}
#policy .inner > div {
width: 500px;
margin: 0!important;
padding: 40px 0!important;
color: #fff;
}
#policy h4 {
margin-bottom: 10px;
}
#policy {
background-repeat: no-repeat;
background-position: center;
background-size: cover;
}

@media (max-width: 768px) {
  #policy .inner {
  width: 100%!important;
  }
  #policy .inner > div {
  width: 90%;
  margin: auto!important;
  padding: 0 0 30px 0;
  }
  #policy h4 img {
  width: 40%;
  margin: 10px auto auto auto;
  text-align: center;
  }
}
#stepup {
}
#stepup h6, #flow h6 {
margin-bottom: 20px;
padding: 10px;
background-color: #00a0dc;
color: #fff;
}
#stepup ul li {
width: 32%;
}
#stepup ul li .stepT {
margin-bottom: 10px;
padding: 5px 0;
display: block;
background-color: #00334e;
text-align: center;
color: #fff;
}
#stepup ul li .balloon {
width: 100%;
min-height: 100px;
margin: 1.5em 0;
padding: 7px 10px;
position: relative;
display: inline-block;
background: #efefef;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
#stepup ul li .balloon:before {
content: "";
margin-left: -15px;
position: absolute;
top: -30px;
left: 50%;
border: 15px solid transparent;
border-bottom: 15px solid #efefef;
}
#stepup ul li .balloon span {
margin: 0;
padding: 0;
}
#stepup ul li .balloon p {
text-indent: 0!important;
}
#flow {
}
#flow ul li {
width: 49%;
text-align:center;
}
#stepup img, #flow img {
width: auto;
max-width: 100%;
height: auto;
}

@media (max-width: 768px) {
  #stepup ul li, #flow ul li {
  width: 90%;
  }
  #stepup ul li .balloon {
  min-width: 90%;
  min-height: 50px;
  }
}
#staffList {
margin-bottom: 0!important;
padding: 20px 0 0 0;
}
#staffList h4 {
margin-left: 40px;
margin-bottom: 30px;
}
#staffList h4 img {
width: 20%;
}
#staffList ul {
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
}
#staffList ul li {
}
#staffList ul li img {
width: 100%;
opacity: 1;
filter: alpha(opacity=100);
-ms-filter: "alpha(opacity=100)";
}
#staffList ul li span {
width: 70px;
margin: auto;
padding: 20px 2px;
position: relative;
top: -55px;
display: block;
text-align: center;
background-color: rgba(0,160,220,0.70);
color: #fff;
border-radius: 50%;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
font-size: 0.8em;
}

/* エリア限定職 */
#staffList ul li.staff_limitedarea {
  position: relative;
}
#staffList ul li.staff_limitedarea span {
  padding: 12px 0 28px 0;
}
#staffList ul li.staff_limitedarea div {
  position: absolute;
  top: auto;
  bottom: 78px;
  font-size: 0.6em;
  color: #FFF;
  width: 100%;
  text-align: center;
  line-height: 100%;
}
#staffList ul li.staff_limitedarea div br {
  display: none;
}

#staffList ul li a {
}
#staffList ul li a img {
opacity: 0.5;
filter: alpha(opacity=50);
-ms-filter: "alpha(opacity=50)";
}
#staffList ul li a span {
background-color: rgba(100,100,100,0.70);
}
#staffList .slick-prev, #staffList .slick-next {
top: 35%;
}

@media (max-width: 768px) {
  #staffList h4 img {
  width: 45%;
  }
  #staffList ul {
  width: 80%;
  margin: auto;
  flex-wrap: wrap;
  }
  #staffList ul li {
  width: 25%;
  margin-bottom: -20px;
  }
  #staffList ul li span {
  width: 50px;
  padding: 15px 2px;
  top: -40px;
  }

  /* エリア限定職 */
  #staffList ul li.staff_limitedarea span {
    padding: 8px 2px 22px 2px;
  }
  #staffList ul li.staff_limitedarea div {
    bottom: 47px;
  }
  #staffList ul li.staff_limitedarea div br {
    display: inline;
  }

  #staffList .slick-prev {
  left: -25px;
  }
  #staffList .slick-next {
  right: -25px;
  }
}
/* ------------------------------------------------------------------------------------------ プロジェクト*/
#projectList {
}
#projectList ul {
}
#projectList ul li {
margin-bottom: 40px;
position: relative;
}
#projectList ul li:last-child {
margin-bottom: 0;
}
#projectList ul li img {
width: auto;
max-width: 100%;
}
#projectList ul li span {
width: 100%;
position: absolute;
top: 45%;
z-index: 2!important;
display: block;
text-align: center;
color: #fff;
font-size: 2.5em;
font-weight: bold;
}
ul#workBtn {
margin-top: 50px;
margin-bottom: 80px;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: space-between;
}
ul#workBtn li {
width: 48%;
position: relative;
}
ul#workBtn li:after {
content: "";
width: 10px;
height: 10px;
position: absolute;
right: 5%;
bottom: 43%;
z-index: 3;
display: block;
border-top: 3px solid #fff;
border-right: 3px solid #fff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
ul#workBtn li:first-child button {
width: 100%;
padding: 20px 0;
display: block;
text-align: center;
border: 0 none;
color: #fff;
font-size: 1.3em;
background-color: #0068b2;
cursor: pointer;
}
ul#workBtn li:last-child button {
width: 100%;
padding: 20px 0;
display: block;
border: 0 none;
color: #fff;
font-size: 1.3em;
background-color: #003367;
cursor: pointer;
}

@media (max-width: 768px) {
  ul#workBtn {
  display: block;
  }
  ul#workBtn li {
  width: 100%;
  margin-bottom: 15px;
  }
  #projectList ul li span {
  font-size: 1.5em;
  }
}
h2#detailVisual {
margin: 73px auto 80px auto; /*65pxから73pxに変更しました*/
position: relative;
}
h2#detailVisual span {
width: 100%;
position: absolute;
top: 45%;
z-index: 0;
display: block;
text-align: center;
color: #fff;
font-size: 2.5em;
font-weight: bold;
}
h2#detailVisual img {
width: auto;
max-width: 100%;
}

@media (max-width: 768px) {
  h2#detailVisual {
  margin: 72px auto 50px auto; /*65pxから72pxに変更しました*/
  }
  h2#detailVisual img {
  width: 100%;
  height: 200px;
  overflow: hidden;
  object-fit: cover;
  object-position: center;
  }
  h2#detailVisual span {
  font-size: 1.8em;
  }
}
#projectOutline {
padding-bottom: 30px;
border: 2px solid #00334e;
}
#projectOutline h3 {
margin-bottom: 30px!important;
padding: 15px 20px;
text-align: left!important;
background-color: #00334e;
color: #fff!important;
font-size: 1.4em;
font-weight: bold;
}
#projectOutline dl {
width: 80%;
margin: auto;
padding: 10px 0;
clear: both;
overflow: hidden;
border-bottom: 2px dashed #00334e;
}
#main #projectOutline .ikeasoroe_a {
letter-spacing: 7.4px;
}
#main #projectOutline .ikeasoroe_b {
letter-spacing: 2.7px;
}
#main #projectOutline .ikeasoroe_c {
}
#projectOutline dl:last-of-type {
border-bottom: 0 none;
}
#projectOutline dl dt {
width: 20%;
float: left;
}
#projectOutline dl dd {
width: 75%;
float: right;
}
#projectOutline dl dd dl {
width: 100%;
padding: 0;
border-bottom: 0 none;
}
#projectOutline dl dd dl dt {
width: 30%;
float: left;
}
#projectOutline dl dd dl dd {
width: 70%;
float: right;
}

@media (max-width: 768px) {
  #projectOutline {
  width: 90%!important;
  margin: auto;
  padding-bottom: 20px!important;
  }
  #projectOutline h3 {
  margin-bottom: 20px!important;
  }
  #projectOutline dl {
  width: 90%;
  }
  #projectOutline dl dt, #projectOutline dl dd dl dt {
  width: 100%;
  float: none;
  font-weight: bold;
  }
  #projectOutline dl dd, #projectOutline dl dd dl dd {
  width: 100%;
  float: none;
  }
  #main #projectOutline .ikeasoroe_a {
  letter-spacing: 6.7px;
  }
  #main #projectOutline .ikeasoroe_b {
  letter-spacing: 2.45px;
  }
  #main #projectOutline .ikeasoroe_c {
  }
}
#bnArea {
margin: 0 auto;
text-align: center;
}
#bnArea img {
width: auto;
max-width: 100%;
}
#talkList {
margin: 0 auto;
text-align: center;
}
#talkList li {
margin-bottom: 30px;
}
#talkList li:last-child {
margin-bottom: 0;
}
#talkList li img {
width: auto;
max-width: 100%;
}
#motto {
padding-bottom: 20px;
border: 2px solid #00334e;
}
#motto h3 {
margin-bottom: 20px!important;
padding: 15px 20px;
text-align: left!important;
background-color: #00334e;
color: #fff!important;
font-size: 1.4em;
font-weight: bold;
}
#motto dl {
width: 96%;
margin: auto;
padding: 10px 0;
clear: both;
overflow: hidden;
border-bottom: 2px dashed #00334e;
}
#motto dl:last-of-type {
border-bottom: 0 none;
}
#motto dl dt {
width: 20%;
float: left;
display: flex;
padding-top: 5px;
padding-bottom: 5px;
}
#motto dl dt img {
width: auto;
max-width: 100%;
}
#motto dl dd {
width: 77%;
float: right;
}

@media (max-width: 768px) {
  #motto {
  width: 90%!important;
  margin: auto!important;
  padding-bottom: 10px;
  }
  #motto h3 {
  margin-bottom: 10px!important;
  }
  #motto dl {
  width: 90%;
  padding: 10px 0;
  }
  #motto dl dt {
  width: 40%;
  display: inherit;
  }
  #motto dl dd {
  width: 55%;
  float: right;
  }
}
/* ------------------------------------------------------------------------------------------ 座談会*/
h2#t_mainVisual img {
width: auto;
max-width: 100%;
}
#member {
}
#member h4 {
margin-bottom: 30px!important;
text-align: center;
}
#member h4 img {
width: 30%;
}
#member ul {
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: center;
flex-wrap: wrap;
}
#member ul li {
width: 49%;
margin-bottom: 20px;
display: flex;
}
#member ul li figure {
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: center;
width: 100%;
}
#member ul li figure img {
width: auto;
min-width: 30%!important;
height: auto;
max-height: 300px;
overflow: hidden;
object-fit: cover;
object-position: center top;
}

#member ul li figure figcaption {
width: 45%;
padding: 25px 0 25px 20px;
background-color: #0068b2;
color: #fff!important;
}
#member ul li figure figcaption h5 {
padding-left: 10px;
border-left: 3px solid #fff!important;
border-bottom: 0 none!important;
color: #fff!important;
font-size: 1.6em!important;
}
#member ul li figure figcaption h5 small {
margin-top: 20px;
display: block;
font-size: 0.7em;
line-height: 1.5em;
}
#member ul li figure figcaption p {
font-size: 1em;
line-height: 1.3em!important;
}
#member ul li figure figcaption p span {
width: 85%;
margin-bottom: 15px;
padding: 5px;
display: block;
background-color: #fff;
color: #0068b2;
font-size: 1.1em;
font-weight: bold;
}
.question h6 {
margin-bottom: 50px;
padding: 25px 10px;
background-color: #0068b2;
font-size: 1.4em!important;
color: #fff!important;
}
.question h6:before {
content: "";
width: 50px;
height: 50px;
margin-right: 10px;
display: block;
float: left;
position: relative;
top: -10px;
background-image: url(/application/themes/yahagi_theme/images/talk/q.png);
background-repeat: no-repeat;
background-pdlosition: center;
background-size: contain;
}
.question dl.picL, .question dl.picR {
margin-bottom: 40px;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
justify-content: space-between;
}
.question dl.picL dt, .question dl.picR dd {
width: 18%;
}
.question dl.picL dt img, .question dl.picR dd img {
width: 100%;
height: 150px;
overflow: hidden;
object-fit: cover;
object-position: center top;
}
@media all and (-ms-high-contrast: none){
  .question dl.picL dt img, .question dl.picR dd img {
  height: auto!important;
  }
}
.question dl.picL dt span, .question dl.picR dd span {
margin: auto;
text-align: center;
display: block;
font-size: 1.1em;
line-height: 1.5em;
}
.question dl.picL dd, .question dl.picR dt {
width: 78%;
position: relative;
}
.question dl.picL dd p, .question dl.picR dt p {
padding: 20px 30px;
background-color: #dcf1f8;
font-size: 1.1em;
}
.question dl.picL dd::before {
content: '';
position: absolute;
display: block;
width: 0;
height: 0;
left: -15px;
top: 20px;
border-right: 15px solid #dcf1f8;
border-top: 15px solid transparent;
border-bottom: 15px solid transparent;
}
.question dl.picR dt::before {
content: '';
position: absolute;
display: block;
width: 0;
height: 0;
right: -15px;
top: 20px;
border-left: 15px solid #dcf1f8;
border-top: 15px solid transparent;
border-bottom: 15px solid transparent;
}
.question figure {
margin-top: 50px;
}
.question figure img {
width: auto;
max-width: 100%;
}

@media (max-width: 768px) {
  h2#t_mainVisual {
  padding-top: 30px!important;
  }
  #member h4 img {
  width: 50%;
  }
  #member ul li {
  width: 90%;
  margin: 0 auto 20px auto;
  }
  #member ul li figure img {
  max-height: 230px;
  }
  #member ul li figure figcaption {
  width: 60%;
  }
  #member ul li figure figcaption h5 {
  font-size: 1.3em!important;
  }
  #member ul li figure figcaption h5 small {
  margin-top: 10px;
  }
  #member ul li figure figcaption p {
  font-size: 0.8em;
  line-height: 1.5em;
  }
  #member ul li:not(:target) {
  width: 48%!important;
  height: auto!important;
  }
  .question h6 {
  font-size: 1.2em!important;
  }
  .question dl.picL, .question dl.picR {
  width: 90%;
  margin: auto auto 30px auto;
  }
  .question dl.picL dt, .question dl.picR dd {
  width: 20%;
  }
  .question dl.picL dt img, .question dl.picR dd img {
  height: 120px;
  }
  .question dl.picL dt img:not(:target) {
  height: auto;
  }
  .question dl.picR dd img:not(:target) {
  height: auto;
  }
  .question dl.picL dd, .question dl.picR dt {
  width: 70%;
  }
  .question dl.picL dd p, .question dl.picR dt p {
  padding: 20px;
  font-size: 0.9em;
    line-height: 1.5em;
  }
}
@media (max-width: 659px) {
  .question dl.picL dt img, .question dl.picR dd img {
  height: 90px;
  }
  #member ul li:not(:target) {
  width: 90%!important;
  height: auto;
  }
}
/* ------------------------------------------------------------------------------------------ 採用情報*/
.recruitIndex, .recruitContents {
margin-bottom: 80px;
}
.recruitIndex #recruitMenu {
clear: both;
overflow: hidden;
}
.recruitIndex #recruitMenu > div {
text-align: center;
background-position: center 50px;
background-repeat: no-repeat;
}
.recruitIndex #recruitMenu #recruit01 {
width: 99%;
margin: auto 0 40px 0;
border: 3px double #00334e;
background-image: url(/application/themes/yahagi_theme/images/recruit/i_application.png);
}
.recruitIndex #recruitMenu #recruit02 {
width: 47%;
margin: auto 0 40px 0;
float: left;
border: 3px double #00334e;
background-image: url(/application/themes/yahagi_theme/images/recruit/i_education.png);
}
.recruitIndex #recruitMenu #recruit03 {
width: 47%;
margin: auto 0 40px 0;
float: right;
border: 3px double #00334e;
background-image: url(/application/themes/yahagi_theme/images/recruit/i_welfare.png);
}
.recruitIndex #recruitMenu #recruit04 {
width: 47%;
margin: auto 0 40px 0;
float: left;
border: 3px double #00334e;
background-image: url(/application/themes/yahagi_theme/images/recruit/i_faq.png);
}
.recruitIndex #recruitMenu #recruit05 {
width: 47%;
margin: auto 0 40px 0;
float: right;
border: 3px double #00334e;
background-image: url(/application/themes/yahagi_theme/images/recruit/i_contact.png);
}
.recruitIndex #recruitMenu #recruit06 {
width: 100%;
margin: auto;
border: 0 none;
}
.recruitIndex #recruitMenu #recruit06 img {
width: 100%;
}
.recruitIndex #recruitMenu h3 {
padding: 130px 0 10px 0;
font-size: 1.3em;
font-weight: 600;
letter-spacing: 0.1em;
color: #00334e;
}
.recruitIndex #recruitMenu a:hover h3 {
opacity: 0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
transition: all 0.3s ease;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
}
#subList {
margin-bottom: 15px;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: center;
}
.accordion {
width: 200px!important;
margin: 0 10px!important;
}
.accordion p, .accordion p a {
padding-top: 10px;
cursor: pointer;
color: #0068b2;
text-align: left;
clear: both;
overflow: hidden;
}
.accordion p span:after {
content: "";
width: 50px;
height: 50px;
display: block;
float: right;
position: relative;
top: -10px;
right: 45px;/*20190124追加*/
background-image: url(/application/themes/yahagi_theme/images/recruit/list.png);
background-repeat: no-repeat;
background-position: right center;
background-size: contain;
}
.accordion p span.open:after {
transform: rotate(90deg);
}
.accordion ul {
height: auto;
margin: 0 0 10px 0;
padding: 0 0 0 10px;
border-top: 1px solid #ccc;
text-align: left;
display: none;
}
.accordion ul li {
margin: 0;
padding: 0;
display: block;
}
.accordion ul li:before {
content: "●";
margin-right: 10px;
}

@media (max-width: 768px) {
  .recruitIndex ul#recruitMenu {
  width: 95%;
  margin: auto;
  }
  .recruitIndex ul#recruitMenu li h3 {
  letter-spacing: 0em;
  }
  .recruitIndex #recruitMenu #recruit01 {
  width: 98%;
  }
  #subList {
  display: block;
  }
  .accordion {
  margin: auto!important;
  }
  .accordion p span:after {
  content: "";
  width: 30px;
  height: 30px;
  top: 0;
  }
  .accordion ul {
  padding: 0;
  }
}
.recruitContents h3 {
margin-bottom: 30px;
text-align: center;
letter-spacing: 0.05em;
font-size: 1.9em!important;
color: #0068b2!important;
}
.recruitContents ul#recruitPageMenu {
width: 90%;
margin: auto;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: center;
}
.recruitContents ul#recruitPageMenu li {
width: 20%;
text-align: center;
color: #00334e;
font-size: 1.2em;
}
.recruitContents ul#recruitPageMenu li img {
margin: auto;
display: block;
}
.recruitContents ul#recruitPageMenu li .archive {
color: #0068b2;
border-bottom: 2px solid #0068b2;
}
.recruitContents ul#recruitPageMenu li a {
color: #0068b2!important;
}
.recruitContents ul#recruitPageMenu li ol {
margin-top: 10px;
}
.recruitContents ul#recruitPageMenu li ol li {
width: 100%!important;
margin: auto 20px;
padding-top: 0!important;
background: none!important;
text-align: left;
font-size: 0.8em;
}
.recruitContents ul#recruitPageMenu li ol li:before {
content: "";
width: 5px;
height: 5px;
margin-right: 10px;
display: block;
float: left;
position: relative;
top: 12px;
border: 3px solid;
border-color: #00334e #00334e transparent transparent;
transform: rotate(45deg);
}

@media (max-width: 768px) {
  .recruitContents ul#recruitPageMenu {
  flex-wrap: wrap;
  }
  .recruitContents ul#recruitPageMenu li {
  width: 33%;
  margin-bottom: 15px;
  padding-top: 50px;
  text-align: center;
  font-size: 1.0em;
  }
  .recruitContents ul#recruitPageMenu li ol {
  /*display: none;*/
  }
}
#requirementsList ul {
margin: 0;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
text-align: center;
}
#requirementsList ul li {
width: 32%;
border: 1px solid #0068b2;
}
#requirementsList ul li a {
width: 100%;
padding: 70px 0;
display: block;
}
.recruitContents #educationList {
}
#educationList ul {
margin: 0;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
#educationList ul.tright {
flex-direction: row-reverse!important;
}
#educationList ul li {
width: 50%;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
#educationList ul li img {
width: 100%;
vertical-align: bottom;
line-height: 0;
}
#educationList ul li h4 {
margin-bottom: 30px!important;
font-size: 1.3em!important;
color: #fff!important;
clear: both;
overflow: hidden;
}
#educationList ul li h4 span {
width: 15%;
margin-right: 20px;
padding-right: 20px;
display: block;
float: left;
border-right: 3px solid #fff;
font-size: 1.8em!important;
}
#educationList ul li:nth-child(odd) {
padding: 50px 30px 30px 30px;
background-color: #0068b2;
color: #fff;
}

@media (max-width: 768px) {
  #educationList ul.tright {
  flex-direction: column!important;
  }
  #educationList ul li {
  width: 100%;
  }
}
.recruitContents #welfareList {
}
#welfareList ul {
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
#welfareList ul.tright {
flex-direction: row-reverse!important;
}
#welfareList ul li {
width: 50%;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
#welfareList ul li img {
width: 100%;
vertical-align: bottom;
line-height: 0;
}
#welfareList ul li h4 {
margin-bottom: 30px;
text-align: center;
font-size: 1.5em!important;
color: #0068b2!important;
}
#welfareList ul li p {
margin-bottom: 15px;
}
#welfareList ul li em {
margin-bottom: 5px!important;
padding: 3px 5px;
display: table;
background-color: #0068b2;
color: #fff!important;
font-size: 1em!important;
letter-spacing: 0.05em;
}
#welfareList ul li:nth-child(odd) {
padding: 50px 30px 30px 30px;
background-color: #cae9f4;
color: #00334e;
}

@media (max-width: 768px) {
  #welfareList ul.tright {
  flex-direction: column!important;
  }
  #welfareList ul li {
  width: 100%;
  font-size: 0.9em;
  }
}
.recruitContents #faqList {
width: 100%;
margin: 150px 0 15px 0!important;
padding: 100px 0 50px 0!important;
background-color: #cae9f4;
}
#faqList h3 {
margin: -200px 0 40px 0!important;
}
#faqList h3 img {
width: auto!important;
max-width: 100%;
}
#faqList dl {
width: 90%;
margin: 0 auto 20px auto;
clear: both;
overflow: hidden;
background: #fff;
}
#faqList dl dt {
padding: 20px 0;
cursor: pointer;
}
#faqList dl dt span {
margin: -20px 20px 0 0;
padding: 20px;
display: block;
float: left;
background-color: #00334e;
color: #fff;
font-size: 1.3em;
}
#faqList dl dt small {
width: 83%;
display: block;
float: left;
}
#faqList dl dt:after {
content: "";
width: 34px;
height: 34px;
display: block;
float: right;
position: relative;
right: 10px;
 top: -2px;
background-image: url(/application/themes/yahagi_theme/images/recruit/faq_open.png);
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}
#faqList dl dt.open:after {
content: "";
width: 34px;
height: 34px;
display: block;
float: right;
position: relative;
right: 10px;
 top: -2px;
background-image: url(/application/themes/yahagi_theme/images/recruit/faq_close.png);
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}
#faqList dl dd {
clear: both;
background: #0068b2;
padding: 20px;
display: none;
color: #fff;
clear: both;
overflow: hidden;
}
#faqList dl dd span {
margin: 0;
padding: 10px 20px;
display: block;
float: left;
border: 1px solid #fff;
color: #fff;
font-size: 1.3em;
}
#faqList dl dd small {
width: 90%;
display: block;
float: right;
}

@media (max-width: 768px) {
  .recruitContents #faqList {
  padding: 130px 0 20px 0!important;
  }
  #faqList h3 {
  margin: -150px 0 40px 0;
  }
  #faqList dl dt small {
  width: 60%;
  margin-top: -13px;
  }
  #faqList dl dd small {
  width: 78%;
  }
  #faqList dl dt:after {
  top:-5px;
  }
  #faqList dl dt.open:after {
  top:-5px;
  }
}
#recruitMessage {
}
#recruitMessage ul#messageVisual {
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: space-between;
}
ul#messageVisual li:first-child {
width: 55%;
}
ul#messageVisual li:last-child {
width: 40%;
}
ul#messageVisual li img {
width: 100%;
}
ul#messageVisual li h3 {
padding: 20px 15px;
background-color: #00334e;
text-align: center;
color: #fff!important;
}
ul#messageVisual li h4 {
margin-bottom: 30px;
text-align: center;
color: #00334e;
font-size: 1.5em;
}
ul#messageVisual li p {
text-align: center;
font-size: 1.3em;
}
ul#messageVisual li p span {
margin-right: 10px;
font-size: 0.8em;
}
#recruitMessage article {
margin: 20px auto!important;
}
#recruitMessage h5 {
margin: 40px 0 20px 0!important;
padding: 15px 10px!important;
background-color: #0068b2;
color: #fff!important;
font-size: 1.3em;
border-bottom: 0 none!important;
}
#recruitMessage h5:before {
content: "";
width: 45px;
height: 45px;
margin-right: 10px;
display: block;
float: left;
position: relative;
top: -8px;
background-image: url(/application/themes/yahagi_theme/images/recruit/messageh5.png);
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}
#recruitMessage ul#mList {
width: 90%;
margin: 10 auto;
padding: 0 30px;
font-size: 1.1em;
}
#recruitMessage ul#mList li:before {
content: "●";
margin-right: 10px;
color: #0068b2;
}
#recruitMessage article p {
margin-bottom: -10px;
}

@media (max-width: 768px) {
  #recruitMessage ul#messageVisual {
  display: block;
  }
  #recruitMessage ul#messageVisual {
  margin-top: -50px;
  }
  #recruitMessage ul#messageVisual li:first-child, #recruitMessage ul#messageVisual li:last-child {
  width: 100%;
  }
  #recruitMessage article p {
  width: 100%!important;
  padding: 0;
  }
  #recruitMessage ul#mList {
  padding: 0 0 0 20px;
  font-size: 1.0em;
  }
}
#requirements {
margin-bottom: 50px;
}
#requirements h3 {
margin-bottom: 5px!important;
padding-bottom: 10px;
border-bottom: 1px solid #888;
text-align: left!important;
font-weight: 600!important;
}
#requirements dl {
padding: 10px 0;
clear: both;
overflow: hidden;
border-bottom: 1px solid #888;
display: flex;
align-items: center;
}
#requirements dt {
width: 25%;
color: #505050;
font-size: 1.1em;
font-weight: 600;
}
#requirements dd {
width: 70%;
padding-top: 10px!important;
}
#requirements dd h5 {
margin: 0 0 10px 0!important;
padding: 0 10px 10px 10px;
display: table;
background-color: #d6e1e8;
border-bottom: 0 none!important;
color: #00334e!important;
font-size: 1.1em!important;
font-weight: normal!important;
}
#requirements dd p {
margin: 0 15px 15px 15px;
}
#process {
width: 100%;
padding: 70px 0;
background-color: #cae9f4;
}
#process h3 {
color: #00334e;
font-size: 2.5em!important;
font-weight: bold!important;
}
#process ul {
min-height: 100px!important;
margin-bottom: 20px;
padding: 20px;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: space-between;
align-items: center;
background: #fff;
}
#process ul li:first-child {
width: 35%;
color: #00334e;
font-size: 1.4em;
font-weight: 600!important;
}
#process ul li:first-child span {
margin-right: 20px;
padding: 40px 20px 40px 0;
border-right: 3px solid #00334e;
font-size: 1.1em;
}
#process ul li:last-child {
width: 60%;
}
#process .arrow {
width: 0;
height: 0;
margin: auto;
text-align: center;
border: 30px solid transparent;
border-top: 30px solid #fff;
}
#process article {
width: 100%;
padding: 40px 0;
background-color: #8d8d8d;
text-align: center;
color: #fff;
font-size: 1.4em;
}

@media (max-width: 768px) {
  #process {
  padding: 50px 0 10px 0;
  }
  #requirements h3 {
  padding: 0 10px 10px 10px;
  }
  #requirements dl {
  border-bottom: 0 none;
  display: block;
  }
  #requirements dt {
  width: 100%!important;
  margin-bottom: 20px;
  padding: 7px 5px;
  color: #fff;
  background-color: #0068b2;
  }
  #requirements dd {
  width: 100%!important;
  }
  #process ul {
  margin: auto;
  display: block;
  }
  #process ul li:first-child {
  width: 100%;
  margin: 10px 0 20px 0;
  }
  #process ul li:last-child {
  width: 100%;
  }
  #process ul li:first-child span {
  padding: 10px 20px 10px 0;
  }
  #process .arrow {
  margin: 20px auto 0 auto;
  }
  #process article {
  width: 100%!important;
  margin: auto;
  }
}
/* ------------------------------------------------------------------------------------------ 事業部紹介*/
.worksnav {
height: 300px;
position: fixed;
top: 30%;
bottom: 0;
z-index: 2!important;
margin: auto;
right: 50px;
}
@media screen and (orientation: landscape) and (max-width: 1024px) {
  .worksnav {
  display: none;
  }
}
@media (max-width: 768px) {
  .worksnav {
  right: 5px;
  }
}
.worksnav li {
cursor: pointer;
margin: 20px 0;
}
.worksnav li a {
width: 10px;
height: 10px;
display: block;
background: #333;
border-radius: 50%;
}
.worksnav li a:hover {
background: #888;
}
.worksnav li.active a {
background: #0068b2;
}
.work1, .work2, .work3, .work4, .work5 {
width: 100%!important;
height: 100vh!important;
margin: 0 auto!important;
padding: 0!important;
}
.work2, .work3, .work4, .work5 {
display: flex;
justify-content: center;
align-items: center;
background-position: 0;
background-repeat: no-repeat;
background-size: cover!important;
}
@media all and (-ms-high-contrast: none) {
  .work2, .work3, .work4, .work5 {
  padding-top: 15%!important;
  display: block;
  }
}
.work1 h3 {
margin-bottom: 80px!important;
text-align: center;
color: #000!important;
font-size: 2em!important;
}
.work1 ul {
width: 700px;
margin: auto;
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
align-items: center;
justify-content: space-between;
}
.work1 ul li:first-child {
width: 35%;
}
.work1 ul li:last-child {
width: 55%;
}
.work1 ul li img {
width: auto;
max-width: 100%;
}
.work2 {
background-image: url(/application/themes/yahagi_theme/images/works/back2.png);
}
.work3 {
background-image: url(/application/themes/yahagi_theme/images/works/back3_2.png);
}
.work4 {
background-image: url(/application/themes/yahagi_theme/images/works/back4.png);
}
.work5 {
background-image: url(/application/themes/yahagi_theme/images/works/back5.jpg);
}
.work2 h3, .work3 h3, .work4 h3, .work5 h3 {
margin: 0!important;
padding: 20px 40px!important;
position: relative;
top: -110px;
left: -18px;
display: table;
background-color: #253544;
color: #fff!important;
font-size: 2.1em!important;
}
.workText {
width: 700px;
margin: 0 auto!important;
padding: 20px;
background-color: rgba(255,255,255,0.70);
}
.workText h4 {
margin: -60px 0 5px 0;
padding-bottom: 10px;
border-bottom: 2px solid #0068b2;
font-size: 1.2em;
}
p.scroll {
display: block;
position: relative;
font-size: 0.9em;
}
p.scroll a {
width: 45px;
padding: 30px;
text-align: center;
display: block;
color: #000;
background-color: rgba(255,255,255,0.70);
border-radius: 50%;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
position: absolute;
top: 50%;
left: 50%;
transform: translateY(30%) translateX(-50%);
 -webkit- transform: translateY(30%) translateX(-50%);
}
p.scroll a span {
width: 15px;
height: 15px;
margin: auto;
display: block;
border: 2px solid;
border-color: transparent transparent #565656 #565656;
transform: rotate(-45deg);
}

@media (max-width: 768px) {
  .nav {
  display: none;
  }
  .work1 h3 {
  margin-bottom: 20px!important;
  font-size: 1.3em!important;
  }
  .work1 ul {
  width: auto!important;
  display: block;
  }
  .work1 ul li:first-child, .work1 ul li:last-child {
  width: 90%;
  margin: auto auto 15px auto;
  margin: auto auto 15px auto;
  }
  .work1 ul li img {
  width: 20%!important;
  margin: auto;
  display: block;
  }
  .work1 h4 {
  margin: auto;
  text-align: center;
  font-size: 1.2em!important;
  }
  .work2 h3, .work3 h3, .work4 h3, .work5 h3 {
  padding: 10px 20px!important;
  top: -10px;
  left: 0;
  font-size: 1.3em!important;
  }
  .work2 {
  background-image: url(/application/themes/yahagi_theme/images/works/back2_sp.png);
  }
  .work3 {
  background-image: url(/application/themes/yahagi_theme/images/works/back3_2_sp.png);
  }
  .work4 {
  background-image: url(/application/themes/yahagi_theme/images/works/back4_sp.png);
  }
  .work5 {
  background-image: url(/application/themes/yahagi_theme/images/works/back5_sp.png);
  }
  .workText {
  width: 70%!important;
  font-size: 0.8em!important;
  line-height: 1.5em;
  }
  .workText h4 {
  margin: 0 0 10px 0;
  font-size: 1.3em!important;
  line-height: 1.5em!important;
  }
  p.scroll {
  display: none;
  }
}
@media screen and (orientation: landscape) and (max-width: 1024px) {
  .work1 ul {
  width: 80%!important;
  margin: auto;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  }
  .work1 ul li img {
  width: 40%!important;
  }
  .work1 ul li:first-child, .work1 ul li:last-child {
    font-size: 0.8em!important;
    line-height: 1.5em;
  }
}
/* ------------------------------------------------------------------------------------------ 360°職場見学*/
#tour {
margin-top: 150px!important;
}
#tour h2 {
margin: 30px auto;
text-align: center;
}
#tour h2 img {
width: 50%;
}
#tour h3 {
margin-bottom: 30px;
text-align: center;
}
#tour p {
margin-bottom: 30px;
text-align: center;
}
#tour h3 img {
width: 70%;
}
#tour ul {
display: -webkit-box;
display: -moz-box;
display: -webkit-flexbox;
display: -moz-flexbox;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-flex;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
#tour ul li {
width: 31%;
margin-bottom: 20px;
overflow: hidden;
text-align:center;
}
#tour ul li a {
width: 100%!important;
padding: 148px 0!important;
display: block!important;
background-position: center;
background-repeat: no-repeat;
background-size: cover;
}
#tour ul li a:hover {
opacity: 1;
filter: alpha(opacity=100);
-ms-filter: "alpha(opacity=100)";
}
#tour ul li:first-child img {
width: 100%;
}
#tour ul li:nth-child(2) a {
background-image: url(/application/themes/yahagi_theme/images/tour/col_2.png);
}
#tour ul li:nth-child(2) a:hover {
//background-image: url(/application/themes/yahagi_theme/images/tour/col_2_ov.png);
}
#tour ul li:nth-child(3) a {
background-image: url(/application/themes/yahagi_theme/images/tour/col_3.png);
}
#tour ul li:nth-child(3) a:hover {
//background-image: url(/application/themes/yahagi_theme/images/tour/col_3_ov.png);
}
#tour ul li:nth-child(4) a {
background-image: url(/application/themes/yahagi_theme/images/tour/col_4_2.png);
}
#tour ul li:nth-child(4) a:hover {
//background-image: url(/application/themes/yahagi_theme/images/tour/col_4_ov.png);
}
#tour ul li:nth-child(5) a {
background-image: url(/application/themes/yahagi_theme/images/tour/col_5.png);
}
#tour ul li:nth-child(5) a:hover {
//background-image: url(/application/themes/yahagi_theme/images/tour/col_5_ov.png);
}
#tour ul li:last-child a {
background-image: url(/application/themes/yahagi_theme/images/tour/col_6.png);
}
#tour ul li:last-child a:hover {
//background-image: url(/application/themes/yahagi_theme/images/tour/col_6_ov.png);
}
#tour ul li span {
//display: none;
text-align:center;
}

@media (max-width: 768px) {
  #tour {
  margin-top: 100px!important;
  }
  #tour h2 img {
  width: 70%!important;
  }
  #tour h3 img {
  width: 90%!important;
  }
  #tour ul {
  width: 90%;
  margin: auto;
  }
  #tour ul li {
  width: 48%;
  }
  #tour ul li:first-child img {
  padding: 0!important;
  }
  #tour ul li a {
  padding: 165px 0!important;
  }
  #tour ul li span {
  margin: auto;
  display: block;
  text-align: center;
  }
  #tour ul li span.pcshow{
    display:none;
  }
}

@media (max-width: 640px) {
  #tour ul li a {
  padding: 80px 0!important;
  }
}
/* ------------------------------------------------------------------------------------------ お問い合わせ*/
#mailForm {
margin-bottom: 50px;
}
#mailForm input[type="text"], #mailForm input[type="email"] {
width: 100%;
margin: 10px 0 20px 0;
padding: 10px 5px;
display: block;
border: 1px solid #ccc;
border-radius: 3px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
}
#mailForm .field-radios, #mailForm .checkbox {
margin: 10px 0 20px 0;
}
#mailForm textarea {
width: 100%;
height: 200px;
margin: 10px 0 20px 0;
padding: 10px 5px;
display: block;
border: 1px solid #ccc;
border-radius: 3px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
}
.form-group {
}
.control-label {
font-size: 1.1em;
font-weight: 600;
}
.text-muted {
margin-left: 10px;
padding: 0 5px;
background-color: #aa0000!important;
color: #fff!important;
}
input[type="submit"] {
cursor: pointer!important;
}
.btn-primary {
width: 100%;
margin: 40px auto 0 auto;
padding: 20px 0;
display: block;
border: 0 none;
background-color: #0068b2;
color: #fff;
font-size: 1.3em!important;
}

@media (max-width: 768px) {
  #mailForm {
  width: 90%;
  margin: auto;
  }
  #mailForm input[type="text"], #mailForm input[type="email"], #mailForm textarea {
  width: 95%;
  margin: 10px auto 20px auto;
  }
  .plr20 {
  padding: 0 20px;
  }
}

/*
/*-------------------------------------------------
社員を知る policyの下にコーポレートサイトへのリンクを追加
---------------------------------------------------*/
#main.concreteContents section#site_links {
	margin-top: 100px;
}
/*画像の縦横比率を保つ*/
#site_links img{
	width: auto;
	max-width: 100%;
	height: auto;
}
@media (max-width: 768px){
	#site_links article li {
		margin-bottom: 50px;
    	text-align: center;
	}
}


/* 2019/01/10 追記ここから */
/* ------------------------------------------------------------------------------------------ インターンシップ情報*/
.intern .main-intern {
    overflow:hidden;
}
.intern .main-intern .title-area {
    float: left;
    width:40%;
    height:550px;
    background:#0068b2;
}
.intern .main-intern .image-area {
    float: right;
    width:60%;
    height:550px;
    background-image: url(/application/themes/yahagi_theme/images/intern/intern_main.jpg);
    background-size: cover;
    background-position: right;
}
h2.internTit {
    position: relative;
    top: 190px;
    font-size:2.2em !important;
}
.intern ul.entry-area {
    overflow:hidden;
}
.intern ul.entry-area li {
    float: left;
    width:50%;
    text-align:center;
}
.intern ul.entry-area li .beginnerBTN {
    position:relative;
    background-image: url(/application/themes/yahagi_theme/images/intern/circle_black.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 200px;
    height: 200px;
    margin: 0 auto;
}
.intern ul.entry-area li .beginnerBTN a{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    color:#FFF;
}
.intern ul.entry-area li .beginnerBTN a:link {
    color:#FFF;
    text-decoration:none;
}
.intern ul.entry-area li .beginnerBTN a:visited {
    color:#FFF;
    text-decoration:none;
}
.intern ul.entry-area li .beginnerBTN a:hover{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    color:#FFF;
    background-color: #FFF;
    opacity: 0.9;
    filter: alpha(opacity=90);
    -ms-filter: "alpha(opacity=90)";
    -webkit-transition: 03s ;
    transition: 0.3s ;
}
.intern ul.entry-area li .beginnerBTN a:hover:after {
    content: '';
    position:  absolute;
    height:  100%;
    width:  100%;
    background-image: url(/application/themes/yahagi_theme/images/intern/circle_black.png);
    left:  0;
    top: 0;
    z-index:  -1;
    opacity:  0.8;
    background-size:  contain;/*coverから変更　スマホの時クリックの後表示が崩れる不具合修正*/
    background-repeat: no-repeat;　/*追加*/
    background-position: center;  /*追加　20210428*/
}
.intern ul.entry-area li .memberBTN {
    position:relative;
    background-image: url(/application/themes/yahagi_theme/images/intern/circle_orange.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 200px;
    height: 200px;
    margin: 0 auto;
}
.intern ul.entry-area li .memberBTN a{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    color:#FFF;
}
.intern ul.entry-area li .memberBTN a:link {
    color:#FFF;
    text-decoration:none;
}
.intern ul.entry-area li .memberBTN a:visited {
    color:#FFF;
    text-decoration:none;
}
.intern ul.entry-area li .memberBTN a:hover{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    color:#FFF;
    background-color: #FFF;
    opacity: 0.9;
    filter: alpha(opacity=90);
    -ms-filter: "alpha(opacity=90)";
    -webkit-transition: 03s ;
    transition: 0.3s ;
}
.intern ul.entry-area li .memberBTN a:hover:after {
    content: '';
    position:  absolute;
    height:  100%;
    width:  100%;
    background-image: url(/application/themes/yahagi_theme/images/intern/circle_orange.png);
    left:  0;
    top: 0;
    z-index:  -1;
    opacity:  0.8;
    background-size:  contain;/*coverから変更　スマホの時クリックの後表示が崩れる不具合修正*/
    background-repeat: no-repeat;　/*追加*/
    background-position: center;  /*追加　20210428*/
}
.intern ul.entry-area .title {
    font-size:1.5em;
    color:#FFF;
    font-weight: bold;
    position: relative;
    top: 25%;
}
.intern ul.entry-area .title small {
    font-size:0.5em;
    line-height:160%;
    display: block;
    padding-top:15px;
    font-weight: normal;
    letter-spacing:0.1em;
}
.intern ul.entry-area .title .arrow{
    position: relative;
    display: inline-block;
    padding-left: 20px;
}
.intern ul.entry-area .title .arrow::before{
    content: '';
    width: 6px;
    height: 6px;
    border: 0px;
    border-bottom: solid 2px #FFF;
    border-right: solid 2px #FFF;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 6px;
}
.intern-bg {
    line-height:0;
}
.intern-bg img {
    width:100%;
}
.intern-flow-area {
    padding:50px 0;
    background:#dff1f1;
}
.intern-flow-area .flow-title {
    text-align: center;
    font-size: 1.8em;
    color:#00334e;
    font-weight:bold;
    padding-bottom:50px;
}
.intern-flow-area ul.intern-flow {
    width:800px;
    margin:0 auto 40px;
    overflow:hidden;
}
.intern-flow-area ul.intern-flow li {
    float:left;
    height:140px;
    text-align:center;
    color:#FFF;
}
.intern-flow-area ul.intern-flow li.item01 {
    width:210px;
    background:#f0514d;
    border-radius: 10px;
    position: relative;
}
.intern-flow-area ul.intern-flow li.item02 {
    width:210px;
    background:#5fc2c5;
    border-radius: 10px;
    position: relative;
}
.intern-flow-area ul.intern-flow li.item-arrow {
    width:39px;
    margin:0 23px;
    background-image: url(/application/themes/yahagi_theme/images/intern/intern_arrow.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}
.intern-flow-area ul.intern-flow .title {
    width:90%;
    font-size:1.2em;
    color:#FFF;
    font-weight: bold;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
}
.intern-flow-area ul.intern-flow .title small {
    font-size:0.6em;
    line-height:160%;
    display: block;
    padding-top:10px;
    font-weight: normal;
    letter-spacing:0.1em;
}
.flow-description {
    width:700px;
    margin:0 auto;
}
.flow-description .mark {
    float:left;
    font-size: 2.0em;
    font-weight: bold;
    width:20px;
    height: 60px;
}
.flow-description .txt {
    font-size: 1.2em;
    font-weight: bold;
    line-height: 160%;
}

@media (max-width: 1024px) {
  .intern .main-intern .title-area {
      float: none;
      width:100%;
      height:auto;
  }
  .intern .main-intern .image-area {
      float: none;
      width:100%;
      height:480px;
  }
  h2.internTit {
      top: 0;
      font-size:1.8em !important;
      margin-bottom:0 !important;
  }
  .intern-flow-area ul.intern-flow {
      width:90%;
  }
  .intern-flow-area ul.intern-flow li.item01 {
      width:26%;
  }
  .intern-flow-area ul.intern-flow li.item02 {
      width:26%;
  }
  .intern-flow-area ul.intern-flow li.item-arrow {
      width:5%;
      margin:0 3%;
  }
}

@media (max-width: 768px) {
  .intern .main-intern .title-area {
      float: none;
      width:100%;
      height:auto;
  }
  .intern .main-intern .image-area {
      float: none;
      width:100%;
      height:420px;
  }
  .intern-flow-area ul.intern-flow {
      width: 60%;
  }
  .intern-flow-area ul.intern-flow li {
      float: none;
      height: 210px;
  }
  .intern-flow-area ul.intern-flow li.item01 {
      width: 100%;
      left: 50%;
      transform: translateX(-50%);
      -webkit- transform: translateX(-50%);
  }
  .intern-flow-area ul.intern-flow li.item02 {
      width: 100%;
      left: 50%;
      transform: translateX(-50%);
      -webkit- transform: translateX(-50%);
  }
  .intern-flow-area ul.intern-flow li.item-arrow {
      width: 10%;
      margin: 0 auto;
      top: 50%;
      transform: translateX(-50%);
      position: relative;
      transform: rotate(90deg);
      -webkit- transform: rotate(90deg);
      height: 80px;
  }
  .intern-flow-area ul.intern-flow .title {
      font-size: 1.5em;
      line-height: 160%;
  }
  .flow-description {
      width:90%;
  }
  .flow-description .mark {
      font-size: 2.5em;
      height: 140px;
  }
  .flow-description .txt {
      font-size: 1.1em;/*20190201 1.4から1.1に変更*/
      font-weight: bold;
  }
}

@media (max-width: 640px) {
  .intern .main-intern .title-area {
      height:auto;
  }
  .intern .main-intern .image-area {
      height:350px;
  }
  .intern ul.entry-area {
      width: 95%;
      margin: 0 auto;
  }
  .intern ul.entry-area li .beginnerBTN {
      width: 150px;/*20190201 160から150に変更*/
      height: 160px;
  }
  .intern ul.entry-area li .memberBTN {
      width: 150px;/*20190201 160から150に変更*/
      height: 160px;
  }
  .intern-flow-area .flow-title {
      font-size: 1.6em;
      padding:0 10px 50px;
  }
  .intern-flow-area ul.intern-flow li {
      height: 180px;
  }
}

/* ------------------------------------------------------------------------------------------ 社員紹介*/
#main.staff-top {
    background:#edf7ff;
    padding-bottom: 4px;
}
.staff-top-inner {
    max-width:1200px;
}
ul.staff-list {
    overflow:hidden;
    /* 以下20220224追加 */
    display: flex;
    flex-wrap: wrap;
}
ul.staff-list li {
    float:left;
    width:16%;
    margin-bottom:50px;
}
ul.staff-list li a:link {
    color:#5a5a5a;
    text-decoration:none;
}
ul.staff-list li a:visited {
    color:#5a5a5a;
    text-decoration:none;
}
ul.staff-list li a:hover{
    width:100%;
    height:100%;
    color:#999;
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
    -webkit-transition: 03s ;
    transition: 0.3s ;
}
.staff-item {
    background:#FFF;
    padding:10px;
    margin:0 7px;
    position: relative; /* 20220224 */
}
.staff-item img {
    width:100%;
}
.staff-tag-g {
    width:50%;
    background-image: url(/application/themes/yahagi_theme/images/staff_top/tag_g.png);
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    color:#FFF;
    position: relative;
    left: -15px;
    padding-left: 17px;
    padding-bottom: 6px;
    font-size: 1em;
}
.staff-tag-o {
    width:50%;
    background-image: url(/application/themes/yahagi_theme/images/staff_top/tag_o.png);
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    color:#FFF;
    position: relative;
    left: -15px;
    padding-left: 17px;
    padding-bottom: 6px;
    font-size: 1em;
}
.staff-tag-p {
    width:50%;
    background-image: url(/application/themes/yahagi_theme/images/staff_top/tag_p.png);
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    color:#FFF;
    position: relative;
    left: -15px;
    padding-left: 17px;
    padding-bottom: 6px;
    font-size: 1em;
}
.staff-tag-b {
    width:50%;
    background-image: url(/application/themes/yahagi_theme/images/staff_top/tag_b.png);
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    color:#FFF;
    position: relative;
    left: -15px;
    padding-left: 17px;
    padding-bottom: 6px;
    font-size: 1em;
}
.staff-info {
    margin-top: -37px;
}
.staff-info .staff-year {
    text-align:right;
    font-size:0.85em;
    padding-bottom:12px;
    order:1;
}
.staff-info .staff-name {
    font-size: 1.5em;
    font-weight: bold;
    padding-bottom:10px;
    order:2;
}
.limitedarea {
    position: absolute;
    top: auto;
    bottom: -3px;
    left: 4px;
}

@media (max-width: 1024px) {
  .staff-top-inner {
      width:90% !important;
  }
  ul.staff-list li {
      width:25%;
  }
}

@media (max-width: 768px) {
  #main.staff-top {
    padding-bottom: 34px;
  }
  .staff-top-inner {
      width:90%;
  }
  ul.staff-list li {
      width:33.333%;
      margin-bottom: 15px;
  }
  .staff-info {
      margin-top: 0;
      list-style:none;
      display:-webkit-box;
      display:-moz-box;
      display:-ms-flexbox;
      display:-webkit-flex;
      display:-moz-flex;
      display:flex;
      -webkit-box-lines:multiple;
      -moz-box-lines:multiple;
      -webkit-flex-wrap:wrap;
      -moz-flex-wrap:wrap;
      -ms-flex-wrap:wrap;
      flex-wrap:wrap;
      margin: 0;
      padding: 0;
  }
  .staff-tag-g {
      width: 100%;
      padding-bottom: 2px;
      font-size: 1.2em;
      height: 30px;
      margin-top: 5px;
      padding-top: 2px;
  }
  .staff-tag-o {
      width: 100%;
      padding-bottom: 2px;
      font-size: 1.2em;
      height: 30px;
      margin-top: 5px;
      padding-top: 2px;
  }
  .staff-tag-p {
      width: 100%;
      padding-bottom: 2px;
      font-size: 1.2em;
      height: 30px;
      margin-top: 5px;
      padding-top: 2px;
  }
  .staff-tag-b {
      width: 100%;
      padding-bottom: 2px;
      font-size: 1.2em;
      height: 30px;
      margin-top: 5px;
      padding-top: 2px;
  }
  .staff-info .staff-year {
      text-align:left;
      font-size:1.2em;
      padding-bottom:0;
      order:2;
  }
  .staff-info .staff-name {
      order:1;
      width:100%;
      padding-bottom: 5px;
      padding-top:10px;
  }
  .limitedarea {
      bottom: -6px;
  }
}

@media (max-width: 640px) {
  .staff-item {
      padding: 8px;
  }
  .staff-tag-g {
      width: 100%;
      font-size: 1.0em;
      height: 28px;
      margin-top: 5px;
      padding-top: 0;
  }
  .staff-tag-o {
      width: 100%;
      font-size: 1.0em;
      height: 28px;
      margin-top: 5px;
      padding-top: 0;
  }
  .staff-tag-p {
      width: 100%;
      font-size: 1.0em;
      height: 28px;
      margin-top: 5px;
      padding-top: 0;
  }
  .staff-tag-b {
      width: 100%;
      font-size: 1.0em;
      height: 28px;
      margin-top: 5px;
      padding-top: 0;
  }
  .staff-info .staff-year {
      font-size:1.0em;
  }
  .staff-info .staff-name {
      font-size:1.2em;
  }
}
@media screen and (max-width: 413px)
{
  .staff-info .staff-year {
      font-size:1.0em;
  }
  .staff-info .staff-name {
      font-size:1.0em;
  }
}
@media screen and (max-width: 320px)
{
  .staff-item {
      padding: 7px;
  }
  .staff-info .staff-year {
      font-size:0.8em;
  }
  .staff-info .staff-name {
      font-size:0.8em;
  }
}

/* ------------------------------------------------------------------------------------------ 女性の活躍*/
.woman .main-woman {
    overflow:hidden;
    margin-top: 73px; /*62pxから73pxに変更しました*/
    width: 100%;
    background:#e383a5;
}
.woman .main-woman .title-area {
    float: left;
    width:32%;
    height:auto;
}
.woman .main-woman .title-area .lead-area {
    width:100%;
    max-width: 340px;
    margin:0 auto;
    color:#FFF;
    padding:30px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.woman .main-woman .title-area .lead-area .lead {
    font-size:1.2em;
    font-weight:bold;
    margin-bottom: 15px;
}
.woman .main-woman .title-area .lead-area .txt {
    line-height: 2;
    margin-bottom: 35px;
}
.woman .main-woman .title-area .woman-logo {
    text-align: center;
}
.woman .main-woman .title-area .woman-logo img  {
    width:100%;
    max-width: 310px;
    margin-bottom: 0;
}
.woman .main-woman .image-area {
    line-height: 0;
    float: right;
    width:68%;
    height: auto;
    background-repeat: no-repeat;
    background-size: contain;
    background-position : center center;
}
.woman .main-woman .image-area img {
    line-height: 0;
    width: 100%;
    height: auto;
}
h2.womanTit {
    background: #e35486 !important;
    font-size:2.2em !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
#main.woman-bg {
    display: block;
    background: #f9efe3;
    padding-bottom: 4px;
}
.woman-inner {
    width: 960px;
}
.woman-inner li a:link {
    color:#5a5a5a;
    text-decoration:none;
}
.woman-inner li a:visited {
    color:#5a5a5a;
    text-decoration:none;
}
.woman-inner li a:hover{
    width:100%;
    height:100%;
    color:#999;
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
    -webkit-transition: 03s ;
    transition: 0.3s ;
}
ul.woman-list {
    background-image: url(/application/themes/yahagi_theme/images/woman/message.png);
    background-repeat: no-repeat;
    background-size:32%;
    background-position : left 30px;
    padding-bottom: 60px;
    overflow:hidden;
}
ul.woman-list li {
    float: left;
    width: 33.333%;
    margin-bottom: 30px;
}
ul.woman-list li.gutter {
    padding-left: 33.333%;
}
.woman-item {
    background: #FFF;
    padding: 20px;
    margin: 0 12px;
    border-radius: 10px;
    position: relative;
    top:5px;
}
.profile-tag {
    position: absolute;
    top: -5px;
    right: -5px;
    z-index: 2;
    text-align: right;
}
.profile-tag img {
    width:50%;
}
.woman-item .image {
    position: relative;
    z-index:1;
}
.woman-item .image img {
    width: 100%;
}
.woman-item .woman-name {
    font-size: 1.4em;
    font-weight: bold;
    padding-top: 7px;
    letter-spacing:1.0px;
}
.woman-item .woman-name small {
    font-size: 0.7em;
    font-weight: normal;
    color:#c9d7e1;
    display: block;
}
.woman-item .woman-year {
    font-size: 1em;
    font-weight: bold;
}
.woman-banner-inner {
    width: 760px;
    margin:0 auto;
}
.woman-banner-inner img {
    width: 100%;
}
.woman-cate01 {
    margin-bottom:40px;
}
ul.woman-cate02 {
    overflow:hidden;
}
ul.woman-cate02 li {
    width:47%;
    float:left;
}
ul.woman-cate02 li:first-child {
    padding-right:3%;
}
ul.woman-cate02 li:last-child {
    padding-left:3%;
}
ul.woman-cate02 li img {
    width:100%;
}
ul.woman-cate02 .title {
    font-size:1.3em;
    text-align: center;
    position: relative;
    top: -40px;
}
@media (max-width: 1399px) {
  h2#contentsTit.womanTit {
      font-size:1.8rem !important;
  }
  .woman .main-woman .title-area {
      width: 30%;
  }
  .woman .main-woman .image-area {
      width: 70%;
  }
  .woman .main-woman .title-area .woman-logo img {
      width: 70%;
  }
}
@media (max-width: 1279px) {
  .woman .main-woman .title-area {
      width: 30%;
  }
  h2#contentsTit.womanTit {
      font-size: 1.6em !important;
  }
  .woman .main-woman .image-area {
      width: 70%;
  }
  .woman .main-woman .title-area .lead-area {
      padding: 18px 30px;
  }
  .woman .main-woman .title-area .lead-area .lead {
      font-size:1.2em;
      font-weight:bold;
      margin-bottom: 10px;
  }
  .woman .main-woman .title-area .lead-area .txt {
      font-size: 1em;
      line-height: 2;
      margin-bottom: 20px;
  }
  .woman .main-woman .title-area .woman-logo img {
      width: 70%;
  }
}
@media (max-width: 1150px) {
  .woman .main-woman .title-area {
      width: 30%;
  }
  h2.womanTit {
      font-size: 1.4em !important;
  }
  .woman .main-woman .image-area {
      width: 70%;
  }
  .woman .main-woman .title-area .lead-area {
      padding: 18px 30px;
  }
  .woman .main-woman .title-area .lead-area .lead {
      font-size:1em;
      font-weight:bold;
      margin-bottom: 10px;
  }
  .woman .main-woman .title-area .lead-area .txt {
      font-size:0.9em;
      line-height: 2;
      margin-bottom: 15px;
  }
}

@media (max-width: 1024px) {
  .woman .main-woman .title-area {
      float: none;
      width:100%;
      height:auto;
  }
  .woman .main-woman .title-area .lead-area {
      padding: 20px 0;
  }
  .woman .main-woman .title-area .lead-area .lead {
      font-size:1.2em;
      margin-bottom: 10px;
  }
  .woman .main-woman .title-area .lead-area .txt {
      font-size: 1em;
      margin-bottom: 15px;
  }
  .woman .main-woman .image-area {
      float: none;
      width:100%;
  }
  h2.womanTit {
      top: 0;
      font-size:1.8em !important;
      margin-bottom:0 !important;
  }
  .woman-inner {
      width: 90%;
  }
  .woman-item {
      padding: 17px;
  }
  .woman-banner-inner {
      width: 85%;
  }
  ul.woman-cate02 .title {
      font-size:1.2em;
      top: -35px;
  }
}

@media (max-width: 768px) {
  .woman-inner {
      width: 90% !important;
  }
  .woman-item {
      padding: 13px;
  }
  .profile-tag img {
      width: 40%;
  }
  .woman-item .woman-name small {
      font-size: 0.6em;
  }
  .woman-item .woman-year {
      font-size: 0.9em;
  }
  .woman-banner-inner {
      width: 95%;
  }
  ul.woman-cate02 li {
      width: 100%;
      float: none;
  }
  ul.woman-cate02 li:first-child {
      padding-right: 0;
  }
  ul.woman-cate02 li:last-child {
      padding-left: 0;
  }
  ul.woman-cate02 .title {
      font-size:1.3em;
      top: -55px;
  }
}

@media (max-width: 640px) {
  ul.woman-list {
      background-size:48%;
      padding-bottom: 40px;
      display: flex;
      flex-wrap: wrap;
  }
  ul.woman-list li {
      width: 50%;
  }
  ul.woman-list li.gutter {
      padding-left: 50%;
  }
  .woman-item {
      padding: 17px;
  }
  ul.woman-cate02 .title {
      top: -45px;
  }
}

@media screen and (max-width: 413px) {
  .woman .main-woman .title-area .lead-area {
      width: 80%;
  }
  .woman .main-woman .title-area .woman-logo img {
      width: 80%;
  }
  .woman-item {
      padding: 12px;
  }
  .woman-item .woman-name {
      font-size: 1.2em;
  }
  .woman-item .woman-name small {
      font-size: 0.5em;
  }
  .woman-item .woman-year {
      font-size: 0.8em;
  }
  ul.woman-cate02 .title {
      font-size:1.1em;
      top: -35px;
  }
  .woman-cate01 {
      margin-bottom: 40px;
  }
}

/* ------------------------------------------------------------------------------------------ キャリア採用*/
#header.career {
    padding:0 !important;
}
#header nav#career {
    max-width: 900px;
    margin: 0 0 0 auto;
    line-height: 0;
    position: relative;
    top:0;
    right: 0;
}
.career-link {
    font-size: 1.2em;
    font-weight: bold;
    letter-spacing: 0.1em;
    color: #00334e;
    position: relative;
    top: -3px;
}
.visible-pc {
    display:block;
}
.visible-sp {
    display:none;
}
.contact-btn {
    position: relative;
    color:#FFF;
    background-color: #243444;
    font-size: 1.2em;
    text-align: center;
    width:220px;
    height: 64px;
    line-height: 350%;
}
.contact-btn a {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.contact-btn a:link {
    color:#FFF;
    text-decoration:none;
}
.contact-btn a:visited {
    color:#FFF;
    text-decoration:none;
}
.contact-btn a:hover{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    color:#FFF;
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
    -webkit-transition: 03s ;
    transition: 0.3s ;
}
.contact-btn img {
    width:10%;
    padding-right:25px;
}
h2.careerTit {
    background: #243444 !important;
    margin-bottom:0 !important;
    margin-top:62px !important;
}
.career-main {
    background-image: url(/application/themes/yahagi_theme/images/career/career_main.jpg);
    background-repeat: no-repeat;
    background-position : center;
    background-size : cover;
    height:450px;
    position:relative;
}
.career-main .text-area {
    width:100%;
    text-align:center;
    position:absolute;
    top: 48%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    color:#FFF;
}
.career-main .text-area .lead {
    font-size: 3em;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom:50px;
}
.career-main .text-area .txt {
    font-size: 1em;
    line-height:200%;
}
.career-bg {
    background: #edf7ff;
    margin: 0 !important;
    padding: 45px 0 !important;
}
.career-application h3 {
    font-size: 2em !important;
    font-weight: bold;
    letter-spacing: 0.1em;
    color: #00334e !important;
    text-align:center;
}
.career-inner {
    width:960px;
    margin:0 auto;
}
.career-cateTit {
    font-size: 1.2em;
    font-weight: bold;
    letter-spacing: 0.1em;
    color: #00334e;
    margin-bottom:10px;
}
ul.career-list {
    overflow:hidden;
    margin-bottom:40px;
}
ul.career-list li {
    float:left;
    width:23%;
    padding-left:2.5%;
}
ul.career-list li:first-child {
    padding-left:0;
}
.career-btn {
    position: relative;
    border: 1px solid #5c84ad;
    background: #FFF;
    font-size: 1em;
    text-align: center;
    width: 100%;
    height: 58px;
    line-height: 350%;
}
.career-btn a{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.career-btn a:link {
    text-decoration:none;
}
.career-btn a:visited {
    text-decoration:none;
}
.career-btn a:hover{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background: #efefef;
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "alpha(opacity=100)";
    -webkit-transition: 03s ;
    transition: 0.3s ;
}
.career-btn .arrow::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px;
    margin: auto;
    content: "";
    vertical-align: middle;
    width: 8px;
    height: 8px;
    border-top: 2px solid #5c84ad;
    border-right: 2px solid #5c84ad;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
ul.career-info-list {
    overflow:hidden;
}
ul.career-info-list li {
    float:left;
    width:47%;
    padding-left:6%;
}
ul.career-info-list li:first-child {
    padding-left:0;
}
ul.career-info-list img {
    width:100%;
}
.career-info h3 {
    font-size: 2em !important;
    font-weight: bold;
    letter-spacing: 0.1em;
    color: #00334e !important;
    text-align: left !important;
    padding-top:10px;
    margin-bottom: 20px !important;
}
.career-info h3 span {
    border-bottom:1px solid #0168b1;
    width:60px;
    display: block;
    padding-top: 20px;
}
.career-info .txt {
    font-size: 0.9em;
    line-height: 140%;
    margin-bottom: 50px;
}
.career-info .txt02 {
    font-size: 0.9em;
    line-height: 140%;
    margin-bottom: 5px;
}
.career-info .tel {
    font-size: 1.2em;
    font-weight:bold;
    margin-bottom: 20px;
}
.career-btn02 {
    position: relative;
    border: 1px solid #5c84ad;
    background: #FFF;
    font-size: 1em;
    text-align: center;
    width: 260px;
    height: 58px;
    line-height: 350%;
    margin-bottom: 30px;
}
.career-btn02 a{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.career-btn02 a:link {
    text-decoration:none;
}
.career-btn02 a:visited {
    text-decoration:none;
}
.career-btn02 a:hover{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background: #efefef;
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "alpha(opacity=100)";
    -webkit-transition: 03s ;
    transition: 0.3s ;
}
.career-btn02 .arrow::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px;
    margin: auto;
    content: "";
    vertical-align: middle;
    width: 8px;
    height: 8px;
    border-top: 2px solid #5c84ad;
    border-right: 2px solid #5c84ad;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

@media (max-width: 1024px) {
  .career-inner {
      width:90%;
  }
    #header.career h1#logo {
      margin-top: 0;
  }
}

@media (max-width: 768px) {
	#header.career h1#logo {
        margin-top: 10px;
  }
  .career-link {
      display:none;
  }
  .visible-pc {
      display:none;
  }
  .visible-sp {
      display:block;
  }
  .contact-btn {
      width: 75px;
      line-height: 350%;
  }
  .contact-btn img {
      width: 67%;
      padding-right: 0;
      padding-top:9px;
  }
  .career-main .text-area {
      width: 94%;
      padding: 0 3%;
  }
  .career-application h3 {
      font-size: 1.8em !important;
      margin-bottom: 30px !important;
  }
  ul.career-list {
      margin-bottom:25px;
  }
  .career-btn {
      height: 48px;
      line-height: 350%;
  }
  .career-btn .arrow::before {
      width: 6px;
      height: 6px;
      border-top: 2px solid #5c84ad;
      border-right: 2px solid #5c84ad;
  }
  .career-info h3 {
      font-size: 1.8em !important;
  }
}

@media (max-width: 640px) {
  .career-main .text-area .lead {
      font-size: 2.6em;
      margin-bottom: 30px;
      line-height: 120%;
  }
  .career-application h3 {
      font-size: 1.6em !important;
  }
  ul.career-list {
      margin-bottom:10px;
  }
  ul.career-list li {
      width: 48%;
      padding-left: 2%;
      margin-bottom:15px;
  }
  ul.career-list li:nth-child(3) {
      padding-left:0;
  }
  .career-info h3 {
      font-size: 1.6em !important;
  }
  ul.career-info-list li {
      float: none;
      width: 100%;
      padding-left: 0;
  }
  ul.career-info-list img {
      margin-top:30px;
  }
  .career-info .txt {
      margin-bottom: 20px;
  }
}


/* ------------------------------------------------------------------------------------------ 採用トップ*/
#recruitTopContent {
    opacity: 0;
    margin-bottom: 50px;
    position: relative;
}
#recruitTopContent.active {
    animation: anim-appear 0.3s ease-in 0s forwards;
}
@keyframes anim-appear {
    100% {
        opacity: 1;
    }
}
#header.recruitTop {
    position: inherit;
}
#header.recruitTop h1#logo {
    margin-top: 16px;/*33pxから16pxに変更*/
    margin-bottom: 16px;/*33pxから16pxに変更*/
}
.recruitWrap {
    width: 100%;
    margin: 0;
    padding: 0;
}
.recruitWrap .catchImage {
    width: 100%;
    margin: 0 auto;
}
.recruitTop .contentWrap {
    width: 72%;
    min-width: 1000px;
    min-width: 95vw;
    margin: 0; /*左右autoをなくしました*/
}
.recruitLogo {
    display: block;
    max-width: 61%;
    height: auto;
    margin: 30px auto;
}
ul.recruitTopMenu {
    position: absolute;
    bottom: 0;
    left: 21%;
    width: 58%;

}
ul.recruitTopMenu li {
    width: 20%;
    height: 100%;
    display: block;
    float: left;
}
ul.recruitTopMenu li.recruitTopMenu04 {
    width: 18%;
}
ul.recruitTopMenu li.recruitTopMenu05 {
    width: 22%;
}
ul.recruitTopMenu li a {
    display: inline-block;
    height: 100%;
    width: 100%;
    background-color: #fff;
    text-indent: -9999px;
    opacity: 0;
}
ul.recruitTopMenu li a:hover, ul.recruitTopMenu li a:active {
    opacity: 0.3;
}
#recruitTop #footer {
    padding-bottom: 70px;
}

@media (max-width: 768px) {
  #header.recruitTop{
      padding: 0;
  }
  #header.recruitTop h1#logo {
      margin-top: 2vw;
      margin-bottom: 2vw;
  }
  #header.recruitTop h1#logo a {
      line-height: 0;
      display: block;
  }
  ul.recruitTopMenu {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
  }
  ul.recruitTopMenu li {
      width: 33.33%;
      height: 50%;
      display: block;
      float: left;
  }
  ul.recruitTopMenu li.recruitTopMenu04 {
      margin-left: 10%;
      width: 33.33%;
  }
  ul.recruitTopMenu li.recruitTopMenu05 {
      margin-left: 10%;
      width: 40%;
  }
  .recruitTop .contentWrap {
      width: 100%;
      min-width: inherit;
  }
  .recruitLogo {
      max-width: 80%;
      margin: 6.25vw auto;
  }
  #recruitTop #footer {
      padding-bottom: 20px;
  }
}



/*20190120新卒トップ　社員紹介一覧用ボタン*/
#main #message button.btn_tolist {
width: 300px;
margin: 30px auto 40px auto;
padding: 15px 0;
display: block;
background-color: #fff;
color: #0067b2;
cursor: pointer;
border: 0 none;
font-size: 0.9em;
letter-spacing: 0.3em;
}
#main #message button.btn_tolist:after {
content: "";
width: 8px;
height: 8px;
margin: 5px 0 0 10px;
vertical-align: middle;
position: absolute;
border-top: 3px solid #21aad1;
border-right: 3px solid #21aad1;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
@media all and (-ms-high-contrast: none) {
  /*#main #message button.btn_tolist {
  padding: 25px 0;
  }*/
  #main #message button.btn_tolist:after {
  margin: 10px 0 0 10px;
  }
}
@media (max-width: 768px) {
  #main #message.inner {
  padding: 60px 0 50px 0;
  }
  #main #message button.btn_tolist {
  margin-top:20px;
  width:70%
  }
}
