/************************** Reset **************************/
body, div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ul, ol, li,
brockquote, pre, table, caption, th, td, address,
form, fieldset, legend, object {
  margin: 0;
  padding: 0; }

h5, h6, pre, table, code, kbd, samp, acronym, input, textarea {
  font-size: 100%; }

img {
  vertical-align: baseline; }

a img {
  border: none; }

/************************** Setting **************************/
body {
  font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  color: #555;
}
html{
  scroll-behavior: smooth;
}
html, body {
  height: 100%;
}

* html body {
  /* for IE6 */
  font-size: small;
}

*:first-child + html body {
  /* for IE7 */
  font-size: small;
}

a {
  text-decoration: none;
  color: #555;
}
a:hover {
  text-decoration: none;
  color: #555; 
}
.clear{
  clear: both;
}
/************************** header **************************/
#header{
  background-color: #ffffff;
  border-bottom: #eee 1px solid;
  box-shadow:2px 0px 5px;
}
.navbar{padding: .1rem !important;}
#header .navbar-nav a.active img{
  padding-top: .60em;
  background-position: top center;
  background-repeat: no-repeat;
  background-size: .5em .5em;
  background-image: radial-gradient(.25em .25em at center center,#e9090c,#e9090c 100%,transparent);
}
#header .navbar-nav img{
  padding-top: .60em;
}

/************************** footer **************************/
#footer{
  border-top:1px solid #FDBC03;
  padding-top:1rem;
}
#footer .footer_left .footer_mapttl,
#footer .footer_right .footer_shopttl{
  font-size: 2rem;
}

#footer .footer_left iframe{
  width: 100%;
  height: 400px
}
#footer .footer_center .footer_c_name{
  font-size: 1rem;
  margin-top:5rem;
}
#footer .footer_center .footer_c_prof{
  font-size: 0.8rem;
  margin-top:2rem;
}

#footer .footer_center .footer_c_snsttl img{
  max-width: 100%;
  margin: 3rem 0 1rem;
}
#footer .footer_center .footer_c_snsicon{
  margin-left:1rem;
}
#footer .footer_center .footer_c_snsicon span{
  margin-right:10px;
}
#footer .footer_right .footer_shoplist .footer_shoplistL,
#footer .footer_right .footer_shoplist .footer_shoplistR{
  float: left;
  width: 50%;
  padding-left:1rem;
  font-size:1rem;
}
#footer .footer_right .footer_shoplist .footer_shoplist_mall{
  margin-bottom: 5px;
}
#footer .footer_right .footer_shoplist ul li{
  font-size: 0.7rem;
  list-style: none;
  padding-left:5px;
  margin-bottom: 10px;
}


@media screen and (max-width: 767px) {
  .footer_left iframe{
    height: 300px
  }
  #footer .footer_right{
    margin-top:50px;
  }
  #footer .footer_right .footer_shoplist .footer_shoplistL,
  #footer .footer_right .footer_shoplist .footer_shoplistR{
    width: 100%;
    float: none;
  }
  #footer .footer_right .footer_shoplist .footer_shoplistL .footer_shoplistL_Ama{
    margin-bottom:30px;
  }
}
/************************** 共通 **************************/
#top_main01{
  padding-top:1em;
  padding-bottom: 1em;
}
#top_main01 .mainttl_wrap{
  border-bottom: #eee solid 2px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #top_main01{
    padding-top:0;
    padding-bottom: 2em;
  }
}

/************************** top **************************/
#mimg img{width: 100%;}
.top_news{
  margin:50px 0 20px;
  padding: 50px 0;
}
#top_main02{
  padding-right: 0;
  padding-left: 0;
}
.top_news{
  background-color: rgb(248, 248, 248);
}
.top_news_ttl_wrap{
  display: flex;
  justify-content: center;
  align-items: center;
}
.top_news .top_news_ttl{
  font-size: 2rem;
  text-align: right;
}
.accordion-menu {
  margin: 0 0 0 0;
}
.accordion-menu dt {
  padding: 10px;
  font-size: 0.8rem;
  cursor: pointer;
}
.accordion-menu dt span{
  margin-right:2rem;
}
.accordion-menu dd {
 display: none;
 padding: 10px 0 10px 50px;
 font-size: 0.8rem;
 color: #555;
}

.top_news_more{
  clear: both;
  font-size: 0.8rem;
  text-align: right;
  padding-right: 30px;
}
.top_news_more a{
  border-bottom: 2px solid #ccc;
}
@media screen and (max-width: 767px) {
  .top_news{
    margin:50px 0 20px;
    padding: 0 0 30px 0;
  }
  .top_news .top_news_ttl{
    font-size: 2rem;
    text-align: center;
    padding-top:1rem;
  }
  .top_news_more{
    padding-right: 5px;
  }
  #accordion dt span{
    display: block;
  }
  .accordion-menu dd {
    padding: 10px 0 10px 20px;
   }
}
.top_twitter{
  margin: 0;
  text-align: center;
}
.top_twitter .top_twitter_in{
  width: 70%;
  margin: 50px auto 50px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .top_twitter .top_twitter_in{
    width: 80%;
    margin: 20px auto 20px;
    text-align: center;
  }
}
.sliderArea {
  background: #fff;
  overflow: hidden;
}
.sliderWide {
  max-width: 100%;
  margin: 0 auto;
  padding: 30px 0;
}
.sliderWide .slick-arrow {
  opacity: 0;
  transition-duration: 0.3s;
}
.sliderWide:hover .slick-arrow {
  opacity: 1;
}
.slider {
  max-width: 660px;
  margin: 0 auto;
  padding: 0;
}
.slider .slick-list {
  overflow: visible;
}
.slider .slick-slide {
  padding: 0 10px;
  opacity: .5;
  transition-duration: 0.3s;
}
.slider .slick-slide.slick-current {
  opacity: 1;
}
.slider .slick-slide a {
  display: block;
}
.slider .slick-slide a:hover {
  display: block;
  opacity: .7;
}
.slider img {
  height: auto;
  width: 100%;
}
.slick-prev, .slick-next {
  z-index: 1;
}
.slick-dots {
  bottom: -33px;
}
.slick-dots li button:before{
  font-size:30px;
  line-height: 30px;
}
@media screen and (max-width: 767px) {
  .slider {
    max-width: 230px;
  }
}
.top_inst{
  background-color: #dfd5e0;
  padding: 0 10rem;
  margin-bottom: 30px;
  margin-top: 30px;
}
.top_inst .top_inst_ttl{
  font-size: 5rem;
  font-weight: 300;
  font-family: 'M PLUS Rounded 1c', sans-serif;
  position: relative;
  top: -3.5rem;
  left: 2rem;

}
.top_inst .embedsocial-hashtag{
  position: relative;
  top: -2rem;
}
@media screen and (max-width: 767px){
  .top_inst{
    padding: 1rem 1rem 0 1rem;
  }
  .top_inst .top_inst_ttl{
    position: static;
    font-size: 3rem;
    text-align: center;
    padding: 0 0 1rem 0;
  }
  .top_inst .embedsocial-hashtag{
    position: static;
  }
}
.top_linkbnr{
  color: #fff;
  text-align: center;
}
.top_linkbnr .top_linkbnr_ttls{
  font-size: 1.5rem;
}
.top_linkbnr .top_linkbnr_ttll{
  font-size: 3.5rem;
}
.top_linkbnr .top_linkbnr_tx{
  font-size: 1.5rem;
  margin-top: 50px;
}
.top_linkbnr .top_linkbnr_bnarea{
  margin-top:80px;
  padding: 0 0 50px 0;
}
.top_linkbnr .top_linkbnr_bnarea a{
  color: #fff;
}
.top_linkbnr .top_linkbnr_bnarea span:hover{
  background-color: rgba(255,255,255,0.2);
}
.top_linkbnr .top_linkbnr_bnarea span.btn{
  padding: 20px;
  border: 1px solid #fff;
  min-width: 15rem;
  border-radius: 5px;
  -webkit-border-radius: 5px;
}
.top_linkbnr .top_linkbnr_bnarea span.btnl{
  margin-right: 20px;
}
.top_linkbnr .top_rec{
  padding: 50px 0 0 0;
  background-image: url("../img/top/top_rec.jpg");
  background-size:cover;
  background-position: center top;
  background-repeat: no-repeat;
}

.top_linkbnr .top_con{
  margin: 50px 0 100px 0;
  padding: 50px 0 0 0;
  background-image: url("../img/top/top_con.jpg");
  background-size:cover;
  background-repeat: no-repeat;
}

@media screen and (max-width: 767px) {
  .top_linkbnr .top_linkbnr_tx{
    margin-top: 10px;
  }
  .top_linkbnr .top_linkbnr_ttls{
    font-size: 1rem;
  }
  .top_linkbnr .top_linkbnr_tx{
    font-size: 0.8rem;
    margin-top: 10px;
  }
  .top_linkbnr .top_linkbnr_bnarea{
    margin-top:50px;
  }
  .top_linkbnr .top_linkbnr_ttll{
    font-size: 2rem;
  }
  .top_linkbnr .top_linkbnr_bnarea span{
    display: block;
    margin: 10px 50px;
  }
  .top_linkbnr .top_linkbnr_bnarea span.btnl{
    margin-right: 50px;
  }
}
/************************** news **************************/
.newsmain_wrap{
  padding-top:3rem;
  min-height: 500px;
}
.newsmain_wrap .accordion-menu dt{
  border-bottom: 1px #ccc dashed;
  padding: 15px 10px 5px;
}
.newsmain_wrap .accordion-menu dt::after{
  content: "Read more▼";
  display: block;
  text-align: right;
  padding-right: 5px;
  color:#666;
}
/************************** company **************************/
.company .companyvision{
  text-align: center;
  margin-top:50px;
}
.company .companyvision img{
  max-width: 100%;
}
.company .companyMttl{
  font-size: 1.3rem;
  font-weight: 800;
  margin-top:3rem;
}
.company .prof dl{
  width: 40rem;
  font-size: 0.9rem;
  margin-left:3rem;
  margin-top:1rem;
  margin-bottom:100px;
}
.company .prof dt{
  float: left;
  width: 10rem;
  font-weight: normal;
  clear: both;

}
.company .prof dt,
.company .prof dd{
  border-bottom:1px solid #ccc;
  padding: 1rem;
}

.company .history dl{
  width: 100%;
  font-size: 0.9rem;
  margin-left:3rem;
  margin-bottom:100px;
}
.company .history dt{
  float: left;
  width: 8rem;
  font-weight: normal;
  clear: both;
}
.company .history dt,
.company .history dd{
  padding: 1rem;
}

.office .offName{
  border-top:2px solid #666;
  font-weight: 800;
  padding: 0.5rem;
}
.office dl{
  font-size: 0.9rem;
}
.office dt{
  float: left;
  width: 5rem;
  padding: 1rem 0 1rem 1rem;
  clear: both;
}
.office dd{
  padding: 1rem 0 1rem 1rem;
}
.office .offMap{
  margin-top:2rem;
  margin-bottom: 5rem;
}
.office .offMap iframe{
  width: 100%;
  height: 400px;
}
@media screen and (max-width: 767px) {
  .company .prof dl{
    width: 20rem;
    max-width: 100%;
    font-size: 0.8rem;
    margin-left:0;
  }
  .company .prof dt{
    float: left;
    width: 6rem;
    font-weight: normal;
  
  }
  .company .prof dt,
  .company .prof dd{
    padding: 1rem 0.2rem;
  }
  .company .history dl{
    margin-left:0;
  }
  .company .history dt{
    width: 7rem;
  }
  .company .history dt,
  .company .history dd{
    padding: 1rem 0.2rem;
  }
  .office dt{
    float: none;
    display: block;
  }
  .office dd,
  .office dt{
    padding: 0.5rem 0 0 1rem;
  }
}

.conWrap{
  text-align: center;
  margin-top: 3rem;
}
.conWrap .conttl{
  font-size: 2rem;
  font-weight: 800;
  margin-bottom: 1rem;
}
.conWrap .contel{
  margin-bottom: 1rem;
  line-height: 2.5rem;
  font-weight: 800;
}
.conWrap .conmail{
  margin-top:5rem;
}
.conWrap .conmail a{
  padding: 1.5rem 5rem;
  background-color: #ccc;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all  0.5s ease;
}
.conWrap .conmail a:hover{
  background-color: #eee;
}
.conWrap .contel,
.conWrap .contime,
.conWrap .conmail{
  font-size: 1.5rem;
}
.conhr{
  margin-top:5rem;
  border-top: 2px dotted #ccc;
}
@media screen and (max-width: 767px) {
  .conWrap .contel,
  .conWrap .contime,
  .conWrap .conmail{
  font-size: 1rem;
  }
  .conWrap .conmail a{
    max-width: 100%;
    padding: 1.5rem;
  }
}
/************************** shop **************************/
.shopGekiwrap .gekiLogo{
  text-align: center;
  margin-top:3rem;
}
.shopGekiwrap .gekiLogo img{
  max-width: 70%;
}
.shopGekiwrap .gekilink .gekilinkInT div,
.shopGekiwrap .gekilink .gekilinkInU div{
  text-align: center;  
}

.shopGekiwrap .gekilink .gekilinkInT div a,
.shopGekiwrap .gekilink .gekilinkInU div a{
  display: block;
  border: 1px solid #222;
  padding-top:2rem;
  padding-bottom: 2rem;
}
.shopGekiwrap .gekilink .gekilinkInT{
  margin-bottom:1.5rem;
}
.shopGekiwrap .gekilink .gekilinkInT div a:hover,
.shopGekiwrap .gekilink .gekilinkInU div a:hover{
  background-color: #ECECEC;
  background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #F9F9F9), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #F9F9F9),color-stop(.75, #F9F9F9), color-stop(.75, transparent),to(transparent));
  -webkit-background-size: 7px 7px;
}
.shopGekiwrap .morescroll{
  text-align: center;
  margin: 4rem auto;
}
hr.shophr{
  border-top: 1px solid #000;
  margin-top:0;
  margin-bottom: 0;
}
.shopicon{
  margin-bottom: 100px;
}
.shopicon img{
  max-width: 70%;
  padding: 1rem;
}
@media screen and (max-width: 767px) {
  .shopGekiwrap .gekiLogo img{
    max-width: 60%;
  }
  .shopGekiwrap .gekilink .gekilinkInT div a,
  .shopGekiwrap .gekilink .gekilinkInU div a{
    font-size: 0.8rem;
    padding-top:1.2rem;
    padding-bottom: 1.2rem;
  }
  .shopicon img{
    max-width: 100%;
  }
}
/************************** recrit 共通 **************************/
.recMenuWrap ul.recMenu{
  margin: 1rem auto;
  text-align: center;
}
.recMenuWrap ul.recMenu li{
  list-style: none;
  display: inline-block;
  padding: 1rem 2rem;
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 1.1rem;
}

.recMenuWrap ul.recMenu li div{
  border-bottom: 3px solid #999;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
  padding-bottom: 0.5rem;
}

.recMenuWrap ul.recMenu li div.active{
  border-bottom: 6px solid #e9090c;
}

.recMenuWrap ul.recMenu li span{
  font-size: 0.7em;
  font-weight: normal;
}
#pagetop{
  text-align: center;
  font-size: 0.8rem;
  border:1px solid #999;
}
#pagetop a{
  padding: 1rem;
  display: block;
}
#pagetop a:hover{
  background-color: #F9F9F9;
}
@media screen and (max-width: 767px) {
  .recMenuWrap ul.recMenu li{
    padding: 0;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1rem;
  }
  
  .recMenuWrap ul.recMenu li div{
    padding-right: 0.2rem;
    padding-left: 0.2rem;
    padding-bottom: 0.2rem;
  }
  .recMenuWrap ul.recMenu li span{
    font-size: 0.8em;
  }
}
/************************** recrit メッセージ **************************/
.mesttl{
  margin-top:5rem;
  border-bottom: 3px solid #222;
  max-width: 100%;
}
.mesttl img{
  max-width: 100%;
}
.mesmain p{
  padding-top:3rem;
  padding-left:0.8rem;
  line-height: 2rem;
}
.mesmain img{
  max-width:100%;
}
.mesmain .mssname{
  padding-left:0.8rem;
  margin-top:3rem;
  font-size: 1.3rem;
  font-weight: 800;
}
@media screen and (max-width: 767px) {
  .mesmain p{
    padding-top:1.5rem;
    padding-left:0;
    line-height: 1.5rem;
  }
  .mesmain .mssname{
    padding-left:0;
    margin-top:2rem;
    font-size: 1rem;
  }
}
/************************** recrit アバウト **************************/
.aboutBon{
  margin-top:3rem;
  margin-left:1rem;
}
.aboutBon .aboutBonttl{
  font-size: 1.2rem;
  font-weight: 800;
}
.aboutBon p{
  line-height: 2rem;
  margin-top:1rem;
  padding-left:1.5rem;
}
.aboutBon p img{
  margin: 3rem 0 0.5rem;
  max-width: 100%;
}
.organization .orgMenu img{
  max-width:100%;
}
.organization .orgMenu{
  margin-top:2rem;
}
.orgMenu {
  display: flex;
  cursor: pointer;
}
.orgMenu .orgMenuttl{
  text-align: center;
}
.orgMenu .orgMenuttl img{
  max-width: 100%;
}
.orgMenu .tab {
  margin-bottom: 1rem;
}
.orgMenu .tab a{
  display: block;
  font-size: 1.5rem;
  padding: 0.5rem;
}
.orgMenu .tab.active2 {
  border:3px solid #555;
  box-sizing: border-box;
}
.content-area .content {
  display: none;
  padding-top: 100px;
  margin-top:-100px;
}
.content-area .content.show {
  margin-top: 50px;
  display: block;
}
.menuTabR{
  border-right: dotted 2px #555;
}
.menuTabL{
  border-left: dotted 2px #555;
}
#content-area .content .aboutusDepttl{
  border-bottom: 2px solid #222;
}
#content-area .content p.aboutusDeptxt{
  font-size: 1rem;
  padding: 2rem;
  line-height: 2rem;
}
#content-area .content .wanted{
  text-align: right;
  margin-top:50px;
  margin-bottom: 100px;
}
#content-area .content .wanted span{
  border:2px solid #222;
  box-sizing: content-box;
  padding: 1.5rem 6rem;
}

.aboutusDepInterview .InterviewBel{
  position: relative;
  display: inline-block;
  padding: 0 65px;
  text-align: center;
  margin-top:2rem;
}
.aboutusDepInterview .InterviewBel:before,
.aboutusDepInterview .InterviewBel:after {
  position: absolute;
  top: calc(50% - 3px);
  width: 50px;
  height: 6px;
  content: '';
  border-top: solid 2px #666;
  border-bottom: solid 2px #666;
}
.aboutusDepInterview .InterviewBel:before {
  left: 0;
}
.aboutusDepInterview .InterviewBel:after {
  right: 0;
}

.aboutusDepInterview .InterviewQ{
  margin-top:50px;
  margin-bottom: 10px;
}
.aboutusDepInterview .InterviewQ:first-letter {
  font-size: 150%;
  color: rgba(233,9,12,0.6);
  font-family: 'Raleway', sans-serif;
  font-weight: 600;
}
.aboutusDepInterview .InterviewA{
  padding: 0 3rem;
}
.aboutusDepInterview .InterviewA dt{
  float: left;
  width: 4rem;
  /* font-weight: normal; */
  color: rgba(233,9,12,0.6);
  font-family: 'Raleway', sans-serif;
}
.aboutusDepInterview .InterviewA dd{
  margin-bottom: 10px;
}
@media (min-width: 768px){
  .aboutusDepInterview .d-md-block {
      display: inline-block !important;
  }
}
@media screen and (max-width: 767px) {
  .menuTabR{
    border-right: none;
  }
  .menuTabL{
    border-left: none;
  }
  .orgMenuU{
    border-top: dotted 2px #555;
    padding-top: 2rem;
  }
  #content-area .content p.aboutusDeptxt{
    font-size: 1rem;
    padding: 1rem;
    line-height: 2rem;
  }
  #content-area .content .wanted span{
    padding: 1rem 3rem;
  }
  .aboutusDepInterview .InterviewA{
    padding: 0 0.5rem;
  }
}

/************************** recrit 数字で見る **************************/
.mesttl2{
  margin-top:2rem;
  margin-bottom: 1rem;
  border-bottom: 3px solid #ddd;
  text-align: center;
}
.mesttl2 img{
  max-width: 100%;
}
.numImgWrap div{
  text-align: center;
  margin-bottom: 20px;
}
.numImgWrap img{
  width: 100%;
}
.numSubttl{
  text-align: center;
}
.numSubttl img{
  max-width: 100%;
}

/************************** recrit エントリー **************************/
.entryDepInnerTtl{
  text-align: center;
  padding-top:3rem;
}
.entryDepInnerTtl img{
  max-width: 100%;
}
.entryDepFlowTtl{
  border-bottom: 2px solid #222;
}
.entryDepFlowMain{
  border-left:2px dotted #555;
  padding:1rem 0 1rem 3rem;
  margin-top:10px;
}
.entryDepFlowMain dt{
  float: left;
  font-size:2rem;
  width: 3rem;
}
.entryDepFlowMain dt,
.entryDepFlowMain dd{
  margin-bottom:50px;
  line-height: 2rem;
}
.entryDepInfo{
  margin-top: 5rem;
}
.entryDepInfo .InfoTtl{
  font-size: 1.2rem;
  border-bottom: 2px solid #222;
  font-weight: 800;
}
.entryDepInfo dl{
  margin-top:2rem;
  font-size: 1rem;
  margin-left:1rem;
}
.entryDepInfo dt{
  float: left;
  font-weight: normal;
  width: 6em;
}
.entryDepInfo dd{
  padding-left: 6em;
  margin-bottom: 2rem;
}
.entryDepInfoDetail{
  font-size: 1rem;
  margin: 0.7rem 0 1rem;
}
.entryContactInfo{
  margin-top:50px;
}
.entryContactInfo .entryContactInfoTtl{
  font-weight: 800;
  border-bottom:2px solid #222;
}
.entryContactInfo p{
  font-size: 1rem;
  padding-left: 2rem;
  margin-top:1.5rem;
  line-height: 2rem;
}
@media screen and (max-width: 767px) {
  .entryDepFlowMain{
    border-left:2px dotted #555;
    padding:1rem 0 1rem 1rem;
  }
  .entryDepFlowMain dt{
    font-size:1.5rem;
    width: 2rem;
  }
}