@charset "utf-8";

/* CSS Document */



/***********
pageHeading
************/

.pageHeading {
  position: relative;
  overflow: hidden;
  font-size: clamp(131%,2vw, 154%);
  height: 20em;
  margin-top: var(--header-height);
}

.pageHeading-img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.pageHeading-img::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.3);
}
.pageHeading-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pageHeading-container {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  z-index: 9;
}
.pageHeading-block {
  color: var(--color-base);
}
.pageHeading-subTitle {
  display: inline-block;
  color: var(--color-base);
  font-family: var(--font-family-cursive);
  font-size: 300%;
  font-weight: 400;
  line-height: 1;
  padding: 0.1em 0.5em;
  margin-bottom: 0.2em;
  line-height: 1;
  vertical-align: bottom;
}
.pageHeading-title {
  font-family: var(--font-family-serif);
  line-height: 1.2;
}
.pageHeading-title > h1 {
  display: inline-block;
  font-size: 95%;
  font-weight: 500;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-left: none;
  border-right: none;
  padding: 0.5em 1.5em;
  margin-bottom: 0.07em;
}


.pageHeading-subTitle ,
.pageHeading-title {
  opacity: 0;
}
body.is-loaded .pageHeading-subTitle ,
body.is-loaded .pageHeading-title  {
  opacity: 1;
}
.pageHeading-subTitle span {
  display: inline-block;
  opacity: 0;
  transition: 2s;
}
.pageHeading.is-show .pageHeading-subTitle span {
  opacity: 1;
}
.pageHeading-title span {
  display: inline-block;
  opacity: 0;
  transition: 2s;
}
.pageHeading.is-show .pageHeading-title span {
  opacity: 1;
}

@media screen and (max-width:834px) {

  .pageHeading {
    height: 13em;
    font-size: clamp(108%,3.6vw, 154%);
  }

  .pageHeading-container {
  }
  .pageHeading-block {
  }
  .pageHeading-subTitle {
  font-size: 254%;
  }

}

/***********
box
************/

.box {
  background-color: var(--color-base);
  padding: min(5vw,4em) min(4vw,6%);
}

@media screen and (max-width:834px) {

  .box {
    margin-left: -3vw;
    margin-right: -3vw;
  }
}


/***********
pagination
************/

.pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-top: 6em;
  padding-bottom: 2em;
}

.pagination:empty {
  display: none;
}

.pagination span,
.pagination a {
  display: inline-block;
  width: 2.5em;
  height: 2.5em;
  line-height: 2.5em;
  color: var(--color-brand01);
  border-radius: 50%;
  text-decoration: none;
  text-align: center;
  font-size: clamp(116%,2vw, 154%);
  font-family: var(--font-family-gothic-en);
  font-weight: 700;
  margin: 0 5px;
}
.pagination a {
  background-color: var(--color-base);
  box-shadow: 0 0 0 1px var(--color-brand01) inset ;
}
.pagination a.prev ,
.pagination a.next {
  box-shadow: none;
  background-color: transparent;
}
.pagination span.dots{
  border-color: transparent;
}
body.is-pc .pagination a:hover ,
.pagination span:not(.dots){
  background-color: var(--color-brand01);
  color: var(--color-base);
  box-shadow: 0 0 0 1px var(--color-brand01) inset ;
}

.pagination a.prev,
.pagination a.next{
}

@media screen and (max-width:834px) {

  .pagination {
    padding-top: 3em;
  }
  .pagination span,
  .pagination a {
    font-size: 116%;
    margin: 0 1px 2px;
  }
}


/***********
post
************/

.post {
  font-weight: 500;
}

.post p:not([class]) {
  line-height: 2;
  font-size: clamp(1.16rem,1.6vw, 1.24rem);
}
.post p:not([class]) + p {
  padding-top: 1em;
}

.post h2:not([class]) {
  font-size: clamp(1.7rem,2.4vw, 2.7rem);
  font-weight: 600;
  font-family: var(--font-family-serif);
  margin: 1em 0 0.5em 0;
}

.post h3:not([class]) {
  font-size: clamp(1.39rem,2vw, 2rem);
  font-weight: 600;
  font-family: var(--font-family-serif);
  border-bottom: 1px solid var(--color-brand01);
  padding-bottom: 0.5em;
  margin: 1.5em 0 0.8em 0;
}

.post h4:not([class]) {
  font-size: clamp(1.39rem,2vw, 2rem);
  font-weight: 600;
  font-family: var(--font-family-serif);
  border-left: 3px solid var(--color-brand01);
  margin: 2em 0 1em 0;
  padding: 0.4em 0 0.5em 0.6em ;
  position: relative;
}

.post h5:not([class]) {
  font-size: clamp(1.31rem,1.8vw, 1.7rem);
  font-weight: 600;
  font-family: var(--font-family-serif);
  border-bottom: 1px solid var(--color-sub02);
  padding-bottom: 0.5em;
  margin: 2em 0 0.8em 0;
}

.post h6:not([class]) {
  font-size: clamp(1.24rem,1.6vw, 1.31rem);
  line-height: 1.4;
  margin: 2em 0 0.5em 0;
}

.post img {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}
.post img[src$="jpg"],
.post img[src$="jpeg"] {
}

.post blockquote:not([class]) {
  background-color: var(--color-sub01);
  padding: min(5vw,4em) min(4vw,6%);
  margin: 2em 0;
}
.post blockquote:not([class]) h2:first-child,
.post blockquote:not([class]) h3:first-child,
.post blockquote:not([class]) h4:first-child,
.post blockquote:not([class]) h5:first-child{
  margin-top: 0;
}


.post table:not([class]) {
  border: 1px solid var(--color-main);
  font-size: clamp(1.16rem,1.6vw, 1.24rem);
  font-weight: 500;
}

.post table:not([class]) thead td {
  border: 1px solid var(--color-main);
  padding: 1em 0.8em;
  text-align: center;
  line-height: 1.8;
  background-color: var(--color-sub01);
}
.post table:not([class]) thead th{
  border: 1px solid var(--color-main);
  padding: 1em 1.5em;
  text-align: center;
  font-weight: 500;
  line-height: 1.8;
  background-color: var(--color-brand01);
  color: var(--color-base);
}

.post table:not([class]) tbody th {
  border: 1px solid var(--color-main);
  padding: 1em 1.5em;
  text-align: left;
  font-weight: 500;
  vertical-align: top;
  line-height: 1.8;
  background-color: var(--color-sub03);
}

.post table:not([class]) tbody td {
  border: 1px solid var(--color-main);
  padding: 1em 1.5em;
  text-align: left;
  vertical-align: top;
  line-height: 1.7;
  background-color: var(--color-base);
}


.post ul:not([class]){
  font-size: clamp(1.16rem,1.6vw, 1.24rem);
  line-height: 1.8;
  list-style: disc;
  margin-left: 1.8em;
  padding: 1em 0;
}
.post ol:not([class]){
  font-size: clamp(1.16rem,1.6vw, 1.24rem);
  line-height: 1.8;
  list-style: decimal;
  margin-left: 1.8em;
  padding: 1em 0;
}
.post ol:not([class]) li{
  padding-left: 0.5em;
}

/*
youtube比率対策
*/

.post iframe[src*="youtube"] {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
}

.post table:not([class]) p:not([class]) {
  font-size: 100%;
}

@media screen and (max-width:834px) {

  .post p:not([class]) {
    line-height: 1.8;
  }
  .post p:not([class]) + p {
    padding-top: 1em;
  }

  .post h2:not([class]) {
    line-height: 1.4;
  }

  .post h3:not([class]) {
  }

  .post h4:not([class]) {
    border-left-width: 3px;
  }

  .post h5:not([class]) {
  }

  .post h6:not([class]) {
  }
  .post table:not([class]) thead th,
  .post table:not([class]) tbody th ,
  .post table:not([class]) tbody td {
    padding: 0.8em;
  }

}

.post > *:first-child,
.post blockquote > *:first-child{
  margin-top: 0 !important;
}

.post *[class^="l-"] img:not([class]){
  padding-bottom: 0 !important;
}

.post h2 + ul,
.post h3 + ul,
.post h4 + ul,
.post h5 + ul,
.post h6 + ul,
.post h2 + ol,
.post h3 + ol,
.post h4 + ol,
.post h5 + ol,
.post h6 + ol{
  padding-top: 0 !important;
}


/***********
box
************/

.box {
  padding: 4em 7%;
}

@media screen and (max-width:834px) {

  .box {
    padding: 2em 4vw;
    margin-left: -1%;
    margin-right: -1%;
  }
}

/***********
history
************/

.history {
  overflow: hidden;
}
.history-section {
  display: flex;
  position: relative;
  padding-left: 80px;
}
.history-section::after {
  content: "";
  display: block;
  width: 0;
  height: 100%;
  position: absolute;
  left: 24px;
  top: 1.5em;
  border-right: 1px dashed var(--color-brand01);
}
.history-section:not(:last-child) {
  padding-bottom: 0.5em;
}
.history-visual {
  width: 34%;
  padding-left: 8%;
}
.history-img {
  position: relative;
  z-index: 9;
  padding-bottom: 4em;
}
.history-inner {
  flex: 1;
}

.history-heading {
  position: relative;
  font-size: clamp(170%,2.2vw, 200%);
}
.history-heading::before {
  content: "";
  display: block;
  width: 11px;
  height: 11px;
  position: absolute;
  left: -60px;
  top: 0.6em;
  background: var(--color-brand01);
  border-radius: 50%;
}
.history-heading-box {
  display: flex;
}
.history-heading-year {
  font-family: var(--font-family-serif);
  font-weight: 600;
  padding-right: 0.8em;
  position: relative;
  white-space: nowrap;
}
.history-heading-title {
  font-family: var(--font-family-serif);
  font-weight: 600;
}

.history-box {
  padding-top: 0.8em;
  padding-bottom: 1em;
  font-weight: 500;
}
.history-box .l-textMain {
  padding-bottom: 1em;
}

@media screen and (max-width:1024px) {

  .history-section {
    padding-left: 40px;
  }
  .history-section::after {
    left: 3px;
    top: 1.5em;
  }
  .history-section:not(:last-child) {
    padding-bottom: 1em;
  }

  .history-heading::before {
    width: 9px;
    height: 9px;
    left: -40px;
    top: 0.6em;
  }

}


@media screen and (max-width:520px) {

  .history {
    margin-left: -3vw;
  }
  .history-section {
    display: block;
  }
  .history-section::after {
  }
  .history-section:not(:last-child) {
    padding-bottom: 0;
  }
  .history-visual {
    width: auto;
    padding-left:0;
  }
  .history-img {
    padding-bottom: 2em;
  }
  .history-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 16 / 9;
  }
  .history-inner {
    flex: 1;
  }

  .history-heading {
  font-size: clamp(154%,3.5vw, 200%);
  }
  .history-heading::before {
  }
  .history-heading-box {
    display: flex;
  }
  .history-heading-year {
    padding-right: 0.4em;
  }
  .history-heading-title {
    font-family: var(--font-family-serif);
    font-weight: 600;
  }

  .history-box {
    padding-top: 1em;
    padding-bottom: 0;
    font-weight: 400;
  }
}


/***********
intvHeader
************/

.intvHeader {
  font-size: clamp(254%,2vw, 354%);
  padding-top: 3em;
  padding-bottom: 3em;
}

.intvHeader-container {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  max-width: 35em;
  margin: 0 auto;
  padding-left: min(4vw,10px);
  position: relative;
}
.intvHeader-badge {
  width: 4.2em;
  position: absolute;
  right: 0.2em;
  top: 0;
  border-radius: 50%;
  border: 1px solid var(--color-main);
  overflow: hidden;
  isolation: isolate;
  transform: translateZ(0);
  transition: 0.5s;
  z-index: 9;
}

.intvHeader-visual {
  width: 55%;
  margin-left: -15%;
}
.intvHeader-img {
  border-radius: 7em;
  overflow: hidden;
  isolation: isolate;
  transform: translateZ(0);
}
.intvHeader-inner {
  flex: 1;
  position: relative;
  z-index: 9;
}


.intvHeader-num {
  font-weight: 500;
  font-size: 92%;
  font-family: var(--font-family-gothic-en);
  line-height: 1.2;
  padding-bottom: 0.2em;
}
.intvHeader-lead {
  font-size: 92%;
}
.intvHeader-lead-text span {
  display: inline-block;
  font-weight: 700;
  margin-top: 3px;
  letter-spacing: 0.02em;
  line-height: 1.2;
  padding: 0.1em 0.6em 0.2em;
  background-color: var(--color-brand01);
  color: var(--color-base);
}

.intvHeader-text {
  font-weight: 500;
  font-size: 60%;
  line-height: 1.5;
  padding-top: 0.8em;
}

.intvHeader-heading {
  padding-top: 0.8em;
  padding-bottom: 0.4em;
  border-bottom: 4px solid var(--color-brand01);
  max-width: 15em;
}
.intvHeader-heading-pos {
  font-size: 50%;
  font-weight: 500;
  color: var(--color-brand01);
}
.intvHeader-name {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
}
.intvHeader-name-title {
  font-size: 85%;
  font-weight: 500;
  padding-right: 0.8em;
  line-height: 1.3;
}
.intvHeader-name-subTitle {
  font-family: var(--font-family-gothic-en);
  font-size: 60%;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.intvHeader-movie {
  padding-top: 3em;
  text-align: center;
}
.intvHeader-movie-title {
  font-family: var(--font-family-gothic-en);
  font-size: 77%;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.2;
  padding-bottom: 0.8em;
}


@media screen and (max-width:1024px) {

  .intvHeader {
    font-size: clamp(200%,2vw, 354%);
    padding-top: 3em;
    padding-bottom: 3em;
  }
  .intvHeader-container {
    max-width: initial;
  }
}

@media screen and (max-width:640px) {

  .intvHeader {
    font-size: clamp(139%,5vw, 200%);
    padding-top: 2em;
    padding-bottom: 2em;
  }

  .intvHeader-container {
    display: block;
    max-width: initial;
    padding-left: min(4vw,30px);
    padding-right: min(4vw,30px);
  }
  .intvHeader-badge {
    width: 4.2em;
    position: absolute;
    right: 0.2em;
    top: 0;
    border-radius: 50%;
    border: 1px solid var(--color-main);
    overflow: hidden;
    isolation: isolate;
    transform: translateZ(0);
    transition: 0.5s;
    z-index: 9;
  }

  .intvHeader-visual {
    width: auto;
    padding-left: 10%;
    margin-left: 0;
  }
  .intvHeader-img {
  }
  .intvHeader-inner {
    flex: 1;
    position: relative;
    z-index: 9;
    margin-top: -2.5em;
  }


  .intvHeader-num {
    font-size: 100%;
  }
  .intvHeader-lead {
    font-size: 100%;
  }
  .intvHeader-lead-text span {
    padding: 0.3em 0.6em 0.4em;
  }

  .intvHeader-text {
    font-size: 80%;
  }

  .intvHeader-heading {
    border-bottom-width: 2px;
    max-width: initial;
    display: inline-block;
  }
  .intvHeader-heading-pos {
    font-size: 80%;
  }
  .intvHeader-name {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
  }
  .intvHeader-name-title {
    font-size: 124%;
    line-height: 1.5;
  }
  .intvHeader-name-subTitle {
    font-size: 80%;
  }

}

/***********
interview
************/

.interview {
  position: relative;
}
.interview-section {
}
.interview-section + .interview-section {
  margin-top: 5em;
}

.interview-heading {
  display: flex;
  padding-bottom: 1em;
  font-size: clamp(154%,3vw, 231%);
}
.interview-heading-icon {
}
.interview-heading-icon img {
  border: 5px solid var(--color-base);
  width: 4em;
  height: 4em;
  object-fit: cover;
  border-radius: 50%;
}
.interview-heading-title {
  flex: 1;
  padding-left: 1em;
  font-weight: 600;
  line-height: 1.4;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 3em;
}


.interview-box {
  position: relative;
  z-index: 9;
  background-color: var(--color-base);
  border: 2px solid var(--color-brand01);
  border-radius: 20px;
  padding: 5em 5%;
}

.interview-faq {
}
.interview-faq + .interview-faq {
  padding-top: 5em;
}
.interview-faq-title {
  font-size: clamp(154%,3vw, 231%);
  font-weight: 500;
  padding-left: 3.8em;
  margin-bottom: 1em;
  min-height: 2.8em;
  line-height: 1.3;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.interview-faq-title::before {
  content: "Q";
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  width: 2.8em;
  height: 2.8em;
  background-color: var(--color-brand01);
  color: var(--color-base);
  font-family: var(--font-family-gothic-en);
  font-weight: 600;
  letter-spacing: 0.15em;
  padding-left: 0.1em;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0;
}
.interview-faq-answer {
  padding: 0 4%;
}

@media screen and (max-width:834px) {

  .interview {
  }
  .interview-section {
  }
  .interview-section + .interview-section {
    margin-top: 3em;
  }

  .interview-heading {
    font-size: clamp(124%,5vw, 154%);
  }
  .interview-heading-icon {
  }
  .interview-heading-icon img {
    border-width: 3px;
    width: 4em;
    height: 4em;
  }


  .interview-box {
    border-width: 2px;
    border-radius: 10px;
    padding: 2em 5%;
    margin-left: -3vw;
    margin-right: -3vw;
  }

  .interview-faq {
  }
  .interview-faq + .interview-faq {
    padding-top: 5em;
  }
  .interview-faq-title {
    font-size: clamp(124%,4.5vw, 154%);
    padding-left: 2.8em;
    min-height: 2.2em;
    line-height: 1.3;
  }
  .interview-faq-title::before {
    width: 2.2em;
    height: 2.2em;
  }
  .interview-faq-answer {
    padding: 0 2%;
  }
}

/***********
intvList
************/

.intvList {
  font-size: clamp(139%,2.2vw, 200%);
}
.intvList-section {
  border-radius: 1.8em;
  padding: 1.5em 2em;
  border: 3px solid var(--color-brand01);
  transition: 0.2s;
}
.intvList-section + .intvList-section {
  margin-top: 2em;
}
body.is-pc .intvList-section:hover {
  box-shadow: 0.4em 0.4em 0 var(--color-brand01);
  translate: -0.2em -0.2em;
}

.intvList-section a {
  display: block;
  color: inherit;
  text-decoration: none;
}
.intvList-container {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  margin: 0 auto;
  position: relative;
}
.intvList-badge {
  width: 4.5em;
  aspect-ratio: 1 / 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  position: absolute;
  right: 0.2em;
  top:-0.5em;
  border-radius: 50%;
  border: 1px solid var(--color-main);
  background-color: var(--color-base);
  overflow: hidden;
  isolation: isolate;
  transform: translateZ(0);
  transition: 0.5s;
  z-index: 9;
}

.intvList-visual {
  width: 50%;
}
.intvList-img {
  border-radius: 6.5em;
  overflow: hidden;
  isolation: isolate;
  transform: translateZ(0);
}
.intvList-inner {
  flex: 1;
  position: relative;
  z-index: 9;
}


.intvList-num {
  font-weight: 600;
  font-family: var(--font-family-gothic-en);
  line-height: 1.2;
  padding-bottom: 0.2em;
}
.intvList-lead {
}
.intvList-lead-text span {
  display: inline-block;
  font-weight: 700;
  margin-top: 3px;
  letter-spacing: 0.02em;
  line-height: 1.2;
  padding: 0.1em 0.6em 0.2em;
  background-color: var(--color-brand01);
  color: var(--color-base);
}

.intvList-text {
  font-weight: 500;
  font-size: 66%;
  line-height: 1.5;
  padding-top: 0.8em;
}

.intvList-name {
  font-family: var(--font-family-gothic-en);
  font-weight: 500;
  padding-top: 0.8em;
  letter-spacing: 0.05em;
}

@media screen and (max-width:640px) {

  .intvList {
    font-size: clamp(124%,2.2vw, 200%);
  }
  .intvList-section {
    border-radius: 1em;
    padding: 1.5em 5%;
    border-width: 2px;
  }
  .intvList-section + .intvList-section {
    margin-top: 1em;
  }

  .intvList-container {
    display: block;
  }
  .intvList-visual {
    width: auto;
  }
  .intvList-img {
  }
  .intvList-inner {
    flex: 1;
    position: relative;
    z-index: 9;
  }

  .intvList-text {
    font-size: 77%;
  }

  .intvList-name {
    font-size: 124%;
  }


}





/***********
fileLink
************/

.fileLink {
  font-size: clamp(1.16rem,1.8vw, 1.39rem);
  font-weight: 500;
}
.fileLink li {
  padding: 0.8em 0;
  border-bottom: 1px dashed var(--color-sub02);
}
.fileLink.-single li {
  padding: 0.2em 0;
  border-bottom: none;
}
.fileLink a {
  display: inline-block;
  color: inherit;
  text-decoration: none;
  position: relative;
  padding-bottom: 0.5em;
}
.fileLink a:hover {
  text-decoration: underline;
}
.fileLink a{
  padding-left: 4.2em;
}
.fileLink a::after {
  content: "";
  display: block;
  width: 3.5em;
  height: 1.5em;
  position: absolute;
  left: 0;
  top: 0.2em;
}
.fileLink a[href*="pdf"]::after {
  background: url(../../img/icon/pdf.png) no-repeat left top / 100% auto;
}
.fileLink a[href*="jpg"]::after,
.fileLink a[href*="jpeg"]::after {
  background: url(../../img/icon/jpg.png) no-repeat left top / 100% auto;
}
.fileLink a[href*="png"]::after {
  background: url(../../img/icon/png.png) no-repeat left top / 100% auto;
}
.fileLink a[href*="doc"]::after,
.fileLink a[href*="docx"]::after {
  background: url(../../img/icon/doc.png) no-repeat left top / 100% auto;
}
.fileLink a[href*="xls"]::after,
.fileLink a[href*="xlsx"]::after {
  background: url(../../img/icon/xls.png) no-repeat left top / 100% auto;
}
.fileLink a[href*="zip"]::after {
  background: url(../../img/icon/zip.png) no-repeat left top / 100% auto;
}

/***********
article
************/

.article {
}
.article-heading {
  position: relative;
  font-size: clamp(1.54rem,3vw, 2.54rem);
  margin-bottom: 1.5em;
  padding: 0.5em 0 0.5em 1em;
  border-left: 3px solid var(--color-brand01);
}
.article-heading-title {
  font-weight: 600;
  font-family: var(--font-family-serif);
}

.article-heading-data {
  display: flex;
  align-items: center;
  padding-bottom: 0.4em;
}
.article-heading-time {
  display: inline-block;
  font-family: var(--font-family-gothic-en);
  font-weight: 600;
  font-size: max(60%,11px);
  color: var(--color-brand01);
  white-space: nowrap;
  padding-right: 0.5em;
  padding-top: 0.1em;
}
.article-heading-cat.l-catIcon {
  padding: 0.2em 1.2em;
  margin: 1px 2px;
  font-size: max(60%,11px);
}

.article-movie {
  padding-bottom: 4em;
}

.article-heading-job {
  background-color: var(--color-brand01);
  color: var(--color-base);
  border-radius: 4px;
  padding: 0.3em 1.5em 0.25em;
  margin: 2px;
  font-size: max(60%,11px);
  font-family: var(--font-family-gothic-en);
  font-weight: 500;
}
.article-heading-job.cat-part {
  background-color: #fde4a1;
  color: var(--color-main);
}

@media screen and (max-width:834px) {

  .article {
  }
  .article-heading {
    margin-left: -5vw;
  }
  .article-heading-title {
  }

  .article-heading-data {
  }
  .article-heading-time {
  }
  .article-heading-cat.l-catIcon {
  }

}

/***********
shopList
************/

.shopList {
}
.shopList-wrapper {
  padding: 6em 0 8em;
}
.shopList-wrapper:nth-child(even) {
  background-color: #f8f0e9;
}

.shopList-heading {
  text-align: center;
  font-size: clamp(170%,3.5vw, 254%);
  padding-bottom: 1em;
}
.shopList-heading-icon img {
  max-height: 2.5em;
}
.shopList-heading-title {
  line-height: 1.4;
}

.shopList-list {
}
.shopList-list li {
  border-top: 1px solid transparent;
  border-bottom: 1px solid var(--color-brand01);
  transition: 0.1s;
  background-color: var(--color-base);
}
.shopList-list li:first-child {
  border-top-color: var(--color-brand01);
}
body.is-pc .shopList-list li:hover {
  border-top-color: var(--color-brand01);
  box-shadow: 0.2em 0.2em 0 var(--color-brand01);
  translate: -0.1em -0.1em;
}

.shopList-list li a {
  display: flex;
  font-size: clamp(116%,1.8vw, 139%);
  color: inherit;
  text-decoration: none;
  padding-top: 1.5em;
  padding: 1.5em 2em;
}
.shopList-list {
}
.shopList-list-visual {
  width: 200px;
}
.shopList-list-visual a {
  display: block;
}
.shopList-list-img {
}
.shopList-list-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 16 / 9;
}
.shopList-list-inner {
  flex: 1;
  padding: 0.2em 0 0.2em 1.5em;
}
.shopList-list-title {
  font-weight: 700;
}
.shopList-list-text {
  font-size: 80%;
  padding-top: 0.2em;
}

@media screen and (max-width:834px) {

  .shopList-wrapper {
    padding: 3em 0 4em;
    margin-left: -3vw;
    margin-right: -3vw;
  }

  .shopList-heading {
  }
  .shopList-heading-icon img {
    max-height: 2em;
  }

  .shopList-list li a {
    font-size: clamp(124%,3.5vw, 139%);
    padding: 1em;
  }
  .shopList-list {
  }
  .shopList-list-visual {
    width: clamp(80px,30%, 120px);
  }
  .shopList-list-visual a {
    display: block;
  }
  .shopList-list-img img {
    aspect-ratio: 16 / 14;
  }
  .shopList-list-inner {
    padding: 0.5em 0 0.2em 1em;
  }
  .shopList-list-title {
    font-weight: 700;
  }
  .shopList-list-text {
    font-size: 85%;
    padding-top: 0.2em;
  }
}

/***********
jobList
************/


.jobList {
}
.jobList li {
  border-top: 1px solid transparent;
  border-bottom: 1px solid var(--color-brand01);
  transition: 0.1s;
  background-color: var(--color-base);
}
.jobList li:first-child {
  border-top-color: var(--color-brand01);
}
body.is-pc .jobList li:hover {
  border-top-color: var(--color-brand01);
  box-shadow: 0.2em 0.2em 0 var(--color-brand01);
  translate: -0.1em -0.1em;
}

.jobList li a {
  display: flex;
  font-size: clamp(116%,1.8vw, 139%);
  color: inherit;
  text-decoration: none;
  padding-top: 1.5em;
  padding: 1.5em 2em;
}
.jobList {
}
.jobList-visual {
  width: 200px;
}
.jobList-visual a {
  display: block;
}
.jobList-img {
}
.jobList-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 16 / 9;
}
.jobList-inner {
  flex: 1;
  padding: 0.2em 0 0.2em 1.5em;
}

.jobList-data {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0.5em;
}
.jobList-cat{
  font-size: 77%;
  background-color: var(--color-brand01);
  color: var(--color-base);
  font-weight: 500;
  border-radius: 4px;
  padding: 0.2em 1em;
  margin-right: 2px;
}
.jobList-cat.cat-part {
  background-color: #fde4a1;
  color: var(--color-main);
}

.jobList-title {
  font-weight: 700;
}
.jobList-text {
  font-size: 80%;
  padding-top: 0.2em;
}

@media screen and (max-width:834px) {


  .jobList li a {
    padding: 1em;
  }
  .jobList {
  }
  .jobList-visual {
    width: clamp(80px,30%, 120px);
  }
  .jobList-visual a {
    display: block;
  }
  .jobList-img img {
    aspect-ratio: 16 / 14;
  }
  .jobList-inner {
    padding: 0em 0 0.2em 1em;
  }
  .jobList-data {
    margin-bottom: 0.4em;
  }
  .jobList-cat{
    font-size: 77%;
    background-color: var(--color-brand01);
    color: var(--color-base);
    font-weight: 500;
    border-radius: 4px;
    padding: 0.1em 0.8em;
    margin-right: 2px;
  }
  .jobList-title {
    font-weight: 700;
    line-height: 1.3;
  }
  .jobList-text {
    font-size: 80%;
    padding-top: 0.2em;
  }
}



/***********
dataTable
************/

.dataTable {
  line-height: 1.6;
  font-size: clamp(116%,1.4vw, 139%);
  border-top: 1px solid var(--color-main);
}

.dataTable thead td {
  padding: 1em 1.2em ;
}
.dataTable thead th {
  padding: 1em 1.2em ;
}

.dataTable tbody tr {
  border-bottom: 1px solid var(--color-main);
}
.dataTable tbody th {
  padding: 1em 1.5em ;
  font-weight: 500;
  background-color: var(--color-sub03);
  line-height: 1.4;
}
.dataTable tbody td {
  padding: 1em 1.5em 1em 1.5em ;
  position: relative;
}

/*
setting
*/

.dataTable.-fixed {
  table-layout: fixed;
}

.dataTable.-vwide thead td ,
.dataTable.-vwide thead th{
  padding-top: 1.5em;
  padding-bottom: 1.5em;
}
.dataTable.-vwide tbody td ,
.dataTable.-vwide tbody th{
  padding-top: 1.2em;
  padding-bottom: 1.2em;
}


.dataTable.-vtop,
.dataTable.-vtop th,
.dataTable.-vtop td {
  vertical-align: top;
}

.dataTable.-alignLeft,
.dataTable.-alignLeft th,
.dataTable.-alignLeft td {
  text-align: left;
}

.dataTable.-alignCenter,
.dataTable.-alignCenter th,
.dataTable.-alignCenter td {
  text-align: center;
}


/*
size
*/

.dataTable-th.-trisect {
  width: 33%;
}
.dataTable-th.-small {
  width: 15em;
}
.dataTable-th.-xsmall {
  width: 12.5em;
}
.dataTable-th.-xxsmall {
  width: 10em;
}
.dataTable-th.-alignLeft {
  text-align: left;
}


@media screen and (max-width:834px) {

  .dataTable {
    font-feature-settings: "palt";
    line-height: 1.5;
  }
  .dataTable th,
  .dataTable td {
  }

  .dataTable thead td {
    padding: 1em 0.5em ;
  }
  .dataTable thead th {
    padding: 1em 0.5em ;
  }
  .dataTable tbody th {
    padding: 1em 0.5em ;
  }
  .dataTable tbody td {
    padding: 1em 0.5em ;
  }

  /*
  setting
  */

  .dataTable.-fixed {
    table-layout: fixed;
  }

  .dataTable.-vwide thead td ,
  .dataTable.-vwide thead th{
    padding-top: 1em;
    padding-bottom: 1em;
  }
  .dataTable.-vwide tbody td ,
  .dataTable.-vwide tbody th{
    padding-top: 1em;
    padding-bottom: 1em;
  }

  .dataTable.-fixed {
    table-layout: fixed;
  }
  .dataTable-th.-small {
    width: 8em;
  }
  .dataTable-th.-xxsmall {
    width: 22%;
  }


  .dataTable-data dt {
    padding-right: 0.5em;
    margin-right: 1em;
  }


  /*
  schedule
  */

  .dataTable-schedule {
    display: block;
  }
  .dataTable-schedule dt {
    font-size: 124%;
    min-width: auto;
    text-align: left;
  }
  .dataTable-schedule dd {
    border-left: none;
    margin-left: 0;
    padding: 0.5em 0 0.5em 1em;
  }


}

@media screen and (max-width:520px) {

  /*
  spBlock
  */

  .dataTable.-spBlock ,
  .dataTable.-spBlock tbody ,
  .dataTable.-spBlock th ,
  .dataTable.-spBlock td ,
  .dataTable.-spBlock tr {
    display: block;
    width: 100% !important;
  }

  .dataTable.-spBlock {
    border: none;
  }
  .dataTable.-spBlock tbody tr {
    border: none;
  }

  .dataTable.-spBlock tbody th {
    border: 1px solid var(--color-brand01);
    border-left: none;
    border-right: none;
    border-top: none;
    padding: 0.5em 1em ;
    text-align: left;
    font-size: 116%;
  }
  .dataTable.-spBlock tbody td {
    padding: 1em 0em 2em ;
    font-size: 108%;
    line-height: 1.7;
    text-align: left;
  }
  .dataTable.-spBlock tbody td::before,
  .dataTable.-spBlock tbody td::after {
    display: none;
  }

  .dataTable.-spBlock .dataTable-linkList {
    display: block;
    max-width: 19em;
    margin: 0 auto;
  }


}


/***********
splitGallery
************/

@media screen and (min-width:641px) {

  .splitGallery{
    display: flex;
    justify-content: space-between;
    margin-left: -8vw;
    margin-right: -8vw;
  }

  .splitGallery:not(.-reverse) {
    padding-right: ;
  }
  .splitGallery:not(.-reverse) .splitGallery-img:nth-child(1) {
    padding-top: 8%;
    width: 30%;
    transition-delay: 100ms !important;
  }
  .splitGallery:not(.-reverse) .splitGallery-img:nth-child(2) {
    width: 33%;
    transition-delay: 200ms !important;
  }
  .splitGallery:not(.-reverse) .splitGallery-img:nth-child(3) {
    padding-top: 15%;
    width: 30%;
    transition-delay: 300ms !important;
  }

  .splitGallery.-reverse {
    padding-left: 8%;
  }
  .splitGallery.-reverse .splitGallery-img:nth-child(1) {
    padding-top: 15%;
    width: 26%;
    transition-delay: 100ms !important;
  }
  .splitGallery.-reverse .splitGallery-img:nth-child(2) {
    width: 40%;
    transition-delay: 200ms !important;
  }
  .splitGallery.-reverse .splitGallery-img:nth-child(3) {
    padding-top: 8%;
    width: 28%;
    transition-delay: 300ms !important;
  }
}

@media screen and (max-width:640px) {

  .splitGallery{
    margin-left: -5vw;
    margin-right: -5vw;
  }

  .splitGallery:not(.-reverse) {
  }
  .splitGallery:not(.-reverse) .splitGallery-img:nth-child(1) {
    padding-left: 1vw;
  }
  .splitGallery:not(.-reverse) .splitGallery-img:nth-child(1) img {
    width: 45%;
  }
  .splitGallery:not(.-reverse) .splitGallery-img:nth-child(2) {
    text-align: right;
  }
  .splitGallery:not(.-reverse) .splitGallery-img:nth-child(2) img{
    width: 50%;
    margin-top: -15vw;
  }
  .splitGallery:not(.-reverse) .splitGallery-img:nth-child(3) {
    text-align: center;
  }
  .splitGallery:not(.-reverse) .splitGallery-img:nth-child(3) img{
    width: 45%;
    margin-top: 1em;
  }

  .splitGallery.-reverse {
  }
  .splitGallery.-reverse .splitGallery-img:nth-child(1) {
    padding-right: 1vw;
    text-align: right;
  }
  .splitGallery.-reverse .splitGallery-img:nth-child(1) img {
    width: 45%;
  }
  .splitGallery.-reverse .splitGallery-img:nth-child(2) {
  }
  .splitGallery.-reverse .splitGallery-img:nth-child(2) img{
    width: 50%;
    margin-top: -15vw;
  }
  .splitGallery.-reverse .splitGallery-img:nth-child(3) {
    text-align: center;
  }
  .splitGallery.-reverse .splitGallery-img:nth-child(3) img{
    width: 45%;
    margin-top: 1em;
  }

}




/***********
xxxxx
************/

/***********
xxxxx
************/

/***********
xxxxx
************/
