﻿@charset "UTF-8";

/* レイアウト
----------------------------------------*/
body {
	height: 100%;
	width: 100%;
	min-width: 320px;
	-webkit-text-size-adjust: 100%;
}
img {
  max-width: 100%;
  height: auto;
}
#header {
  padding: 21px 0;
  box-sizing: border-box;
  max-height: 63px;
  border-bottom: 1px solid #c3c5ba;
}
#logo {
  text-align: center;
  width: 70%;
  margin: auto;
  max-width: 350px;
}
.spnav {
  display: none;
  position: absolute;
  top: 100%;
  width: 100%;
}
.spnav > ul {
  height: calc(100vh - 62px);
  overflow-y: scroll;
  overflow-x: hidden;
}
.spnav li {
  border-top: 1px solid #c3c5ba;
  background: url(../../../../img/ss/recruit/smt/recruit_smt_bg_ico_01.png) no-repeat 85% center #ffffff;
}
.spnav li:last-child {border-bottom: 1px solid #c3c5ba;}
.spnav li a {
  font-size: 23px;
  letter-spacing: 5px;
  color: #5a5a5a;
  display: inline-block;
  padding: 2.5vh 3%;
}
.spnav li a.mainnav {
  font-size: 28px;
  width: 42%;
  letter-spacing: 2px;
  font-weight: bold;
}
.spnav li.mainli a.mainnav {width: 100%;}
.spnav li a.subnav {
  float: right;
  width: 46%;
}
.spnav li.subli {border-top: 1px dotted #c3c5ba;}
.spnav li.subli a.subnav {
  width: 100%;
  padding: 2.5vh 8% 2.5vh 51%;
  box-sizing: border-box;
}
.sp-menu {
  width: 9%;
  display: block;
  position: absolute;
  top: 21px;
  right: 3%;
  z-index: 3;
  text-align: center;
}
.visible-sp {display: inline-block!important;}
.invisible-sp {display: none!important;}
br.minifixtwo {display: none!important;}
.homepage, #colophon, #content .entry-content {width: 100%;}
.homepage a {
  height: initial;
  width: 100%;
  position: relative;
  line-height: 0;
}
.homepage a.longbox {width: 100%;}
.homepage a.shortbox {width: 50%;}
#main {padding-top: 63px;}
.eyecatch {
  border-top: none;
  padding: 28% 0 25%;
  text-align: center;
  background: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_10.jpg) no-repeat center 0;
  background-size: cover;
}
.eyecatch p {
  color: #ffffff;
  font-size: 100%;
  text-shadow: 0px 1px 3px #707070;
}
.eyecatch p span.eyeslogan {
  font-size: 33px;
  font-weight: bold;
  display: block;
  margin-bottom: 13px;
}
.eyecatch p span.eye-eng {font-size: 12px;}
.homepage a.box01, .homepage a.box04, .homepage a.box08 {
background: none;
display: grid;
}
.homepage a.box01 div, .homepage a.box04 div, .homepage a.box08 div {
  position: absolute;
  top: 24%;
  left: 12%;
  margin: 0;
}
.homepage a.box01 div {top: 20%;}
.homepage a.shortbox {
  background: none;
  text-align: center;
  color: #ffffff;
  font-size: 14px;
}
.homepage a.shortbox img {
  -webkit-transition: none;
  -moz-transition: none;
  -o-transition: none;
  transition: none;
}
a:hover img, .homepage a.longbox:hover,.homepage a.shortbox img:hover, div.staff-voice a:hover img {
  opacity: 1;
  filter: alpha(opacity=1);
}
.homepage a.shortbox > span {
  position: absolute;
  left: 0;
  right: 0;
  top: 28%;
  line-height: 1.4;
}
.homepage a.shortbox > span span.link-title {
  display: block;
  font-size: 18px;
  font-weight: bold;
  margin: 1% 0 5%;
  letter-spacing: 5px;
}
.homepage a.shortbox > span span.link-more {
  border: 1px solid #ffffff;
  padding: 4px 22px;
  line-height: 2;
}
.homepage a.longbox div span.slogan {
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: 2px;
  margin-bottom: 9%;
}
.homepage a.longbox div span.red-title {
  font-size: 13px;
  font-weight: bold;
}
.homepage a.longbox div span.box-text {font-size: 14px;}
.homepage a.longbox.box01 div span.slogan {margin-bottom: 5px;}

/*footer
----------------------------------------*/
#footer {
	background: #444444;
  color: #ffffff;
  line-height: 2.2;
  padding: 0;
}
#footer div#f-nav {padding: 0 7%;}
#footer div#f-nav .fnav-text {
  padding: 0 7%;
  box-sizing: border-box;
  width: 100%;
}
#footer div#f-nav .fnav-text > div {
  width: 50%;
  padding-right: 3%;
}
#footer div#f-nav .fnav-text > div.f-right {
  width: 47%;
  padding-right: 0;
}
#footer h2 {margin-top: 25px;}
#footer h2 span {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 10px;
  border-color: transparent transparent transparent #ffffff;
  display: inline-block;
  margin-right: 3px;
  vertical-align: middle;
  margin-top: -4px;
}
#footer h2 a {
  font-weight: bold;
  border-bottom: none;
  margin-bottom: 0;
  background: none;
  padding-left: 0;
}
#footer .copyright {
  margin-top: 20px;
  border-top: 1px solid #ffffff;
  text-align: center;
  padding: 17px 0;
}

/*@media
----------------------------------------*/
@media screen and (min-width: 450px) and (max-width: 635px){
  .homepage a.box04 div, .homepage a.box08 div {left: 6%;}
  .homepage a.longbox div span.slogan {
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 8%;
  }
  .homepage a.longbox div span.red-title, .homepage a.longbox div span.box-text {font-size: 12px;}
}

@media screen and (min-width: 450px) {
  #footer a {font-size: 15px;}
  #footer h2 a, #footer .copyright .sitelink a {font-size: 20px;}
  #footer .copyright .copyright-text {font-size: 16px;}
}

@media screen and (max-width: 449px){
  #logo {
    text-align: left;
    width: 80%;
    margin: 0 0 0 3%;
  }
  .homepage a.box01 div {top: 18%;}
  .homepage a.box04 div, .homepage a.box08 div {
    top: 15%;
    left: 4%;
  }
  .homepage a.longbox div span.slogan {
    font-size: 12px;
    line-height: 1.5;
    margin-bottom: 6%;
  }
  .homepage a.longbox div span.red-title {
    font-size: 12px;
    line-height: 10px;
  }
  .homepage a.longbox div span.box-text {
    font-size: 9px;
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
    letter-spacing: 1px;
        margin-left: -14%;
  }
  #footer div#f-nav {padding: 0 4%;}
}

@media screen and (max-width: 420px) {
  .spnav li {
    background: url(../../../../img/ss/recruit/smt/recruit_smt_bg_ico_01.png) no-repeat 97% center #ffffff;
    background-size: 4% auto;
  }
  .spnav li a {font-size: 16px;}
  .spnav li a.mainnav {font-size: 20px;}
  .homepage a.shortbox span {
    font-size: 12px;
    line-height: 1.4;
  }
  .homepage a.shortbox > span {top: 24%;}
  .homepage a.shortbox > span span.link-title {
    font-size: 13px;
    margin: 0 0 1%;
    letter-spacing: 0.5px;
  }
  .homepage a.shortbox > span span.link-more {padding: 1px 25px;}
  h1.entry-title span.staffvoice-name {font-size: 22px;}
}

@media screen and (min-width: 421px) and (max-width: 574px) {
  .spnav li {
    background: url(../../../../img/ss/recruit/smt/recruit_smt_bg_ico_01.png) no-repeat 94% center #ffffff;
    background-size: inherit;
  }
  .spnav li a {font-size: 20px;}
  .spnav li a.mainnav {font-size: 26px;}
  .homepage a.shortbox > span span.link-title {
    font-size: 17px;
    letter-spacing: 1px;
  }
}

@media screen and (max-width: 450px) {
  .eyecatch {
    padding: 26% 0 20%;
    background-size: 100% auto;
  }
  .eyecatch p span.eyeslogan {
    font-size: 18px;
    margin-bottom: 0;
  }
  .eyecatch p span.eye-eng {
    font-size: 9px;
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
    letter-spacing: 1px;
    display: block;
  }
}

@media screen and (min-width: 451px) and (max-width: 600px) {
  .eyecatch {
    padding: 27% 0 23%;
    background-size: 100% auto;
  }
  .eyecatch p span.eyeslogan {
    font-size: 24px;
    margin-bottom: 7px;
  }
}

@media screen and (min-width: 450px) and (max-width: 500px) {
  .homepage a.box01 div {top: 13%;}
  .homepage a.box04 div, .homepage a.box08 div {top: 18%;}
}

@media screen and (min-width: 401px) and (max-width: 449px) {
  .homepage a.box04 div, .homepage a.box08 div {top: 22%;}
}

@media screen and (orientation : landscape) {
  .spnav li {background-size: 2% auto;}
  .spnav li a, .spnav li.subli a.subnav {padding: 1vh 3%;}
  .spnav li.subli a.subnav {padding: 1vh 3% 1vh 51%;}
  .spnav li a.mainnav {font-size: 17px;}
  .spnav li a {font-size: 15px;}
}


/*Subpage-common*/
.page #container {padding-bottom: 30px;}
.page #content, .single #content {border-top: none;}
ul.breadcrumbs {display: none;}
.entry-content.w100fix .inner-box, .inner-box-job, .single #content .entry-content, .entry-content div.privacy, .voice-txt .inner-box, div.staff-voice {
  width: 100%;
  margin: 0 auto;
  padding: 33px 3.5% 0;
  box-sizing: border-box;
}
.entry-content.w100fix div.philosophy .inner-box > div, .entry-content.w100fix div.activity .inner-box > div, div.philosophy h3, div.philosophy .inner-box > div p {width: 100%;}
div.anchor div.visible-sp {width: 100%;}
div.anchor a, div.anchor span {
  background: url(../../../../img/ss/recruit/recruit_bg_ico_03.png) no-repeat 9% center;
  padding: 1% 2% 1% 4.5%;
  font-size: 23px;
  margin-left: 15px;
  box-sizing: border-box;
  border: 2px solid #707070;
  color: #6F6F6F;
  display: inline-block;
}
div.anchor span:first-child {margin-left: 0;}
.page p, th, td, div.privacy p, ol li, div.philosophy p, div.message p, div#philosophy p, div#philosophy ol li {
  font-size: 100%;
  line-height: 2;
}
h3 {
  font-weight: normal;
  font-size: 26px;
  text-align: center;
}
h3.twolinefix {
  background: url(../../../../img/ss/recruit/smt/recruit_smt_bg_line_01.png) no-repeat 0 center;
  line-height: 1.1;
}
h2.red-line, div.location h2.red-line, div.trainning h2.red-line, div.job_description h2.red-line, div.company h2, div.joblist h2.red-line, div.process h2.red-line, div.recruit-info h2.red-line, div.seminardate h2.red-line {
  background: url(../../../../img/ss/recruit/smt/recruit_smt_bg_line_02.jpg) no-repeat 0 center;
  padding-left: 14px;
  margin-bottom: 33px;
  line-height: 1.2;
}
/*systemsandbenefits*/
div.trainning table {margin: 3% 0;}
div.trainning h2.red-line + p, div.group h2.red-line + p, div.group-sp h2.red-line + p {margin-bottom: 3%;}
div.trainning table th, div.trainning table td {
  display: block;
  width: 100%;
  padding: 0;
}
div.activity .inner-box div div {
  width: 100%;
  float: none;
  margin: 0 0 3% 0;
}
div.activity .inner-box img, div.company img, div.philosophy img, div#philosophy img {
  margin-bottom: 3%;
  margin: 0 -3.7% 3%;
  width: 107.5%;
  max-width: inherit;
}
div.group, div.group-sp, div.benefit {padding-top: 0;}
div.benefit table {margin-bottom: 4%;}
div.benefit table th {
  width: 20%;
  max-width: 135px;
}
div.benefit h4 {
  background: url(../../../../img/ss/recruit/smt/recruit_smt_bg_line_03.jpg) no-repeat 0 6px;
  font-size: 23px;
  line-height: 1.5;
}
.mg-t10 {margin-top: 0;}
span#group1, span#group2, span#company-introduce, span#location, span#trainning-sp, span#benefit, span#recruit-info, span#process, span#recruitinfo, span#seminardate {
    margin-top: -93px;
    padding-bottom: 93px;
    display: block;
}
span#joblist, span#recruitinfo{
    margin-top: -63px;
    padding-bottom: 63px;
    display: block;
}
/*企業概況*/
div.company {
  background-color: #ffffff;
  padding: 0;
}
div.company .inner-box > div {overflow: initial;}
div.company table {margin: 0;}
div.company table th {
  width: 220px;
  padding-left: 7%;
}
div.location h3 {
  width: 100%;
  margin-top: 33px;
}
div.location .location-detail {width: 53.5%;}
div.location div.location-detail {
	position: relative;
	margin-right: -3.5%;
	height: 0;
	padding-bottom: 38.3%;
}
div.location div.location-detail iframe {
	position: absolute;
	top: 0;
	left: 0;
}
img.location-detail {
  margin-left: -3.5%;
  margin-bottom: 2%;
}
div.location p {
  line-height: 2;
  margin: 0;
  text-align: center;
}
h3.w320fix br, br.w320fix {display: none!important;}
h3.2linefix br {display: block;}

/*philosophy*/
div.message p span.txt-bold {font-size: 126%;}
div.philosophy {padding: 58px 0 0;}
div.activity {padding: 58px 0;}
.entry-content.w100fix div.philosophy .inner-box > div, .entry-content.w100fix div.activity .inner-box > div, div.trainning {padding: 0;}
div#philosophy p {margin-bottom: 23px;}

/*about*/
.group-sp.visible-sp {display: block!important;}
div.group .inner-box > div, div.group-sp .inner-box > div {
  float: none;
  width: initial;
  margin-right: 0;
  margin-bottom: 40px;
}
div.group h3, div.group-sp h3 {
  background: none;
  margin-bottom: 0;
  letter-spacing: 1px;
  position: relative;
  padding: 0;
  width: auto;
  border-bottom: 1px solid #707070;
}
div.group h3 span.group-name, div.group-sp h3 span.group-name {
  background-color: #6F6F6F;
  color: #ffffff;
  font-size: 26px;
  position: relative;
  padding: 14px 0 12px;
  max-width: 300px;
  width: 50%;
  text-align: center;
  letter-spacing: 1px;
}
div.group h3 span, div.group-sp h3 span {
  padding: 15px 0px 11px 10px;
  float: left;
  position: initial;
  max-width: 295px;
  width: 45%;
  background-color: #ffffff;
  display: block;
  color: #DF4951;
  font-size: 14px;
  text-align: left;
  right: 0;
  bottom: 0;
  letter-spacing: 0;
}
div.group-sp .group-txt {
  padding: 0;
  border: none;
}
div.group-sp a.lightbox{
  color: #F75748;
  text-decoration: none;
  display: block;
  float: left;
  line-height: 0;
}
div.group-sp a.lightbox img {
  height: 30.3vw;
  width: auto;
}
.page p.lightbox-title {
  font-size: 26px;
  color: #ef8201;
}
.fancybox-skin img {
  width: 33%;
  max-width: 209px;
  margin-bottom: 10px;
}
#fancybox-wrap #fancybox-close {
  top: 3%;
  right: 3%;
  width: 5.7%;
  height: 17.1%;
  background: url(../../../../img/ss/recruit/smt/recruit_smt_bg_ico_02.png) no-repeat 0 0;
  background-size: contain;
  min-width: 25px;
}
#fancybox-wrap {height: auto!important;}
p.lightbox-txt {
  line-height: 1.5;
  width: 59%;
  float: right;
  margin-bottom: 8px;
}
p.lightbox-txt span {
  font-weight: bold;
  display: block;
  font-size: 23px;
}
div.group2 h3 {margin-bottom: 16px;}
/*job*/
div.recruit-info table td, div.recruitinfo table td {padding: 0;}
div.recruit-info table th, div.recruitinfo table th {
  max-width: 145px;
  width: 29%;
}
div.recruit-info table, div.job_description table {margin-bottom: 60px;}
div.recruit-information .table-recruit-info td,
div.recruit-information .text-link {
  overflow-wrap: anywhere;
  word-break: break-word;
  word-wrap: break-word;
}
div.process p.visible-sp {
  background-color: #f4f3ee;
  width: 107.5%;
  margin-left: -3.7%;
  margin-right: -3.7%;
  text-align: center;
  line-height: 0;
  padding: 20px 0;
}
div.process p.visible-sp img {
  width: 93%;
  max-width: 560px;
}
div.joblist h2.red-line, div.recruit-information h2.red-line, div.seminardate h2.red-line, div.recruitinfo h2.red-line {margin: 33px 0;}
div.joblist table th, div.joblist table td {
  padding: 12px 16px;
  text-align: left;
  font-size: 16px;
}
div.seminardate table th, div.seminardate table td {
  padding: 12px;
}
div.joblist table th, div.joblist table td, div.seminardate table th, div.seminardate table td {text-align: center;}
div.joblist table.visible-sp, div.seminardate table.visible-sp {
  display: table!important;
  margin-bottom: 33px;
}
div.joblist table td ol li, .page div.joblist table td p {
  font-size: 16px;
  line-height: 1.7;
}
div.joblist table tr.tr-more td, div.seminardate table tr.tr-more td {background-color: #e50714;}
div.joblist table td a, div.seminardate table tr.tr-more td a {
  font-size: 16px;
  color: #ffffff;
  text-align: center;
  display: block;
}
div.joblist table td a span, div.seminardate table tr.tr-more td a span {
  position: relative;
  display: inline-block;
  margin-left: 16px;
  padding: 0 24px;
}
div.joblist table td a span::before, div.seminardate table tr.tr-more td a span::before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0;
  height: 0;
  border-width: 5px 9px;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.single-job_listing ul.meta, .single_job_listing .application .application_details:before {display: none;}
.job_listing h1.entry-title {padding-bottom: 22px;}
div.job_description table {width: 100%;}
div.job_description table th {
  font-weight: bold;
  width: 22%;
}
div.job_description table td {padding: 2px 0 2px 17px;}
div.job_description table th, div.job_description table td ol li, div.job_description table td p {font-size: 100%;}
.single_job_listing #application-form .application_details {
  border: none;
  padding: 0;
  box-shadow: none;
}
.application_details .job-manager-form fieldset {
  margin: 0 0 0.5em;
  padding: 0 0 0.5em;
}
.application_details .job-manager-form fieldset label {font-weight: bold;}
.application_details .job-manager-form fieldset input[type="text"] {
  height: 40px;
  padding-left: 2%;
}
div.privacy-des {margin-top: 20px;}
div.privacy h2.red-line {background: url(../../../../img/ss/recruit/smt/recruit_smt_bg_line_02.jpg) no-repeat 0 5px;}
#application-form #enter, .single div.seminar-table form #enter {
  border-radius: 0;
  -webkit-appearance:none;
  width: 180px;
  font-size: 20px;
  padding: 8px 41px;
}
div.joblist .red-line + p, div.recruit-information table th, div.recruit-information table td, div.recruit-information p, div.recruit-information ol li {font-size: 16px;}
/*說明會*/
.single div.seminar-table {
  clear: both;
  border: none;
  padding: 0;
  box-shadow: none;
}
.single div.seminar-table form table {
  margin-top: -60px;
  width: 100%;
}
.single div.seminar-table form tr th {
  padding: 1.35em 0;
  width: 41%;
}
.single div.seminar-table form tr td {width: 53%;}
.single div.seminar-table form tr input[type="text"], .single div.seminar-table form tr input[type="tel"], .single div.seminar-table form tr input[type="email"], .single div.seminar-table span.text-ct03 input {height: 40px;}
.single div.seminar-table form tr.thtdw100 th, .single div.seminar-table form tr.thtdw100 td {width: 100%;}
.single div.seminar-table form tr.bdb-none th, .single div.seminar-table form tr.bdb-none td {padding-bottom: 0;}
.single div.seminar-table form span.school input[type="text"], .single div.seminar-table form span.department input[type="text"], .single div.seminar-table form span.company input[type="text"], .single div.seminar-table form span.position input[type="text"] {
  width: 100%;
  margin: 0;
}
.single div.seminar-table form tr input[type="date"] {
  width: 96%;
  margin: 0;
}
.single div.seminar-table form tr input[type="file"] {
  font-size: 12px;
  width: 100%;
}
.single div.seminar-table:before, .single div.seminar-table:after {display: none;}
/*員工心得*/
div.staff-voice div.visible-sp {display: block!important;}
div.staff-voice h2.red-line {margin-bottom: 18px;}
div.staff-voice a:hover div span {display: none;}
div.staff-voice a:hover > span {color: #5A5A5A;}
h1.entry-title span.staffvoice-name {
  margin-top: 26px;
  line-height: 1.3;
}
div.voice table th {width: 60px;}
div.voice table td {padding: 0 5px;}
.voice-txt .staff-voice > .visible-sp {display: none!important;}
.voice-txt .qa p.answer span {line-height: 1.3;}
div.staff-voice a {
  width: 32%;
  margin: 0 0 25px 2%;
}
div.staff-voice .staff-list {
  display: flex;
  flex-wrap: wrap;
}
div.staff-voice a span span.staff-name {
  font-size: 16px;
  padding: 4px 0 7px;
  float: none;
}
div.staff-voice a div {background-color: #ffffff;}
#post-2270 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_01.jpg);
  background-size: contain;
}
#post-2277 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_08.jpg);
  background-size: contain;
}
#post-2276 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_07.jpg);
  background-size: contain;
}
#post-2273 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_04.jpg);
  background-size: contain;
}
#post-2274 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_05.jpg);
  background-size: contain;
}
#post-2275 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_06.jpg);
  background-size: contain;
}
#post-2271 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_02.jpg);
  background-size: contain;
}
#post-2272 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_03.jpg);
  background-size: contain;
}
#post-874 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_09.jpg);
  background-size: contain;
}
#post-2278 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_12.jpg);
  background-size: contain;
}
#post-2279 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_13.jpg);
  background-size: contain;
}
#post-2280 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_14.jpg);
  background-size: contain;
}
#post-2281 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_15.jpg);
  background-size: contain;
}
#post-2282 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_16.jpg);
  background-size: contain;
}
#post-2283 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_17.jpg);
  background-size: contain;
}
#post-2284 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_18.jpg);
  background-size: contain;
}
#post-2285 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_19.jpg);
  background-size: contain;
}
#post-2286 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_20.jpg);
  background-size: contain;
}
#post-2287 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_21.jpg);
  background-size: contain;
}
#post-2288 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_22.jpg);
  background-size: contain;
}
#post-2289 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_23.jpg);
  background-size: contain;
}
#post-2290 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_24.jpg);
  background-size: contain;
}
#post-2291 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_25.jpg);
  background-size: contain;
}
#post-2292 #top-visual-fill .ttl_page:after {
  background-image: url(../../../../img/ss/recruit/smt/recruit_smt_bg_img_26.jpg);
  background-size: contain;
}
#top-visual-fill .ttl_page {
  height: initial;
  padding-bottom: 41%;
}
.voice-txt .qa {
  width: 100%;
  margin-bottom: 45px;
}
p.answer + img {margin-top: 25px;}
.voice-txt .qa p.question {margin-top: 33px;}
.qa img {
  width: 107.5%;
  margin-left: -3.7%;
  margin-right: -3.7%;
  max-width: initial;
}
h2.red-line.schedulepage {margin: 19px 3.5%;}
div.anchor.visible-sp {display: block!important;}
.weekly_schedule > div > div {margin-bottom: 80px;}
.weekly_schedule span.day {
  margin-left: 3.5%;
  padding: 21px 0 21px 3.5%;
  display: block;
  font-size: 28px;
}
.weekly_schedule table tr, .weekly_schedule table tr .shorter.shorter-bg {background-color: #f4f3ee;}
.weekly_schedule table tr.bg-gray {background-color: #e1e0db;}
.weekly_schedule table th {
  background-color: #434343;
  color: #ffffff;
  text-align: center;
  font-size: 20px;
}
.weekly_schedule table td ol li {
  list-style: square outside;
  margin-left: 18px;
  margin-top: 10px;
  line-height: 1.5;
  padding-right: 7%;
}
.weekly_schedule table td span.bdline {
  border-top: 1px solid #c4c4bc;
  margin-top: 5px;
  padding: 5px 7% 0 18px;
  display: inline-block;
  min-width: 138px;
}
.weekly_schedule table td.twolinetd ol {margin-bottom: 0;}
.weekly_schedule table td {
  width: 29%;
  padding: 0 1.1112%;
  vertical-align: top;
}
.weekly_schedule table tr td:first-child {
  padding-left: 3.5%;
  width: 32.5%;
}
.weekly_schedule table tr td:first-child img {max-width: 95.5%;}
.weekly_schedule table td img {
  margin-bottom: 15px;
  box-sizing: border-box;
}
.weekly_schedule table .shorter {
  width: 3.944%;
  padding: 0;
  min-width: 24px;
}
.weekly_schedule table.day-outside .shorter {
  background-color: #e1e0db;
  position: relative;
}
.weekly_schedule table.day-outside .shorter img {
  position: absolute;
  left: 0;
  top: 0;
}
.weekly_schedule table.day-outside th.shorter-thbg {background-color: #434343;}
.weekly_schedule > div > div.last-day {margin-bottom: 0;}
.weekly_schedule p {text-align: center;}

/*movie*/
.moviebox {
  position: relative;
  text-align: left;
  padding-bottom: 56.25%;
}
.col02 .col.moviebox {
  padding-bottom: 28.125%
}
.seminardate-inner {
  overflow: auto;
}
.seminardate-inner::-webkit-scrollbar {
  height: 10px;
}
.seminardate-inner::-webkit-scrollbar-track {
  margin: 0 2px;
  background: #ccc;
  border-radius: 5px;
}
.seminardate-inner::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #666;
}
.smt div.seminardate table {
  min-width: 700px;
}
.smt div.seminardate table td, .smt div.seminardate table th {
  font-size: 12px;
}
.smt div.seminardate table td span a {
  font-size: 14px;
  padding: 6px 14px 7px 30px;
  background: url(../../../../img/ss/recruit/recruit_bg_ico_08.png) no-repeat 16px center;
}
.smt div.seminardate table td span a:hover {
  color: #6F6F6F;
}
.smt div.recruit-information table th, .smt div.recruit-information table td, .smt div.recruit-information p, .smt div.recruit-information ul > li, .smt div.recruit-information ol > li {
  font-size: 14px;
}

@media screen and (max-width: 420px) {
  div.anchor a, div.anchor span {
    background: url(../../../../img/ss/recruit/recruit_bg_ico_03.png) no-repeat 5% center;
    padding: 1% 1% 1% 5.5%;
    font-size: 12px;
    margin-left: 1%;
  }
  h3 {font-size: 20px;}
  div.benefit h4 {
    font-size: 19px;
    background: url(../../../../img/ss/recruit/smt/recruit_smt_bg_line_03.jpg) no-repeat 0 4px;
    background-size: 5px auto;
  }
  div.company table th {padding-left: 0;}
  div.group h3 span.group-name, div.group-sp h3 span.group-name {
    font-size: 16px;
    width: 56%;
  }
  div.group h3 span, div.group-sp h3 span {
    font-size: 12px;
    width: initial;
    padding: 3px 0 0 10px;
  }
  .page p.lightbox-title {font-size: 20px;}
  .fancybox-skin img {
    width: 40%;
    margin-right: 10px;
  }
  p.lightbox-txt {
    font-size: 13px;
    width: 55%;
    margin-bottom: 5px;
  }
  p.lightbox-txt span {font-size: 16px;}
}

@media screen and (min-width: 421px) and (max-width: 585px) {
  div.anchor a, div.anchor span {
    background: url(../../../../img/ss/recruit/recruit_bg_ico_03.png) no-repeat 8% center;
    padding: 1% 1% 1% 6.5%;
    font-size: 16px;
    margin-left: 1%;
  }
  h3 {
    font-size: 23px;
    line-height: 1.1;
  }
  div.group h3 span.group-name,div.group-sp h3 span.group-name {
    width: 60%;
    font-size: 23px;
    line-height: 1.1;
  }
  div.group h3 span, div.group-sp h3 span {
    padding: 7px 0 0 10px;
    float: left;
    width: initial;
    line-height: 1.3;
  }
  div.group h3 span br.w320fix, div.group-sp h3 span br.w320fix {display: block;}
}

@media screen and (max-width: 470px) {
  h3.w320fix {
    background: url(../../../../img/ss/recruit/smt/recruit_smt_bg_line_01.png) no-repeat 0 center;
    line-height: 1.1;
  }
  h3.w320fix br, br.w320fix {display: block!important;}
  span.spacefix {display: none;}
  div.job_description table th {width: 27%;}
}

@media screen and (max-width: 585px) {
  .application_details .job-manager-form fieldset label {width: 32%;}
  .application_details .job-manager-form fieldset div.field {width: 65%;}
  br.fixlonger {display: block;}
}

@media screen and (max-width: 322px) {
  br.minifix {display: block;}
}

@media screen and (min-width: 323px) {
  br.minifix {display: none!important;}
}

@media screen and (min-width: 586px) {
  br.fixlonger {display: none!important;}
}

@media screen and (min-width: 338px) and (max-width: 408px) {
  br.minifixtwo {display: block!important;}
}

@media screen and (max-width: 367px) {
  h1.entry-title span {font-size: 26px;}
}


/* mission */
.ss-layout-container * {
  box-sizing: border-box;
}

.ss-layout-container {
  max-width: 1000px;
  margin: auto;
  padding: 0 20px;
  margin: 33px auto 0;
}

.ss-layout-container.of-narrow {
  max-width: 800px;
}

.ss-layout-grid {
  display: block;
  margin: 0;
}

.ss-layout-grid > .ss-layout-grid-column {
  margin-bottom: 32px;
  padding-left: 0;
  margin-top: 0;
}

.ss-layout-grid > .ss-layout-grid-column:first-child {
  margin-bottom: 40px;
}

.ss-layout-grid.of-column-2 > .ss-layout-grid-column,
.ss-layout-grid.of-column-3 > .ss-layout-grid-column {
  width: 100%;
}

.ss-layout-grid.of-column-2 > .ss-layout-grid-column.of-width-full,
.ss-layout-grid.of-column-3 > .ss-layout-grid-column.of-width-full {
  width: 100%;
}

.ss-media {
  display: flex;
  flex-direction: column;
  max-width: 480px;
  margin: auto;
}

.ss-media.of-column-reverse {
  flex-direction: column-reverse;
}

.ss-media .ss-media-image {
  min-height: 0%;
  position: relative;
  padding-bottom: 56.25%;
}

.ss-media .ss-media-image.of-centering {
  text-align: inherit;
  margin: 0;
}

.ss-media .ss-media-text {
  margin-top: 5px;
  line-height: 1.4;
}

.ss-textLead {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 1.6;
  margin-bottom: 16px;
}

.entry-content.w100fix .inner-box.of-primary {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 14px;
}

.entry-content.w100fix .inner-box.of-primary > :last-child {
  margin-bottom: 0;
}

div.philosophy .image-centering {
  display: block;
  width: 362px;
  margin: 0 auto 3%;
}

@media screen and (max-width: 768px) {
  div.philosophy .image-centering {
    width: 100%;
    text-align: center;
  }

  div.philosophy .image-centering > img {
    width: calc(18.5rem + ((1vw - 0.36rem) * (43.3823529412)));
    margin: 0;
  }
}

