@charset 'utf-8';

/* =========================================================
 PC・スマホ共通
========================================================= */
body {
  font-family: "Helvetica Neue", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

#middleWrapper,
#middleBox::after {
  background: none;
}

/* =========================================================
 PC用
========================================================= */
@media screen and (min-width: 769px) {

  /* =========================================================
 index コンテンツ
========================================================= */
  body {
    color: #323232;
    font-size: 14px;
    position: relative;
  }

  /* =========================================================
 indexページ
========================================================= */
  .indexContents {
    margin: 0 auto;
    max-width: 1920px;
    min-width: 1040px;
    position: relative;
  }

  /* ----- グループロゴ ----- */
  .indexContents header {
    background-color: #ffffff;
    color: #ffffff;
    width: 100%;
    text-align: center;
    line-height: 16px;
    font-size: 12px;
    padding: 3px 0;
    height: 76px;
  }

  .indexGroupLogo {
    margin: 0 auto;
    padding: 15px 0 0;
    width: 248px;
  }

  /* ----- index詳細装飾 ----- */
  .indexBlock {
    width: 100%;
  }

  .indexSubText {
    color: #232323;
    font-size: 12px;
    line-height: 30px;
    margin: 10px auto 0;
    text-align: center;
  }

  .indexBlock h1 {
    border-bottom: 4px solid #e11958;
    background-image: url(/img/index/bg_heading.jpg);
    color: #ffffff;
    font-size: 12px;
    height: 30px;
    line-height: 32px;
    text-align: center;
    /* position: absolute; */
    /* top: 82px; */
    /* z-index: 10; */
    /* left: 50%; */
    /* transform: translateX(-50%); */
    width: 100%;
    background-position-x: center;
  }

  .indexBox {
    background-image: url("/img/index/bg_index_new_202405.jpg");
    background-position: center 0;
    background-repeat: no-repeat;
    height: 915px;
    position: relative;
    width: 1920px;
    z-index: 1;
    left: 50%;
    transform: translateX(-50%);
  }

  .indexParts {
    /* background-image: url(/img/index/bg_center.jpg); */
    /* background-repeat: no-repeat; */
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 0;
    right: -470px;
    width: 410px;
    height: 100%;
  }

  .indexLogo {
    width: 403px;
    height: 170px;
    margin: 110px auto 65px;
    /* background: url(/img/index/logo.png) no-repeat center; */
    /* text-indent: -9999px; */
    /* position: absolute; */
    /* top: 76px; */
    /* left: 50%; */
    /* transform: translateX(-50%); */
    /* z-index: 0; */
  }

  .enterBtn {
    /* position: absolute; */
    /* top: 341px; */
    /* left: 50%; */
    /* transform: translateX(-50%); */
    margin: 0 auto 45px;
  }

  .enterBtn.officialEnter {
    width: 365px;
    margin-bottom: 25px;
  }

  .enterBtn.heavenEnter {width: 341px;}

  .enterBtn:hover {
    background-color: #ffffff;
    opacity: 0.65;
  }

  .enterBtn:hover a {
    color: #bc8157;
  }

  .enterBtn a {
    width: 100%;
    height: 100%;
    display: block;
    color: #ffffff;
    text-decoration: none;
    font-size: 25px;
    /* line-height: 62px; */
    text-align: center;
  }

  .under18SmallIcon {
    width: 112px;
    margin: 56px auto 0;
  }

  /* ----- common.cssの打ち消し ----- */
  #middleBox:before,
  .ie8_hack_middleBoxBefore {
    content: none;
  }

  #contentsWrapper {
    background-image: none;
    box-shadow: none;
    padding-top: 25px;
    width: 980px;
    border: 0;
  }

  #underBox {
    display: block;
    margin: 20px auto 0;
    text-align: center;
    position: relative;
  }

  .under18 {
    /* background-image: url(/img/index/bg_exit.png); */
    /* background-repeat: no-repeat; */
    /* background-position: center 0; */
    font-size: 12px;
    /* height: 85px; */
    /* padding-top: 85px; */
    /* left: 50%; */
    /* transform: translateX(-50%); */
    line-height: 20px;
    /* position: absolute; */
    top: 440px;
    color: #4b4b4b;
    text-align: center;
    /* width: 440px; */
    margin: 0 auto;
  }

  .under18 .icon {width: 84px;height: 77px;margin: 0 auto 50px;}

  .under18 .text {/* background-color: #e11958; *//* color: #ffffff; *//* padding: 30px 0; */}

  .under18 .text p {
    font-size: 12px;
  }

  .under18 .text p a {
    color: inherit;
    text-decoration: underline;
    margin-top: 8px;
    display: inline-block;
  }

  .under18 .text p a:hover {
    text-decoration: none;
  }

  .banner {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    justify-content: space-between;
  }

  .banner p {
    width: 100%;
    margin-bottom: 20px;
    text-align: center;
  }

  .banner a {
    color: #ffffff;
    line-height: 1.7;
  }

  .banner img {
    width: 100%;
  }

  .bannerBlock {
    margin: 20px auto;
  }

  .bannerBlock div {
    margin: 20px auto;
    text-align: center;
  }

  h2.info_hl {
    width: 100%;
    padding: 0;
    margin: 0;
    color: #5d5d5d;
    font-size: 20px;
    font-weight: bold;
  }

  .info_txt {
    margin: 0 auto 50px;
    width: 630px;
    color: #686868;
    text-align: left;
  }

  .info_txt h3.info_txt_hl {
    color: #ff3300;
    font-weight: bold;
    text-align: center;
    margin: 30px 0 0;
    width: 100%;
  }

  .info_txt h2 {
    font-weight: bold;
    font-size: 14px;
    margin: 25px auto 5px;
    color: #333333;
    padding-left: 0;
    background: none;
    font-family: inherit;
    height: 27px;
    line-height: 27px;
    display: inline-block;
    vertical-align: middle;
    padding: 0 0 0 5px;
    width: auto;
  }

  .info_txt h2::before {
    content: "";
    background: #e11958;
    display: inline-block;
    height: 27px;
    line-height: 27px;
    margin: 0 10px 0 0;
    vertical-align: middle;
    width: 8px;
  }

  .info_txt dt {
    border-bottom: 1px dotted;
    font-weight: bold;
    margin-bottom: 10px;
    padding: 21px 0 10px;
  }

  .info_txt dd {
    font-size: 12px;
    line-height: 1.7;
  }

  .info_txt p {
    font-size: 14px;
    margin-bottom: 10px;
    line-height: 1.5em;
    color: #1d1e1f;
  }

  .info_txt p span {
    font-size: 12px;
  }

  .bannerBlock div a {
    margin: 5px 8px;
    display: inline-block;
    text-decoration: underline;
    line-height: 1.5;
  }

  .bannerBlock div a:hover {
    text-decoration: none;
  }

  .bannerBlock div.twoBanner a {
    margin: 5px;
  }

  .seoLink li a {
    margin: 0;
    line-height: 40px;
    color: #e11958;
  }

  h3 {
    width: 980px;
    margin: 0 auto 10px;
  }

  /* 衛生検査証明書 */
  .hygieneBox {
    width: 640px;
    margin: 15px auto 0;
  }

  .hygieneBox p {
    color: #ff5b00;
    font-size: 12px;
    font-weight: bold;
    margin: 20px 0;
    text-align: center;
  }

  .hygieneImg {
    border: 1px solid #b4b4b4;
    width: 100%;
  }

  .hygieneBox h3 {
    margin-bottom: 0;
    line-height: 1;
    background: none;
    width: 100%;
    height: auto;
    font-size: 16px;
    font-family: inherit;
    color: #686868;
    padding-top: 10px;
  }

  .indexBanner iframe {
    width: 660px;
  }
  #middleBox {
    background-image: none;
  }

}

/* =========================================================
 スマホ用
========================================================= */
@media screen and (max-width: 768px) {
  .indexGroupLogo {
    margin: 0 auto;
    padding: 2% 0;
    width: 50%;
  }

  .indexLogo img {
    display: none;
  }

  h1 {
    background-image: url("/img/index/bg_heading.jpg");
    background-size: auto 100%;
    color: #ffffff;
    line-height: 6vw;
    text-align: center;
    border-bottom: 1.35vw solid #e11958;
  }

  .enterBtn a {
    text-decoration: none;
  }

  .under18 {
    width: 90%;
    height: auto;
    bottom: -19vw;
    left: 0;
    right: 0;
    margin: 6% auto 0;
    text-align: center;
    color: #333333;
    /* display: flex; */
    /* flex-direction: column-reverse; */
  }

  .under18 div:first-of-type {
    /* margin-bottom: 1vw; */
  }

  .under18 div img {
    width: 9.4vw;
    height: 8.6vw;
  }

  .under18 div p {
    line-height: 1.7;
    font-size: 3vw;
    margin-bottom: 2vw;
  }

  .under18 div p a {
    color: inherit;
  }

  footer {
    font-size: 90%;
    padding: 0 0 0;
    text-align: center;
  }

  footer a {
    font-size: 100%;
  }

  .indexParts {
    /* padding-top: 89%; */
  }

  /* .indexLogo {width: 59%;margin: 0 3% 35% auto;} */
  .indexLogo {width: 59%;margin: 0 3% 60% auto;}

  .enterBtn {
    width: 94%;
    margin: 0 auto 3.5%;
    box-sizing: border-box;
  }

  .enterBtn a {
    width: 100%;
    height: 100%;
    display: block;
    /* margin: 0 auto; */
    /* color: #ffffff; */
    /* line-height: 17vw; */
    /* text-align: center; */
    /* font-size: 5.5vw; */
    /* letter-spacing: 0.2vw; */
  }


  /*求人ボタン*/
  .indexBox {
    background-image: url(/s/img/index/bg_index_new_202405.jpg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position-y: top;
    position: relative;
    padding-top: 35%;
  }

  .banner {
    text-align: center;
    margin: 4vw auto 0;
    width: 96%;
  }

  .banner p {
    width: 100%;
    margin: 0 auto 1vw;
  }

  .banner a {
    color: #333333;
    font-size: 2.8vw;
    width: 100%;
    display: inline-block;
    line-height: 1.7;
  }

  .indexBanner {
    width: 96%;
    margin: 0 auto;
  }

  .indexBanner iframe {
    width: 100%;
  }

  .indexrecruitBlock {
    margin: 4% auto;
    padding: 0 0 1%;
    box-shadow: 0 2px 2px 0 rgb(96 96 96 / 60%);
  }

  .recruitRequirements {
    width: 95%;
    margin: 0 auto;
    height: auto;
  }

  table, td, th {
    border: solid 1px #969696;
    border-collapse: collapse;
    font-size: 90%;
    vertical-align: middle;
  }

  .recruitRequirements th {
    width: 25%;
    padding: 5% 0px 5% 3%;
    background-color: #a2d1ad;
  }

  .recruitRequirements td {
    padding: 3%;
    line-height: 1.5;
  }

  p.RecruitText {
    color: #333333;
    font-weight: normal;
    margin: 5% 0;
    font-size: 95%;
  }

  .recruitSet {
    margin: 3% auto;
    padding: 0 0 4%;
  }

  h4 {
    height: 12vw;
    line-height: 11.5vw;
    font-size: 4vw;
    font-weight: bold;
    text-align: center;
    color: #ffffff;
    background-color: #86c193;
    margin-top: 6%;
  }

  h4 img {
    height: 85%;
    position: absolute;
    right: 5%;
    top: 0;
    width: auto;
  }

  .inquiryBtn li {
    border-radius: 4px;
    box-shadow: 0 3px 0 0 #48634d;
    box-sizing: border-box;
    height: 13vw;
    width: 100%;
    margin: 3% auto 1.8vw;
    position: relative;
  }

  .inquiryBtn li:first-child {
    margin-top: 0;
  }

  .inquiryBtn li.line {
    background-color: #25c302;
  }

  .inquiryBtn li.mail {
    background-color: #2d72f3;
  }

  .inquiryBtn li.tel {
    background-color: #00b6aa;
  }

  .inquiryTextSmall, .inquiryTextLarge {
    color: #ffffff;
    font-weight: bold;
    line-height: 1;
    width: auto;
  }

  .inquiryTextSmall {
    font-size: 13px;
    letter-spacing: 0;
    margin: 0 0 3px;
  }

  .inquiryMessage {
    width: 95%;
    margin: 4% auto 0;
  }

  .inquiryBtn {
    padding: 0;
    width: 94%;
    margin: 3vw auto 0;
  }

  .inquiryBtn li::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 2vw;
    transform: translate(0, -50%);
    width: 8.6vw;
    height: 12vw;
  }

  .inquiryBtn li.line::before {
    background: url(https://cinimg.awscf.net/gotanda-mseikan.jp/s/img/recruit/recruit_common/icon_inquiry_01.png) no-repeat center;
    background-size: contain;
  }

  .inquiryBtn li.mail::before {
    background: url(https://cinimg.awscf.net/gotanda-mseikan.jp/s/img/recruit/recruit_common/icon_inquiry_02.png) no-repeat center;
    background-size: contain;
  }

  .inquiryBtn li.tel::before {
    background: url(https://cinimg.awscf.net/gotanda-mseikan.jp/s/img/recruit/recruit_common/icon_inquiry_03.png) no-repeat center;
    background-size: contain;
  }

  .inquiryBtn li.tel p, .inquiryBtn li.mail p, .inquiryBtn li.line p {
    bottom: 0;
    left: 12vw;
    margin: auto;
    position: absolute;
    line-height: 7vw;
    font-size: 5.3vw;
    letter-spacing: 0;
    bottom: 0.8vw;
    color: #ffffff;
    font-weight: bold;
  }

  .inquiryBtn li p.inquiryTextSmall {
    font-size: 3vw;
    bottom: 5.9vw;
  }

  .inquiryBtn li p span {
    font-size: 6vw;
    font-weight: bold;
    margin: 0 2vw 0 0;
  }

  .bannerBlock {
    margin: 4% auto;
  }

  .bannerBlock div {
    margin: 0 auto 3%;
    text-align: center;
  }

  .bannerBlock a {
    display: inline-block;
    font-size: 3.2vw;
  }

  .bannerBlock div.twoBanner a {
    margin: 0 0 4%;
  }

  .bannerBlock img {
    display: block;
    margin: 0 auto;
  }

  .info_txt {
    margin-bottom: 7%;
}

  .info_txt h2 {
    text-indent: 0;
    margin: 6% auto 3%;
    font-weight: normal;
    padding-left: 3%;
    color: #ffffff;
    background-color: #2f2f2f;
    text-align: center;
    font-size: 3.8vw;
  }

  .info_txt p {text-align: left;line-height: 1.35;width: 96%;margin: 0 auto 2%;}

  .info_txt p span {font-size: 3vw;}

  .info_txt p a {display: inline;}

  .seoLink {
    display: flex;
    flex-wrap: wrap;
    width: 94%;
    margin: 0 auto;
  }

  .info_txt dl {
    width: 96%;
    margin: 0 auto;
    line-height: 1.35;
  }

  .seoLink li {
    /* background-color: #ffffff; */
    /* border: 1px solid #009cff; */
    margin: 1%;
    /* padding: 0 1.75%; */
    height: 8vw;
    line-height: 8vw;
  }

  .seoLink li a {
    color: #009cff;
    font-size: 3vw;
    margin: 0;
    line-height: 8vw;
    border: 1px solid #009cff;
    background-color: #ffffff;
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 0 0.75em;
  }

  .blogCommonBanner {
    width: 96%;
    margin: 0 auto 2vw;
    position: relative;
  }

  .blogCommonBanner ul {
    position: absolute;
    bottom: 6.75%;
    display: flex;
    justify-content: space-evenly;
    width: 83%;
  }

  .blogCommonBanner li {
    color: #ffffff;
    font-size: 3vw;
  }

  .bannerBlock a {
    display: inline-block;
    font-size: 3.2vw;
    margin: 0 1%;
    text-decoration: underline;
    line-height: 1.3;
  }

  .renewalText {
    padding: 1.5% 0;
    background-size: contain;
    background-color: #000000;
}

  .renewalText p {
    font-size: 3.44vw;
    letter-spacing: 0.4vw;
}

  /* 衛生検査証明書 */
  .hygieneBox {margin: 4% auto 0;width: 98%;max-width: 468px;}

  #bottomContents, #subFooterBox, #menuBottom, #footerBlock {
    display: none!important;
  }

  #footerCopyright {
    background-color: #191b1a;
    border-top: 0.8vw solid #353535;
  }

}
