@charset "UTF-8";
.bac-c-main {
  /*background-color: #EECE00;*/
  background-color: #EECE00;
  color: #000000;
}

.bac-c-sub {
  background-color: #0B93BE;
  color: #fff;
}

.bac-c-sub2 {
  background-color: #139C48;
  color: #fff;
}

.bac-c-main-light {
  background-color: #EECE0012;
}

.bac-c-gray-dark {
  background-color: #888888;
  color: #fff;
}

body {
  color: #222;
}

header {
  width: 100%;
  height: 61px;
  position: relative;
  color: #fff;
  border-bottom: 1px solid #EEEEEE;
  background: #fff;
  padding: 0px 0px 0px 16px;
  -webkit-transition: 0.2s ease;
  transition: 0.2s ease;
}
@media screen and (max-width: 768px) {
  header {
    padding: calc(100vw / 375 * 0 / 1.618) calc(100vw / 375 * 0 / 1.618) calc(100vw / 375 * 0 / 1.618) calc(100vw / 375 * 16 / 1.618);
  }
}
@media screen and (max-width: 920px) {
  header {
    padding: 0px 0px 0px 64px;
    height: 48px;
  }
}
@media screen and (max-width: 920px) and (max-width: 768px) {
  header {
    padding: calc(100vw / 375 * 0 / 1.618) calc(100vw / 375 * 0 / 1.618) calc(100vw / 375 * 0 / 1.618) calc(100vw / 375 * 64 / 1.618);
  }
}
header a {
  color: initial;
}
header .header__logo {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  header .header__logo {
    max-width: 100%;
  }
}
header .header__logo img {
  width: 189px;
  height: 45px;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 768px) {
  header .header__logo img {
    width: calc(100vw / 768 * 189);
  }
}
header nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  right: 0px;
  top: 0px;
  display: flex;
  -ms-flex-line-pack: end;
      align-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
header nav .header__textlink {
  margin-right: 24px;
}
@media screen and (max-width: 920px) {
  header nav .header__textlink {
    display: none;
  }
}
header nav .header__buttonlink {
  font-weight: bold;
  font-size: 20px;
  padding-right: 16px;
  padding-left: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 61px;
}
@media screen and (max-width: 768px) {
  header nav .header__buttonlink {
    font-size: calc(100vw / 768 * 16);
    padding-right: calc(100vw / 768 * 16);
    padding-left: calc(100vw / 768 * 16);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  header nav .header__buttonlink span {
    margin: auto auto 4px auto;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  header nav .header__buttonlink span {
    margin: auto auto 4px auto;
  }
}
@media screen and (max-width: 920px) {
  header nav .header__buttonlink {
    height: 48px;
  }
}
header nav .header__buttonlink img, header nav .header__buttonlink svg {
  margin-right: 8px;
}
@media screen and (max-width: 768px) {
  header nav .header__buttonlink img, header nav .header__buttonlink svg {
    margin: 8px auto auto auto;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  header nav .header__buttonlink img, header nav .header__buttonlink svg {
    margin: 8px auto auto auto;
  }
}

section.fv {
  padding: 32px 0px 24px 0px;
  padding-right: 16px;
  padding-left: 16px;
}
@media screen and (max-width: 768px) {
  section.fv {
    padding: calc(100vw / 375 * 32 / 1.618) calc(100vw / 375 * 0 / 1.618) calc(100vw / 375 * 24 / 1.618) calc(100vw / 375 * 0 / 1.618);
  }
}
@media screen and (max-width: 768px) {
  section.fv .container {
    max-width: 100%;
  }
}
section.fv .fv__bread {
  color: #747478;
  font-size: 11px;
  margin-bottom: 8px;
}
@media screen and (max-width: 768px) {
  section.fv .fv__bread {
    padding-left: 16px;
  }
}
section.fv .fv__bread span {
  margin-right: 5px;
}
section.fv .fv__img {
  position: relative;
  width: 100%;
}
@media screen and (max-width: 768px) {
  section.fv .fv__img {
    height: calc(100vw / 768 * 520);
  }
}
section.fv .fv__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
section.fv .fv__img h1 {
  position: absolute;
  left: 0px;
  bottom: 56px;
  font-size: 30px;
  font-weight: bold;
  color: #fff;
  background: rgba(34, 34, 34, 0.65);
  padding: 24px 32px;
}
@media screen and (max-width: 768px) {
  section.fv .fv__img h1 {
    bottom: calc(100vw / 375 * 56 / 1.618);
  }
}
@media screen and (max-width: 768px) {
  section.fv .fv__img h1 {
    font-size: calc(100vw / 375 * 30 / 1.618 );
  }
}
@media screen and (max-width: 404.5px) {
  section.fv .fv__img h1 {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  section.fv .fv__img h1 {
    padding: calc(100vw / 375 * 24 / 1.618) calc(100vw / 375 * 32 / 1.618);
  }
}

section.cta {
  padding: 24px 16px 16px 16px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  section.cta {
    padding: calc(100vw / 375 * 24 / 1.618) calc(100vw / 375 * 16 / 1.618) calc(100vw / 375 * 16 / 1.618) calc(100vw / 375 * 16 / 1.618);
  }
}
section.cta .flex {
  margin: auto;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  section.cta .flex {
    max-width: 320px;
  }
}
section.cta .flex a {
  padding: 16px 32px;
  white-space: nowrap;
  font-size: 20px;
  font-weight: bold;
  color: #000000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 195px;
          flex: 0 1 195px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  section.cta .flex a {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
section.cta .flex a img, section.cta .flex a svg {
  margin-right: 8px;
  width: 16px;
}

.stripe {
  background: url(../img/background_stripe.png);
}

section.youtube {
  padding: 24px 16px;
}
@media screen and (max-width: 768px) {
  section.youtube {
    padding: calc(100vw / 375 * 24 / 1.618) calc(100vw / 375 * 16 / 1.618);
  }
}
section.youtube .container {
  max-width: 720px;
}
section.youtube .container iframe {
  -o-object-fit: contain;
     object-fit: contain;
  aspect-ratio: 16/9;
  width: 100%;
  height: auto;
  margin: auto;
  display: block;
}

a {
  color: #0B93BE;
}

section.bosyu {
  padding: 32px 16px 40px 16px;
}
@media screen and (max-width: 768px) {
  section.bosyu {
    padding: calc(100vw / 375 * 32 / 1.618) calc(100vw / 375 * 16 / 1.618) calc(100vw / 375 * 40 / 1.618) calc(100vw / 375 * 16 / 1.618);
  }
}

.h1 {
  text-align: center;
  font-weight: bold;
  font-size: 2.8em;
  width: 100%;
  margin: -20px auto 20px auto;
}

.h2 {
  background-color: #EECE00;
  color: #000000;
  padding: 8px 16px;
  font-weight: bold;
  font-size: 24px;
}
@media screen and (max-width: 768px) {
  .h2 {
    font-size: calc(100vw / 375 * 24 / 1.618 );
  }
}
@media screen and (max-width: 505.625px) {
  .h2 {
    font-size: 20px;
  }
}
.h2 h2 {
  width: 100%;
  max-width: 960px;
  margin: auto;
}

table {
  border: 1px solid #D1D5DB;
  width: 100%;
}
table tr {
  border-top: 1px solid #D1D5DB;
}
table tr:nth-last-of-type(1) {
  border-bottom: 1px solid #D1D5DB;
}
table tr th, table tr td {
  padding: 8px 16px;
}
@media screen and (max-width: 768px) {
  table tr th, table tr td {
    display: block;
  }
}
table tr th {
  background: #F2F3F5;
  min-width: 105px;
}
table tr td {
  background: #ffffff;
}

strong {
  font-weight: bold;
}

big {
  font-size: 1.25 em;
}

/*【検索窓】*/
.article-filter {
  background-color: #fff;
  padding: 24px;
  border: 1px solid #707070;
  margin-bottom: 32px;
}

.article-filter h3 {
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 8px;
}

.article-filter__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  margin-bottom: 8px;
}

.article-filter__items > span {
  margin-right: 8px;
}

.article-filter__items input {
  margin-right: 8px;
}

.article-filter > button {
  font-weight: bold;
  font-size: 14px;
  padding: 8px 16px;
  text-align: center;
}

/*【特徴】*/
.tags {
  background: #fff;
  border: 1px solid #A7A9AB;
  padding: 24px 16px 32px 16px;
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .tags {
    padding: calc(100vw / 375 * 24 / 1.618) calc(100vw / 375 * 16 / 1.618) calc(100vw / 375 * 32 / 1.618) calc(100vw / 375 * 16 / 1.618);
  }
}
@media screen and (max-width: 768px) {
  .tags {
    margin-top: calc(100vw / 375 * 40 / 1.618);
  }
}
.tags span {
  display: inline-block;
  padding: 4px 8px;
  margin-right: 8px;
  margin-bottom: 8px;
  font-size: 14px;
}

h3.check {
  font-weight: bold;
  font-size: 20px;
  padding-bottom: 8px;
  border-bottom: #EECE00;
  margin-bottom: 16px;
  border-bottom: 2px solid #EECE00;
}
h3.check svg {
  width: 16px;
  height: 12px;
  margin-right: 8px;
  vertical-align: middle;
}

/*【店舗情報】*/
section.location {
  padding: 24px 16px 30px 16px;
}
@media screen and (max-width: 768px) {
  section.location {
    padding: calc(100vw / 375 * 24 / 1.618) calc(100vw / 375 * 16 / 1.618) calc(100vw / 375 * 30 / 1.618) calc(100vw / 375 * 16 / 1.618);
  }
}
section.location .map iframe {
  width: 100%;
  height: 300px;
  margin-bottom: 32px;
}
@media screen and (max-width: 768px) {
  section.location .map iframe {
    margin-bottom: calc(100vw / 375 * 32 / 1.618);
  }
}

/*【about】*/
.about {
  padding: 24px 16px 40px 16px;
}
@media screen and (max-width: 768px) {
  .about {
    padding: calc(100vw / 375 * 24 / 1.618) calc(100vw / 375 * 16 / 1.618) calc(100vw / 375 * 40 / 1.618) calc(100vw / 375 * 16 / 1.618);
  }
}

/*【記事】*/
.articles .articles__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 32px;
}
@media screen and (max-width: 768px) {
  .articles .articles__item {
    margin-bottom: calc(100vw / 375 * 32 / 1.618);
  }
}
@media screen and (max-width: 768px) {
  .articles .articles__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: auto;
  }
}
.articles .articles__item img {
  width: 480px;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
@media screen and (max-width: 768px) {
  .articles .articles__item img {
    margin: auto;
    max-width: 100%;
  }
}
.articles .articles__item .articles__text {
  padding: 24px;
  background: rgba(255, 255, 255, 0.9);
  margin-top: 32px;
  margin-left: -40px;
  z-index: 1;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  .articles .articles__item .articles__text {
    padding: calc(100vw / 375 * 24 / 1.618);
  }
}
.articles .articles__item .articles__text h3 {
  margin-bottom: 16px;
  font-weight: bold;
  font-size: 20px;
}
@media screen and (max-width: 768px) {
  .articles .articles__item .articles__text {
    margin: 16px auto;
  }
}
@media screen and (max-width: 768px) {
  .articles .articles__item:nth-of-type(2n) .articles__text {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
.articles .articles__item:nth-of-type(2n) img {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media screen and (max-width: 768px) {
  .articles .articles__item:nth-of-type(2n) img {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.articles .articles__item:nth-of-type(2n) .articles__text {
  margin-right: -40px;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .articles .articles__item:nth-of-type(2n) .articles__text {
    margin: auto;
  }
}

/*【ご挨拶】*/
section.greeting {
  padding: 24px 16px 40px 16px;
}
@media screen and (max-width: 768px) {
  section.greeting {
    padding: calc(100vw / 375 * 24 / 1.618) calc(100vw / 375 * 16 / 1.618) calc(100vw / 375 * 40 / 1.618) calc(100vw / 375 * 16 / 1.618);
  }
}
section.greeting h3 {
  font-weight: bold;
  margin-bottom: 16px;
}
section.greeting img {
  width: 100%;
}

/*【インタビュー】*/
section.interview {
  padding: 24px 16px 30px 16px;
}
@media screen and (max-width: 768px) {
  section.interview {
    padding: calc(100vw / 375 * 24 / 1.618) calc(100vw / 375 * 16 / 1.618) calc(100vw / 375 * 30 / 1.618) calc(100vw / 375 * 16 / 1.618);
  }
}
section.interview h3 {
  font-size: 16px;
  border-left: 4px solid #EECE00;
  padding: 8px 16px 8px 20px;
}

/*【人気の秘訣】*/
section.reason {
  padding: 24px 16px 30px 16px;
}
@media screen and (max-width: 768px) {
  section.reason {
    padding: calc(100vw / 375 * 24 / 1.618) calc(100vw / 375 * 16 / 1.618) calc(100vw / 375 * 30 / 1.618) calc(100vw / 375 * 16 / 1.618);
  }
}
section.reason .flex > div {
  border: 2px solid #EECE00;
  border-radius: 4px 4px 0px 0px;
}
section.reason h3 {
  font-weight: bold;
  padding: 4px 8px;
  border-radius: 4px 4px 0px 0px;
  color: #000000;
}
section.reason h3 svg {
  width: 16px;
  height: 12px;
  margin-right: 8px;
  vertical-align: middle;
}
section.reason h3 svg path {
  fill: currentColor;
}
section.reason p {
  padding: 16px;
  font-size: 14px;
}
section.reason p img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1.618/1;
  margin-bottom: 16px;
}
@media screen and (max-width: 768px) {
  section.reason p img {
    max-width: 560px;
    margin: 0px auto 16px auto;
  }
}

/*【類似のお仕事情報】*/
section.others {
  padding: 24px 16px 30px 16px;
}
@media screen and (max-width: 768px) {
  section.others {
    padding: calc(100vw / 375 * 24 / 1.618) calc(100vw / 375 * 16 / 1.618) calc(100vw / 375 * 30 / 1.618) calc(100vw / 375 * 16 / 1.618);
  }
}
section.others .flex {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
section.others .flex > div {
  background: #fff;
  padding: 24px;
  border: 1px solid #707070;
  width: calc((100% - 24px) / 2);
  font-size: 12px;
}
@media screen and (max-width: 768px) {
  section.others .flex > div {
    width: 100%;
  }
}
section.others .flex > div img {
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1.618/1;
  width: 100%;
}
@media screen and (max-width: 768px) {
  section.others .flex > div img {
    max-width: 560px;
    margin: auto;
  }
}
section.others .flex > div h3 {
  font-weight: bold;
  margin-top: 16px;
  margin-bottom: 16px;
  font-size: 16px;
}
section.others .flex > div table a {
  color: #222222;
  text-decoration: underline;
}
section.others .flex > div .others__cta {
  margin-top: 16px;
  width: 100%;
}
section.others .flex > div .others__cta a {
  font-size: 14px;
  padding: 8px 16px;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: center;
}

/*【フッター】*/
footer {
  padding: 16px;
}
footer .flex > div {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
footer .flex > div h3 {
  text-decoration: underline;
}
footer .flex > div a {
  display: block;
  color: inherit;
}

.copy {
  background: #000;
  color: #fff;
  text-align: center;
  padding: 16px;
  font-size: 10px;
}
