@charset "utf-8";



/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*  他CSSファイル指令箇所の style config 使用箇所   */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

.Heading.Type1:before{
  background: rgb(255,213,233);
}
.Heading.Type3 {
  background: rgb(119,  0, 84);
  color: #fff;
}
.Heading.Type3:before,
.Heading.Type3:after{
  border-color:  transparent rgb(119,  0, 84);
}
.Heading.Type4{
  border-color:  rgb(255,  0,120);
}
#main-sidebar ul.PickupList li.Entry p a{
  background: rgb(255,  0,120);
}
#main-sidebar ul.PickupList li.GroupSite p a{
  border-color: rgb(255,213,233);
}

/* Topページ
--------------------------------------------------- */
#MovieArea .BlockHeader .Heading{
  color: rgb(255,  0,120);
}
#InformationArea .BlockHeader .Heading{
  color: rgb(255,  0,120);
}
#InformationArea .BlockContents {
  border: 1px solid rgba(255,  0,120 ,0.75);
}
            #InformationArea .BlockHeader p.ListButton a{
              background: rgba(255,  0,120,0.3);
            }
            #InformationArea .BlockHeader p.ListButton a:hover{
              background: rgba(255,  0,120,0.5);
            }
            #InformationArea .BlockHeader p.BlogButton a{
              background: rgba(255,213,233,0.3);
            }
            #InformationArea .BlockHeader p.BlogButton a:hover{
              background: rgba(255,213,233,0.4);
            }
                #SloganArea .Idiom .Heading span{
                  color: rgb(255,  0,120);
                }
        #SloganArea .SloganText{
          border-color: rgb(255,  0,120);
        }
            #PanelArea a{
              border-color: rgb(255,  0,120);
            }
            #PanelArea .SinglePanel a:hover .Heading.fontEnglish{
              color: rgb(255,  0,120);
            }



#MainContentsArea .NewsIndexBlock table .Title a:hover,
#InformationArea .NewsPostBlock table .Title a:hover,
#InformationArea .BlogPostBlock a:hover .TextItem ,
#MainContentsArea .NewsArchivesBlock table .Title a:hover{
  color: rgb(255,213,233)!important;
}

/* 仕事紹介
--------------------------------------------------- */
                #MainContentsArea section .TabMenu li a:hover{
                  background: rgba(255,  0,120,0.3);
                }
                #MainContentsArea section .TabMenu li a.Active{
                  background-color: rgb(119,  0, 84);
                }

/* 人財育成
--------------------------------------------------- */
#CareerPlansImageBlock .bx-wrapper .bx-pager.bx-default-pager a,
#CareerPlansImageBlock .bx-wrapper .bx-pager.bx-default-pager a{
  background-color: rgba(255,213,233,0.75);
  color: #000;
}
#CareerPlansImageBlock .bx-wrapper .bx-pager.bx-default-pager a:hover,
#CareerPlansImageBlock .bx-wrapper .bx-pager.bx-default-pager a.active{
  background-color: rgba(255,  0,120,0.65);
  color: #fff;
}


/* エントリー・お問合せ
--------------------------------------------------- */
        .RecruitEntryIndexPage #MainContentsArea table th{
          background-color: rgba(255,213,233,0.75);
        }

/* お知らせ
---------------------------------------------------
.RecruitnewsIndexPage #MainContentsArea .NewsIndexBlock table th,
.RecruitnewsIndexPage #MainContentsArea .NewsIndexBlock table td{
  background-color: rgba(119,  0, 84, 0.5);
} */





/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    サイト共通部                                  */
/*    ・ヘッダ・フッタの装飾                        */
/*    ・全体大枠のレイアウト定義                    */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
html{
  background: #fff;
  font-size: 110%;
  line-height: 2;
}
body{
  overflow-wrap: break-word;
  word-wrap    : break-word;
  margin: 0 auto;
  min-width: 320px;
}
#World{
  position: relative;
  text-align: left;
  padding-top: 98px;
  overflow-y: hidden;
  background: #f8f8f2;
}
                body.rsbp-over-bp3.SpView #World{
                    padding-top: 67px;
                }



/*
.SpMenuOpen #World{
  overflow-y: hidden;
}*/
/* rsbp-under-bp1 */
.rsbp-under-bp1 #World{
  padding-top: 67px;
}


/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    基本レイアウト                                */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */

body{
}
#World{
}
.SpView #World,
.TbView #World,
.PcView.rsbp-under-bp1 #World{
  font-size: 70%;
}


/* サイトのページ幅 */
.PageWidthSetter{
  margin: 0 auto;
  max-width: 970px;
}

#HeaderDivision   ul,
#HeaderNavigation ul,
#FooterDivision   ul{
  list-style: none;
}
#HeaderDivision   ul:not([class]),
#HeaderDivision   ol:not([class]),
#HeaderDivision   dl:not([class]),
#HeaderNavigation ul:not([class]),
#HeaderNavigation ol:not([class]),
#HeaderNavigation dl:not([class]),
#FooterDivision   ul:not([class]),
#FooterDivision   ol:not([class]),
#FooterDivision   dl:not([class]){
  margin: 0;
}
#HeaderDivision   a,
#HeaderNavigation a,
#FooterDivision   a{
  text-decoration: none;
}

#InformationArea{
}


/* ++++++++++++++++++++++++++++++++++++++++++++++++ */
/*    Header, Contents, Footer                      */
/* ++++++++++++++++++++++++++++++++++++++++++++++++ */


#HeaderBaseMenu .PageWidthSetter,
#HeaderDivision .PageWidthSetter{
  max-width: 1100px;
}


/* HeaderDivision
--------------------------------------------------- */
#HeaderBaseMenu{
  background: #ff4ca0;
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 2500;
}
    #World #HeaderBaseMenu p.Entry{
    }
        #World #HeaderBaseMenu p.Entry a{
          display: block;
          background-color: rgb(68, 158, 216);
          /*background: url(../../img/recruit/common/decoration/bg-grd-yellowblue) repeat-y top left;*/
          color: #fff;
          padding: 0.1em 1.6em 0.1em 1.3em;
          letter-spacing: 0.15em;
          font-weight: bold;
          box-shadow: 0 3px 3px 0 rgba(0,0,0,0.3);
          position: absolute;
          top  : 101px;
          right: 0;
          text-decoration: none;
        }
        #World #HeaderBaseMenu p.Entry a:hover{
          right: -5px;
        }
        #World #HeaderBaseMenu p.Entry a:before{
          position: absolute;
          content: '';
          border-style: solid;
          /*border-color: transparent rgb(237, 227, 15);*/
          border-color: transparent rgb(68, 158, 216);
        }
        #World #HeaderBaseMenu p.Entry a:before{
          left: -1.25em;
          top : 0px;
          border-width: 0 1.25em 2.25em 0;
        }
    #World #HeaderBaseMenu ul{
      display: table;
      margin: 0 0 0 auto;
    }
        #HeaderBaseMenu ul li{
          display: table-cell;
          vertical-align: middle;
          padding-right: 0.75rem;
          font-size: 55%;
        }
        #HeaderBaseMenu ul li.Entry{
          padding-right: 2.5rem;
          font-size: 60%;
        }
            #HeaderBaseMenu ul li a{
              display: block;
              padding: 0 2em;
              position: relative;
              line-height: 1.15rem;
              letter-spacing: 0.1em;
              text-decoration: none;
              font-weight: bold;
            }
            #HeaderBaseMenu ul li.GroupSite a{
              background-color: rgb(255,213,233);
              color: rgba(0,0,0,0.55);
            }
            #HeaderBaseMenu ul li.Recruit a{
              background-color: rgba(255,  0,120,0.25);
              color: rgba(255,255,255,0.7);
            }
            #HeaderBaseMenu ul li a:before,
            #HeaderBaseMenu ul li a:after{
              position: absolute;
              content: '';
              border-style: solid;
            }
            #HeaderBaseMenu ul li a:before{
              left: -0.74rem;
              top : 0px;
              border-width: 0 0 1.15rem 0.75rem;
            }
            #HeaderBaseMenu ul li a:after{
              right: -0.74rem;
              top : 0px;
              border-width: 1.15rem 0.75rem 0 0;
            }
            #HeaderBaseMenu ul li.GroupSite a:before,
            #HeaderBaseMenu ul li.GroupSite a:after{
              border-color: rgb(255,213,233) transparent;
            }
            #HeaderBaseMenu ul li.Recruit a:before,
            #HeaderBaseMenu ul li.Recruit a:after{
              border-color: rgba(255,  0,120,0.3) transparent;
            }

            #HeaderBaseMenu ul li.GroupSite a:hover{
              color: #000;
            }
            #HeaderBaseMenu ul li.Recruit a:hover{
              color: #fff;
            }

/* under-bp1 */
.SpView #HeaderBaseMenu,
.TbView #HeaderBaseMenu,
.PcView.rsbp-under-bp1 #HeaderBaseMenu{
  display: none;
}


/* HeaderDivision
--------------------------------------------------- */
#HeaderDivision{
  background: #fff;
  position: fixed;
  width: 100%;
  top: 20px;
  z-index: 2000;
  box-shadow: 0px 5px 10px -5px rgba(0,0,0,0.1);
}
                body.rsbp-over-bp3.TbView #HeaderDivision,
                body.rsbp-over-bp3.SpView #HeaderDivision{
                  top: 0;
                }



    #HeaderDivision .BlockLeft{
      float: left;
      width: 270px;
      padding: 13px 0 17px;
    }
        #HeaderDivision .BlockLeft h1{
        }
            #HeaderDivision .BlockLeft h1 span{
              display: block;
            }
            #HeaderDivision .BlockLeft h1 .Sub{
            }
            #HeaderDivision .BlockLeft h1 .Main{
              margin: 4px 0;
            }
                #HeaderDivision .BlockLeft h1 .Main img{
                  max-width: 235px;
                }
            .rsbp-under-bp1 #HeaderDivision .BlockLeft h1 .Main{
              margin: 6px 0 2px 5px;
            }
                .rsbp-under-bp1 #HeaderDivision .BlockLeft h1 .Main img{
                  height: 2.5em;
                }
            #HeaderDivision .BlockLeft h1 .En{
            }
    #HeaderDivision .BlockRight{
      float: right;
      width: 730px;
    }
        /* HeaderNavigation
        --------------------------------------------------- */
        #HeaderNavigation{
        }
            #HeaderNavigation #DropMenu{
            }
                #HeaderNavigation #DropMenu > li{
                  float: left;
                  width: 16%;
                  line-height: 1.25em;
                }
                /*
                #HeaderNavigation #DropMenu > li:nth-child(2){
                  float: left;
                  width: 20%;
                }*/
                    #HeaderNavigation #DropMenu li a{
                      display: block;
                      color: #000;
                      letter-spacing: 0.05em;
                    }
                    #HeaderNavigation #DropMenu li a:hover{
                      color: rgb(255,  0,120);
                    }
                    #HeaderNavigation #DropMenu > li > a{
                      position: relative;
                      padding: 1.1rem 0 1rem;
                      text-align: center;
                    }
                        #HeaderNavigation #DropMenu > li > a > h2{
                          font-size: 77.5%;
                          font-weight: normal;
                        }
                        #HeaderNavigation #DropMenu > li > a > .EnName{
                          font-size: 45%;
                          color: #acacac;
                        }
                    #HeaderNavigation #DropMenu > li > ul{
                      max-width: 192px;
                    }
                    #HeaderNavigation #DropMenu > li:first-child > ul{
                      left : auto;
                      right: 0;
                    }
                        #HeaderNavigation #DropMenu > li > ul > li > a{
                          background-color: #f8f8f2;
                          border-top: 1px solid rgba(255,255,255,0.3);
                          padding-left: .75em;
                          font-size: 75%;
                        }
                        #HeaderNavigation #DropMenu > li:nth-child(2) ul  > li:nth-child(1) a{
                          letter-spacing: -0.07em;
                        }
                        #HeaderNavigation #DropMenu > li > ul > li > a:hover{
                          background-color: #c5c4c4;
                        }
/* rsbp-under-bp1 */
.SpView #HeaderNavigation,
.TbView #HeaderNavigation,
.PcView.rsbp-under-bp1 #HeaderNavigation{
  display: none;
}
.rsbp-under-bp1 #HeaderDivision{
  top: 0px;
}



/* ContentsDivision
--------------------------------------------------- */
#ContentsDivision {
}
    #Container{
      padding-bottom: 70px;
    }
    #Container .PageWidthSetter{
      padding: 0 15px;
    }
        #Container #MainContentsArea .BlockContents{
          padding: 0 10px;
        }
        /* rsbp-under-bp1 */
        .rsbp-under-bp1 #Container #MainContentsArea .BlockContents{
          padding: 0 5px;
        }


        #PageTitleArea{
          padding: 40px 0;
          background: #fff;
          background: url(../../img/recruit/common/decoration/bg_title.png) no-repeat center top;
          background-size: cover;
        }
            #PageTitleArea .Title{
              text-align: center;
            }
            #PageTitleArea .Title.En{
              font-family:  "arial narrow" , "Arial", sans-serif;
              font-size: 375%;
              line-height: 1;
            }
            #PageTitleArea .Title.Ja{
              letter-spacing: 0.05em;
              font-weight: normal;
              font-family:  "Meiryo", sans-serif;
              font-size: 120%;
            }
        /* rsbp-under-bp1 */
        .rsbp-under-bp1 #PageTitleArea{
          padding: 3vw 0;
        }
        /* rsbp-under-bp2 */
        .rsbp-under-bp2 #PageTitleArea{
          font-size: 90%;
        }
        /* rsbp-under-bp3 */
        .rsbp-under-bp3 #PageTitleArea{
          font-size: 2.5vw;
          padding: 4.5vw 0;
        }


        #BreadcrumbsArea {
          color: #666;
          font-size: 75%;
          margin-top: 1em;
        }
            #BreadcrumbsArea a{
              text-decoration: none;
            }
            #BreadcrumbsArea a[href$="recruit/index"],
            #BreadcrumbsArea a[href$="recruit/index"] + span{
              display: none;
            }


        #MainContentsArea{
          margin-top: 30px;
        }
        /* rsbp-under-bp1 */
        .rsbp-under-bp1 #MainContentsArea{
          margin-top: 3vw;
        }

#PageTop{
  position: fixed;
  z-index: 1000;
}
    #PageTop p{
      text-align: right;
      margin-bottom: 0;
      background: #f1e52e;
    }
        #PageTop a{
          display: inline-block;
          padding: 0.9em 1.25em;
          background: rgba(241,229,46,0.9);
          line-height: 1;
          text-decoration: none;
        }
        #PageTop a:hover{
          opacity: 0.75;
        }
        #PageTop a:before{
          left: 0.9em;
          top : 0.5em;
          width : 0.8em;
          height: 0.8em;
          border-top  : 4px solid #fff;
          border-right: 4px solid #fff;
          -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
        }
/* rsbp-over-bp1 */
.rsbp-over-bp1 #PageTop{
  right: 40px;
  bottom: 30px;
}
/* rsbp-under-bp1 */
.rsbp-under-bp1 #PageTop{
  right: 1vw;
  bottom: 5vw;
}
/* rsbp-under-bp2 */
.rsbp-under-bp2 #PageTop{
  bottom: 2vw;
}
.rsbp-under-bp2 #PageTop .PageWidthSetter{
  padding: 0;
}

/* FooterDivision
--------------------------------------------------- */
#FooterDivision {
}

    #FooterNavigation{
      padding: 35px 0;
      background-color: #fff;
    }
    #FooterNavigation > .PageWidthSetter{
      width: 85%;
      position: relative;
    }
        #FooterNavigation .FooterTitleBlock{
          display: table;
          width: 100%;
          margin-bottom: 25px;
        }
            #FooterNavigation .FooterTitleBlock > p{
              display: table-cell;
              vertical-align: middle;
            }
            #FooterNavigation .FooterTitleBlock p.SiteTitle{
            }
            #FooterNavigation .FooterTitleBlock p.GroupSiteButton{
            }
                #FooterNavigation .FooterTitleBlock p.GroupSiteButton a{
                  border: 3px solid rgb(255,213,233);
                  background-color: rgba(255,255,255,0.75);
                  padding: 0.37em 1.5em;
                  font-size: 70%;
                  font-weight: bold;
                  letter-spacing: 0.15em;
                }
                #FooterNavigation .FooterTitleBlock p.GroupSiteButton a:hover{
                  background-color: rgba(255,213,233,0.5);
                }
            #FooterNavigation .FooterTitleBlock p.EntryButton{
              text-align: right;
            }
                #FooterNavigation .FooterTitleBlock p.EntryButton a{
                  background: rgb(255,  0,120);
                  color: #fff;
                  font-weight: bold;
                  padding: 0.35em 2.5em 0.3em;
                  font-size: 90%;
                  letter-spacing: 0.2em;
                }
                #FooterNavigation .FooterTitleBlock p.EntryButton a:hover{
                  background: rgba(255,  0,120,0.55);
                }
        #FooterNavigation .SitemapMenuBlock{
          margin-top: 10px;
        }
            #FooterNavigation .SitemapMenuBlock ul{
            }
                #FooterNavigation .SitemapMenuBlock > ul > li{
                  float: left;
                  width: 20%;
                }
                    #FooterNavigation .SitemapMenuBlock > ul > li > p{
                    }
                        #FooterNavigation .SitemapMenuBlock > ul > li > p > a{
                          display: block;
                          padding: 0.5em 0 0.5em 1.1em;
                        }
                        #FooterNavigation .SitemapMenuBlock > ul > li > p > a:hover{
                          padding-left: 0.9em;
                        }
                        #FooterNavigation .SitemapMenuBlock > ul > li > p > a:before{
                          left : 0em;
                          top  : 0.75em;
                          width : 0.6em;
                          height: 1em;
                          border-top  : 3px solid #4a4a4a;
                        }
                        #FooterNavigation .SitemapMenuBlock > ul > li > p > a:hover:before{
                          border-color  : rgb(255,  0,120);
                        }
                    #FooterNavigation .SitemapMenuBlock > ul > li > ul{
                      margin-left: 1.1rem;
                    }
                        #FooterNavigation .SitemapMenuBlock > ul > li > ul > li{
                        }
                            #FooterNavigation .SitemapMenuBlock > ul > li > ul > li > a{
                              display: block;
                              font-size: 80%;
                              padding: 0.35em 0;
                            }
                            #FooterNavigation .SitemapMenuBlock > ul > li > ul > li > a:hover{
                              color: rgb(255,  0,120);
                            }
        #FooterNavigation .FacilityListBlock{
          background: rgba(255,213,233,0.75);
          margin: 40px 0 20px;
        }
            #FooterNavigation .FacilityListBlock ul{
              display: table;
              margin: 0 auto;
            }
                #FooterNavigation .FacilityListBlock ul li{
                  display: table-cell;
                }
                    #FooterNavigation .FacilityListBlock ul li a{
                      display: block;
                      font-size: 75%;
                      padding: 0.75em 1em 0.75em 1.15em;
                      position: relative;
                    }
                    #FooterNavigation .FacilityListBlock ul li a:before,
                    #FooterNavigation .FacilityListBlock ul li a:after{
                      position: absolute;
                      top: 0;
                      bottom: 0;
                      left: 0;
                      margin: auto;
                      content: "";
                      vertical-align: middle;
                    }
                    #FooterNavigation .FacilityListBlock ul li a:before{
                      box-sizing: border-box;
                      width:  10px;
                      height: 10px;
                      border: 1px solid #000;
                    }
                    #FooterNavigation .FacilityListBlock ul li a:after{
                      left: 4px;
                      box-sizing: border-box;
                      width: 3px;
                      height: 3px;
                      border: 3px solid transparent;
                      border-left: 3px solid #000;
                    }

    .RecruitCompanyIndexPage         #FooterNavigation,
    .RecruitCompanyCertificationPage #FooterNavigation,
    body[class*="CertificationArchives"]  #FooterNavigation,
    .RecruitStaff-workIndexPage      #FooterNavigation,
    .RecruitProgramIndexPage         #FooterNavigation,
    .RecruitProgramWelfarePage       #FooterNavigation,
    .RecruitCareersIndexPage         #FooterNavigation,
    .RecruitCareersMidcareerPage     #FooterNavigation,
    .RecruitCareersFaqPage           #FooterNavigation,
    .RecruitEntryIndexPage           #FooterNavigation{
      /*background: url(../../img/recruit/common/decoration/bg_stripe2_gray.png); */
      background: #fff;
    }
/* rsbp-under-bp1 */
        .rsbp-under-bp1 #FooterNavigation .FacilityListBlock{
          padding: .5em 1em;
        }
            .rsbp-under-bp1 #FooterNavigation .FacilityListBlock ul{
              display: block;
            }
                .rsbp-under-bp1 #FooterNavigation .FacilityListBlock ul li{
                  display: block;
                  float: left;
                  width: 25%;
                }
                    .rsbp-under-bp1 #FooterNavigation .FacilityListBlock ul li a{
                      padding: 0.6em 0.5em 0.6em 1.5em;
                    }
/* rsbp-under-bp2 */
.rsbp-under-bp2 #FooterNavigation{
  padding: 5vw 0 0;
}
    .rsbp-under-bp2 #FooterNavigation > .PageWidthSetter{
      width: 100%;
      padding: 0;
    }
        .rsbp-under-bp2 #FooterNavigation .FooterTitleBlock{
          margin-bottom: 0;
        }
            .rsbp-under-bp2 #FooterNavigation .FooterTitleBlock p{
              display: block;
              text-align: center;
              margin: 3vw 0;
            }
            .rsbp-under-bp2 #FooterNavigation .FooterTitleBlock p.SiteTitle{
              margin-bottom: 5vw;
            }
                .rsbp-under-bp2 #FooterNavigation .FooterTitleBlock p.SiteTitle img{
                  height: 2em;
                }
                .rsbp-under-bp2 #FooterNavigation .FooterTitleBlock p a{
                  width: 60%;
                }
        .rsbp-under-bp2 #FooterNavigation .SitemapMenuBlock{
          display: none;
        }
        .rsbp-under-bp2 #FooterNavigation .FacilityListBlock{
          margin: 4.5vw 0 0;
        }
                .rsbp-under-bp2 #FooterNavigation .FacilityListBlock ul li{
                  width: 33.3%;
                }
/* rsbp-under-bp3 */
                .rsbp-under-bp3 #FooterNavigation .FacilityListBlock ul li{
                  width: 50%;
                }
                    .rsbp-under-bp3 #FooterNavigation .FacilityListBlock ul li a{
                      padding: 0.6em 0.5em 0.6em 1.5em;
                    }


    #Copyright{
      background: #ff4ca0;
    }
        #Copyright .inner{
          display: table;
          width: 100%;
          padding: 10px 0;
        }
            #Copyright p{
              display: table-cell;
              vertical-align: middle;
            }
            #Copyright .Text{
              font-family: arial, sans-serif;
              font-size: 55%;
              color: #fff;
            }
            #Copyright .Logo,
            #Copyright .Logo img{
              width: 140px;
              vertical-align: middle;
            }
/* rsbp-under-bp2 */
.rsbp-under-bp2 #Copyright .PageWidthSetter{
  padding: 0;
  text-align: center;
}
.rsbp-under-bp2 #Copyright .Logo{
  display: none;
}

.PageTitle{
  display:none;
}
