@charset "UTF-8";
body {
  font-family: "Noto Sans JP", sans-serif;
  background: #111111;
}

.u-desktop {
  display: none;
}
@media screen and (min-width: 768px) {
  .u-desktop {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .u-mobile {
    display: none;
  }
}

/* リキッドレイアウト対応 */
html {
  font-size: 16px;
}
@media (max-width: 375px) {
  html {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  html {
    font-size: 1.4545454545vw;
  }
}
@media (min-width: 1100px) {
  html {
    font-size: 16px;
  }
}

/* pcの電話番号発信対応 */
@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

/* ホバー */
a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media screen and (min-width: 768px) {
  a:hover {
    opacity: 0.8;
  }
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */
html {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
img:not([alt]) {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="10" /></filter></svg>#filter');
  -webkit-filter: blur(10px);
          filter: blur(10px);
}

/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img {
  -webkit-animation: zoomUp 10s linear 0s 1 normal both;
          animation: zoomUp 10s linear 0s 1 normal both;
}

.swiper-pagination-bullet {
  background-color: #C4C4C4;
  opacity: 1;
}

.swiper-pagination-bullet-active {
  background-color: #F9F871;
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: -25px;
  bottom: -1.5625rem;
  left: -2px;
  left: -0.125rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: -2.125rem;
    left: -1.25rem;
  }
}

@media screen and (min-width: 768px) {
  .swiper-slide--single {
    width: 12.5%;
  }
}

.swiper-space {
  margin-top: 32px;
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .swiper-space {
    margin-top: 2.5rem;
  }
}

.swiperThumbnail .single-works__image.swiper-slide-active {
  border: 3px solid #FFEA2E;
}

.swiper .swiper-button-next {
  position: absolute;
  background-color: #111111;
  border-radius: 50%;
  height: 30px;
  height: 1.875rem;
  width: 30px;
  width: 1.875rem;
}
@media screen and (min-width: 768px) {
  .swiper .swiper-button-next {
    height: 3.125rem;
    width: 3.125rem;
  }
}

.swiper .swiper-button-next::after {
  content: "";
  position: absolute;
  top: 9px;
  top: 0.5625rem;
  right: 2px;
  right: 0.125rem;
  display: inline-block;
  width: 12px;
  width: 0.75rem;
  height: 12px;
  height: 0.75rem;
  margin: 0 10px;
  margin: 0 0.625rem;
  border-top: 2px solid #FFEA2E;
  border-right: 2px solid #FFEA2E;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media screen and (min-width: 768px) {
  .swiper .swiper-button-next::after {
    top: 0.875rem;
    right: 0.5625rem;
    width: 1.25rem;
    height: 1.25rem;
    border-top: 3px solid #FFEA2E;
    border-right: 3px solid #FFEA2E;
  }
}

.swiper .swiper-button-prev {
  position: absolute;
  background-color: #111111;
  border-radius: 50%;
  height: 30px;
  height: 1.875rem;
  width: 30px;
  width: 1.875rem;
}
@media screen and (min-width: 768px) {
  .swiper .swiper-button-prev {
    height: 3.125rem;
    width: 3.125rem;
  }
}

.swiper .swiper-button-prev::after {
  content: "";
  position: absolute;
  top: 9px;
  top: 0.5625rem;
  right: -3px;
  right: -0.1875rem;
  display: inline-block;
  width: 12px;
  width: 0.75rem;
  height: 12px;
  height: 0.75rem;
  margin: 0 10px;
  margin: 0 0.625rem;
  border-top: 2px solid #FFEA2E;
  border-right: 2px solid #FFEA2E;
  -webkit-transform: rotate(225deg);
          transform: rotate(225deg);
}
@media screen and (min-width: 768px) {
  .swiper .swiper-button-prev::after {
    top: 0.875rem;
    right: 0.0625rem;
    width: 1.25rem;
    height: 1.25rem;
    border-top: 3px solid #FFEA2E;
    border-right: 3px solid #FFEA2E;
  }
}

.blog {
  position: relative;
}
.blog__cards {
  margin-top: 64px;
  margin-top: 4rem;
}
@media screen and (min-width: 768px) {
  .blog__cards {
    margin-top: 0rem;
  }
}

.blog__cards--single {
  margin-top: 42px;
  margin-top: 2.625rem;
}
@media screen and (min-width: 768px) {
  .blog__cards--single {
    margin-top: 0rem;
  }
}

.blog__btn {
  margin-top: 23px;
  margin-top: 1.4375rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .blog__btn {
    margin-top: 2.6875rem;
  }
}

@media screen and (min-width: 768px) {
  .blog__btn.button {
    font-weight: 400;
  }
}

.blog__btn a:hover {
  opacity: 1;
}

.blog__text {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .blog__text {
    font-size: 1.4375rem;
    font-weight: 500;
  }
}

.blog__post-text.inner {
  margin-top: 24px;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .blog__post-text.inner {
    max-width: 50.0625rem;
    margin-top: 2rem;
  }
}

.blog__post-text {
  margin-top: 24px;
  margin-top: 1.5rem;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .blog__post-text {
    margin-top: 2rem;
    line-height: 2.2;
    letter-spacing: 0.01em;
  }
}

.blog__post {
  color: #FFFFFF;
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .blog__post {
    margin-top: 2rem;
  }
}

.blog__post--second.inner {
  margin-top: 24px;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .blog__post--second.inner {
    margin-top: 2rem;
    max-width: 50.0625rem;
  }
}

.blog__post--third {
  margin-top: 24px;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .blog__post--third {
    margin-top: 2rem;
  }
}

.blog__post-subtitle2 {
  font-weight: 400;
  letter-spacing: 0.02em;
  font-size: 20px;
  font-size: 1.25rem;
  border-left: solid #ffffff 3px;
  padding-left: 4px;
  padding-left: 0.25rem;
}
@media screen and (min-width: 768px) {
  .blog__post-subtitle2 {
    letter-spacing: 0.2em;
  }
}

.blog__post-subtitle3 {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  padding-bottom: 2px;
  padding-bottom: 0.125rem;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(23%, #FFEA2E), color-stop(23%, #FFFFFF));
  background-image: linear-gradient(90deg, #FFEA2E 23%, #FFFFFF 23%);
  display: inline-block;
  background-size: 100% 10%;
  background-repeat: no-repeat;
  background-position: bottom;
}
@media screen and (min-width: 768px) {
  .blog__post-subtitle3 {
    letter-spacing: 0.2em;
  }
}

.blog__post-img2.inner {
  margin-top: 24px;
  margin-top: 1.5rem;
  padding: 0;
}
@media screen and (min-width: 768px) {
  .blog__post-img2.inner {
    padding: 0 1.5625rem;
    max-width: 50.0625rem;
    margin-top: 2rem;
  }
}

.blog__item {
  color: #ffffff;
  line-height: 2;
  letter-spacing: 0.1em;
  opacity: 0.9;
}
@media screen and (min-width: 768px) {
  .blog__item {
    line-height: 2.1;
  }
}

.blog__items.inner {
  margin-top: 24px;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .blog__items.inner {
    max-width: 50.0625rem;
    margin-top: 2rem;
  }
}

@media screen and (min-width: 768px) {
  .blog__post-box.inner {
    max-width: 50.0625rem;
  }
}

.button {
  padding: 10px 0;
  padding: 0.625rem 0;
  color: #ffffff;
  text-align: center;
  background-color: #333333;
  font-weight: 400;
  font-size: 20px;
  font-size: 1.25rem;
  letter-spacing: 0.055em;
  line-height: 1.5;
  border: 1px solid #ffffff;
  display: inline-block;
  z-index: 0;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  width: 335px;
  width: 20.9375rem;
}
@media screen and (min-width: 768px) {
  .button {
    padding: 1.0625rem 0;
    width: 22.5rem;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.5;
    letter-spacing: 0.12em;
  }
}

.button::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 0%;
  height: 100%;
  background-color: #ffffff;
  opacity: 1;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.button:hover {
  z-index: 100;
  color: #333333;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  opacity: 1;
}

.button:hover::before {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .button--news {
    padding: 0.25rem 0;
    width: 8.375rem;
    color: #000000;
    background-color: #ffffff;
    font-weight: 500;
    font-size: 1rem;
    letter-spacing: 0.0001em;
    line-height: 1.5;
    border: none;
  }
}

@media screen and (min-width: 768px) {
  .button--news::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 0%;
    height: 100%;
    background-color: #333333;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}

@media screen and (min-width: 768px) {
  .button--news:hover {
    color: #ffffff;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}

@media screen and (min-width: 768px) {
  .button--news:hover::before {
    width: 100%;
  }
}

.button--blog {
  font-weight: 400;
}

.button--contact {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  padding-bottom: 14px;
  padding-bottom: 0.875rem;
  padding-top: 14px;
  padding-top: 0.875rem;
}
@media screen and (min-width: 768px) {
  .button--contact {
    font-size: 1rem;
    padding-bottom: 1.1875rem;
    padding-top: 1.4375rem;
    letter-spacing: 0.4em;
  }
}

.button--contact-form {
  color: #000000;
  background-color: #ffffff;
  letter-spacing: 0.0001em;
  line-height: 1.5;
  font-weight: 400;
}

.button--contact-form:hover {
  color: #ffffff;
  background-color: #333333;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.card__img {
  position: relative;
}

.card__img::before {
  content: "";
  display: block;
  padding-top: 66.5714285%;
}

.card__img img {
  top: 50%;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.card__img--single:before {
  content: "";
  display: block;
  padding-top: 58.9641%;
}

.card__contents {
  padding-top: 6px;
  padding-top: 0.375rem;
  padding-right: 23px;
  padding-right: 1.4375rem;
  padding-left: 23px;
  padding-left: 1.4375rem;
  padding-bottom: 17px;
  padding-bottom: 1.0625rem;
  -webkit-transition: 1s all;
  transition: 1s all;
  background-color: #ffffff;
}
@media screen and (min-width: 768px) {
  .card__contents {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    padding-bottom: 1.125rem;
    padding-top: 0.4375rem;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media screen and (min-width: 768px) {
  .card__contents--single {
    padding: 0.875rem 0.5625rem;
  }
}

.card__title {
  font-weight: 500;
  font-size: 18px;
  font-size: 1.125rem;
  letter-spacing: 0.05em;
  line-height: 1.7;
  margin-bottom: 8px;
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 768px) {
  .card__title {
    text-align: left;
    line-height: 1.8;
    margin-bottom: 0.5625rem;
  }
}

@media screen and (min-width: 768px) {
  .card__title--single {
    font-size: 0.875rem;
  }
}

.card__text {
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.07em;
  line-height: 1.8;
  text-align: left;
  margin-bottom: 13px;
  margin-bottom: 0.8125rem;
}
@media screen and (min-width: 768px) {
  .card__text {
    line-height: 1.7;
    margin-bottom: 1rem;
  }
}

.card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.07em;
  line-height: 1.5;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .card__body {
    margin-top: auto;
  }
}

.card__category {
  background-color: #FFEA2E;
  -webkit-transition: 1s all;
  transition: 1s all;
  padding: 0 4px;
  padding: 0 0.25rem;
}

.card__icon {
  position: absolute;
  top: 2px;
  top: 0.125rem;
  left: -17px;
  left: -1.0625rem;
  z-index: 100;
}
@media screen and (min-width: 768px) {
  .card__icon {
    top: -0.1875rem;
    left: -0.875rem;
  }
}

.card__icon-text {
  padding-top: 18px;
  padding-top: 1.125rem;
  padding-left: 13px;
  padding-left: 0.8125rem;
  padding-right: 7px;
  padding-right: 0.4375rem;
  padding-bottom: 19px;
  padding-bottom: 1.1875rem;
  background-color: #FFBA6A;
  -webkit-box-shadow: 0px 4px 4px rgba(0, 0, 0, .25);
          box-shadow: 0px 4px 4px rgba(0, 0, 0, .25);
  display: inline;
  border-radius: 50%;
  font-weight: 400;
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.15em;
  line-height: 1.5;
  color: #333333;
}
@media screen and (min-width: 768px) {
  .card__icon-text {
    line-height: 1.5;
    letter-spacing: 0.15em;
    padding-left: 0.5625rem;
    padding-right: 0.5625rem;
  }
}

.card__body--single {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .card__body--single {
    margin-top: 2rem;
  }
}

.card__date {
  letter-spacing: 0.01em;
}

.card__date--single {
  color: #ffffff;
  font-size: 16px;
  font-size: 1rem;
  margin-right: 30px;
  margin-right: 1.875rem;
}

.card__category--single {
  color: #ffffff;
  font-size: 16px;
  font-size: 1rem;
  padding: 8px 20px;
  padding: 0.5rem 1.25rem;
  background: transparent;
  border: 1px solid #ffffff;
}

@media screen and (min-width: 768px) {
  .cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.cards a:hover {
  opacity: 1;
}

.cards__item {
  display: inline-block;
  width: 100%;
  position: relative;
}
@media screen and (min-width: 768px) {
  .cards__item {
    width: 100%;
    max-width: calc(33.33333% - 1.04167rem);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 2.75rem;
    margin-left: 1.5625rem;
  }
}

@media screen and (min-width: 768px) {
  .cards__item:nth-child(3n+1) {
    margin-left: 0;
  }
}

.cards__item + .cards__item {
  margin-top: 24px;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .cards__item + .cards__item {
    margin-top: 2.75rem;
  }
}

.cards__item:hover .card__contents {
  color: #ffffff;
  -webkit-transition: 1s all;
  transition: 1s all;
  background-color: #333333;
  opacity: 1;
}

.cards__item:hover .card__category {
  color: #333333;
  -webkit-transition: 1s all;
  transition: 1s all;
}

@media screen and (min-width: 768px) {
  .cards__item--single {
    width: 100%;
    max-width: calc(25% - 1.5rem);
    margin-left: 2rem;
    margin-top: 5rem;
  }
}

@media screen and (min-width: 768px) {
  .cards__item--single:first-child {
    margin-left: 0;
  }
}

@media screen and (min-width: 768px) {
  .cards__item--single:nth-child(4) {
    margin-left: 2rem;
  }
}

@media screen and (min-width: 768px) {
  .cards__item--single + .cards__item--single {
    margin-top: 5rem;
  }
}

.categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  color: #ffffff;
}

.categories__all {
  margin-right: 23px;
  margin-right: 1.4375rem;
}
@media screen and (min-width: 768px) {
  .categories__all {
    margin-right: 1.875rem;
  }
}

.categories__all-bg {
  color: #333333;
  background-color: #ffffff;
  letter-spacing: 0.2em;
  padding: 5px 5px 2px 8px;
  padding: 0.3125rem 0.3125rem 0.125rem 0.5rem;
}

.categories__all-bg:active {
  color: #333333;
  background-color: #ffffff;
}

.categories__all-btn {
  padding: 4px 10px;
  padding: 0.25rem 0.625rem;
  letter-spacing: 0.2em;
}

.categories__all-btn:active {
  color: #333333;
  background-color: #ffffff;
}

.categories__category {
  margin-right: 23px;
  margin-right: 1.4375rem;
}
@media screen and (min-width: 768px) {
  .categories__category {
    margin-right: 1.25rem;
  }
}

.categories__category-bg {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .categories__category-bg {
    padding: 0.25rem 0.625rem;
  }
}

.categories__category-bg:active {
  color: #333333;
  background-color: #ffffff;
}

.categories__category-bg.current {
  color: #333333;
  background-color: #ffffff;
}

.contact-form__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 32px;
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .contact-form__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-top: 2.8125rem;
  }
}

.contact-form__content .wpcf7-form-control-wrap {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .contact-form__content .wpcf7-form-control-wrap {
    width: 63.3%;
  }
}

.contact-form__content--top {
  margin-top: 0;
}

.contact-form__content.u-desktop {
  display: none;
}
@media screen and (min-width: 768px) {
  .contact-form__content.u-desktop {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 768px) {
  .contact-form__content.u-mobile {
    display: none;
  }
}

.contact-form__title {
  color: #ffffff;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  padding-bottom: 16px;
  padding-bottom: 1rem;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .contact-form__title {
    margin-right: 1.5rem;
    width: 16.5%;
    text-align: right;
    letter-spacing: 0.05em;
    padding-bottom: 0;
    padding-top: 0.59375rem;
  }
}

.contact-form__title--pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .contact-form__title--pc {
    display: block;
    margin-right: 1.5rem;
    width: 16.5%;
    text-align: right;
    letter-spacing: 0.05em;
    padding-bottom: 0;
    padding-top: 0.59375rem;
  }
}

.contact-form__text {
  background: #ffffff;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  padding-top: 12px;
  padding-top: 0.75rem;
  padding-bottom: 12px;
  padding-bottom: 0.75rem;
  padding-left: 9px;
  padding-left: 0.5625rem;
  padding-right: 9px;
  padding-right: 0.5625rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .contact-form__text {
    width: 100%;
    padding-top: 0.59375rem;
    padding-bottom: 0.59375rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

.contact-form__textarea {
  height: 250px;
  height: 15.625rem;
  padding-top: 16px;
  padding-top: 1rem;
  padding-bottom: 16px;
  padding-bottom: 1rem;
  padding-left: 9px;
  padding-left: 0.5625rem;
  padding-right: 9px;
  padding-right: 0.5625rem;
  background-color: #ffffff;
  letter-spacing: 0.05em;
  font-size: 14px;
  font-size: 0.875rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .contact-form__textarea {
    width: 100%;
    font-size: 0.875rem;
    height: 18.75rem;
    padding-top: 0.59375rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

.contact-form__button {
  text-align: center;
  margin-top: 48px;
  margin-top: 3rem;
}

.contact {
  position: relative;
}
@media screen and (min-width: 768px) {
  .contact {
    text-align: center;
  }
}

.contact::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #3D3D3D;
  z-index: -1;
}

.contact__inner {
  padding-left: 20px;
  padding-left: 1.25rem;
  padding-right: 20px;
  padding-right: 1.25rem;
  max-width: 550px;
  max-width: 34.375rem;
}
@media screen and (min-width: 768px) {
  .contact__inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}

.contact__content {
  margin-top: 18px;
  margin-top: 1.125rem;
}
@media screen and (min-width: 768px) {
  .contact__content {
    text-align: center;
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .contact__body {
    padding-top: 0;
    margin-top: 1.0625rem;
  }
}

.contact__text {
  font-weight: 400;
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.13em;
  line-height: 1.5;
  color: #ffffff;
}

.contact__btn {
  margin-top: 44px;
  margin-top: 2.75rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contact__btn {
    margin-top: 3.6875rem;
    display: inline-block;
  }
}

.content-body__title {
  font-weight: 400;
  font-size: 20px;
  font-size: 1.25rem;
  letter-spacing: 0.09em;
  line-height: 1;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .content-body__title {
    letter-spacing: 0.01em;
    font-size: 1.5625rem;
    line-height: 1;
    text-align: left;
  }
}

.content-body__text {
  font-weight: 400;
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.13em;
  line-height: 1.5;
  margin-top: 26px;
  margin-top: 1.625rem;
}
@media screen and (min-width: 768px) {
  .content-body__text {
    margin-top: 2.75rem;
    letter-spacing: 0.025em;
    line-height: 2.2;
  }
}

.content-body__btn {
  margin-top: 20px;
  margin-top: 1.25rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .content-body__btn {
    margin-top: 2.8125rem;
    display: inline-block;
  }
}

.content-body__text .pc-text {
  display: none;
}
@media screen and (min-width: 768px) {
  .content-body__text .pc-text {
    display: inline;
  }
}

@media screen and (min-width: 768px) {
  .content-body__title--center {
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .content-body__text--center {
    text-align: center;
  }
}

.content-card__body {
  position: absolute;
  top: 50%;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
}

.content-card__text {
  color: #ffffff;
  font-weight: 400;
  font-size: 20px;
  font-size: 1.25rem;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .content-card__text {
    font-size: 1.5625rem;
    line-height: 1.5;
    letter-spacing: 0.01em;
  }
}

.content-card__images {
  position: relative;
}

.content-card__images::before {
  content: "";
  display: block;
  padding-top: 89.361702127%;
}
@media screen and (min-width: 768px) {
  .content-card__images::before {
    padding-top: 100%;
  }
}

.content-card__images img {
  top: 50%;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.content {
  position: relative;
}

.content:before {
  content: "";
  position: absolute;
  top: -31px;
  top: -1.9375rem;
  left: 0;
  width: 100%;
  height: 679px;
  height: 42.4375rem;
  z-index: -1;
  background-image: linear-gradient(to right top, transparent 50%, #F9F871 49.9%, #F9F871 calc(50% + 1px), transparent calc(50.1% + 1px));
}
@media screen and (min-width: 768px) {
  .content:before {
    top: -6.4375rem;
    height: 75.75rem;
    width: 94.6875%;
  }
}

.content__cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  margin-top: 46px;
  margin-top: 2.875rem;
  width: 100%;
  max-width: 500px;
  max-width: 31.25rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .content__cards {
    margin-top: 2.3125rem;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    max-width: 80rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.content__card {
  text-align: center;
  width: 50%;
  position: relative;
  z-index: 100;
}

.content__card::before {
  content: "";
  background: rgba(255, 255, 255, .6);
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  opacity: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 100;
}

.content__card:hover::before {
  opacity: 1;
}

.error__wrapper {
  padding-top: 200px;
  padding-top: 12.5rem;
  padding-bottom: 150px;
  padding-bottom: 9.375rem;
}

.error__title {
  text-align: center;
  font-size: 40px;
  font-size: 2.5rem;
  color: #FFEA2E;
  opacity: 0.3;
  line-height: 1;
}

.error__subtitle {
  text-align: center;
  margin-top: 80px;
  margin-top: 5rem;
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1;
  color: #ffffff;
}

.error__btn {
  text-align: center;
  margin-top: 80px;
  margin-top: 5rem;
}

.explain__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: solid 1px #ffffff;
  padding-top: 14px;
  padding-top: 0.875rem;
  padding-bottom: 19px;
  padding-bottom: 1.1875rem;
}
@media screen and (min-width: 768px) {
  .explain__block {
    padding-top: 1.875rem;
    padding-bottom: 1.75rem;
  }
}

@media screen and (min-width: 768px) {
  .explain__block:nth-child(n+4) {
    padding-top: 2.125rem;
  }
}

.explain__header {
  width: 31%;
}
@media screen and (min-width: 768px) {
  .explain__header {
    width: 13.8%;
  }
}

.explain__description {
  letter-spacing: 0.01em;
  width: 69%;
}
@media screen and (min-width: 768px) {
  .explain__description {
    width: 86.2%;
  }
}

.explain__description .pc-text {
  display: inline;
}
@media screen and (min-width: 768px) {
  .explain__description .pc-text {
    display: none;
  }
}

.footer-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.footer-nav__logo {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 768px) {
  .footer-nav__logo {
    padding: 0;
    margin-top: -0.375rem;
  }
}

.footer-nav__logo::before {
  content: "";
}
.footer-nav__logo a {
  display: inline-block;
}

.footer-nav__logo img {
  padding-top: 1px;
  padding-top: 0.0625rem;
  width: 70px;
  width: 4.375rem;
  height: 30px;
  height: 1.875rem;
}
@media screen and (min-width: 768px) {
  .footer-nav__logo img {
    width: 4.375rem;
    height: 2.4375rem;
    padding-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .footer-nav__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.footer-nav__item {
  margin-top: 14px;
  margin-top: 0.875rem;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .footer-nav__item {
    margin-top: 0;
    line-height: 1.5;
    letter-spacing: 0.08em;
  }
}

@media screen and (min-width: 768px) {
  .footer-nav__item + .footer-nav__item {
    margin-left: 2.125rem;
  }
}

@media screen and (min-width: 768px) {
  .footer-nav__item:nth-child(1) {
    display: none;
  }
}

.footer-nav__item:nth-child(4) {
  display: none;
}
@media screen and (min-width: 768px) {
  .footer-nav__item:nth-child(4) {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .footer-nav__item:nth-child(6) {
    display: none;
  }
}

.footer-nav__item:nth-child(7) {
  display: none;
}
@media screen and (min-width: 768px) {
  .footer-nav__item:nth-child(7) {
    display: block;
  }
}

.footer-nav__item a:hover {
  border-bottom: 1px solid #FFEA2E;
}

.footer {
  background-color: #111111;
  position: relative;
}

.footer__inner.inner {
  max-width: 100%;
  padding-right: 34px;
  padding-right: 2.125rem;
  padding-left: 32px;
  padding-left: 2rem;
}

.footer__nav {
  display: block;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.footer__copyright {
  text-align: center;
  font-size: 11px;
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.16em;
  color: #ffffff;
  margin-top: 39px;
  margin-top: 2.4375rem;
}
@media screen and (min-width: 768px) {
  .footer__copyright {
    font-size: 0.9375rem;
    line-height: 1.5;
    letter-spacing: 0.17em;
    margin-top: 4.25rem;
    margin-left: 6.875rem;
    margin-right: 6.3125rem;
  }
}

.footer__page-top {
  text-align: center;
  background-color: #ffffff;
  padding: 17.5px 9.5px;
  padding: 1.09375rem 0.59375rem;
  width: 45px;
  width: 2.8125rem;
  height: 45px;
  height: 2.8125rem;
  bottom: 41px;
  bottom: 2.5625rem;
  right: 21px;
  right: 1.3125rem;
  position: fixed;
  z-index: 1000;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .footer__page-top {
    bottom: 2.0625rem;
    right: 1.9375rem;
  }
}

.footer__page-top:hover {
  background-color: #333333;
}

.footer__page-top:hover .footer__arrow {
  border-color: #ffffff;
}

.footer__arrow {
  border-top: solid 2px #000000;
  border-right: solid 2px #000000;
  border-radius: 0.0625rem 0.0625rem 0.0625rem 0;
  width: 16px;
  width: 1rem;
  height: 16px;
  height: 1rem;
  display: inline-block;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.hamburger {
  height: 13px;
  height: 0.8125rem;
  width: 24px;
  width: 1.5rem;
  position: relative;
  z-index: 100;
}

.hamburger span {
  position: absolute;
  height: 2px;
  height: 0.125rem;
  width: inherit;
  background-color: #ffffff;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.hamburger span:nth-child(1) {
  top: -8%;
}

.hamburger span:nth-child(2) {
  top: 38%;
}

.hamburger span:nth-child(3) {
  top: 90%;
}

.hamburger.is-active span:nth-child(1) {
  top: 50%;
  -webkit-transform: translate(0.5625rem, 0.25rem) rotate(45deg);
          transform: translate(0.5625rem, 0.25rem) rotate(45deg);
}

.hamburger.is-active span:nth-child(2) {
  opacity: 0;
}

.hamburger.is-active span:nth-child(3) {
  top: 50%;
  -webkit-transform: translate(0.5625rem, 0.25rem) rotate(-45deg);
          transform: translate(0.5625rem, 0.25rem) rotate(-45deg);
}

.header {
  height: 50px;
  width: 100%;
  z-index: 1000;
  position: fixed;
  background: rgba(17, 17, 17, .5);
  border: 1px solid rgba(0, 0, 0, .5);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: inherit;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 20px;
  padding: 0 1.25rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .header__inner {
    padding: 0;
  }
}

.header__logo {
  padding-left: 2px;
  padding-left: 0.125rem;
  z-index: 100;
}
@media screen and (min-width: 768px) {
  .header__logo {
    padding-left: 2rem;
    padding-top: 0.5625rem;
    height: inherit;
  }
}

.header__logo img {
  padding-top: 2px;
  padding-top: 0.125rem;
  width: 70px;
  width: 4.375rem;
  height: 39px;
  height: 2.4375rem;
}
@media screen and (min-width: 768px) {
  .header__logo img {
    padding: 0;
    width: 5.875rem;
    height: 2.1875rem;
  }
}

.header__hamburger {
  margin-bottom: 10px;
  margin-bottom: 0.625rem;
  margin-right: 1px;
  margin-right: 0.0625rem;
}
@media screen and (min-width: 768px) {
  .header__hamburger {
    display: none;
  }
}

.header__pc-nav {
  display: none;
  height: inherit;
}
@media screen and (min-width: 768px) {
  .header__pc-nav {
    display: block;
  }
}

.inner {
  width: 100%;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
  max-width: 500px;
  max-width: 31.25rem;
}
@media screen and (min-width: 768px) {
  .inner {
    max-width: 1150px;
    padding-right: 25px;
    padding-left: 25px;
    margin: 0 auto;
  }
}

.mv-sub {
  height: 55.194895vh;
}
@media screen and (min-width: 768px) {
  .mv-sub {
    height: 43.478261vh;
  }
}

.mv-sub__inner {
  height: inherit;
}

.mv-sub__images {
  position: relative;
  height: inherit;
}

.mv-sub__img {
  z-index: 100;
  position: relative;
  height: inherit;
}
@media screen and (min-width: 768px) {
  .mv-sub__img {
    height: inherit;
  }
}

.mv-sub__img img {
  width: 100%;
  aspect-ratio: 15/17;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .mv-sub__img img {
    aspect-ratio: 128/37;
  }
}

.mv-sub__img:before {
  content: "";
  background-color: rgba(17, 17, 17, .2);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  display: block;
}
.mv-sub__body {
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  z-index: 100;
  text-align: center;
}

.mv-sub__title {
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.01em;
  color: #ffffff;
  margin-top: 12px;
  margin-top: 0.75rem;
}
@media screen and (min-width: 768px) {
  .mv-sub__title {
    font-size: 2.1875rem;
    line-height: 1.2;
    letter-spacing: 0.01em;
    margin-top: 0;
  }
}

.mv {
  height: 100vh;
}

.mv__inner {
  height: inherit;
}

.mv__images {
  position: relative;
  height: inherit;
}

@-webkit-keyframes zoomUp {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
}

@keyframes zoomUp {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
}
.mv__img {
  z-index: 100;
  height: 100vh;
  position: relative;
}

.mv__img img {
  top: 50%;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.mv__body {
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  z-index: 100;
  text-align: center;
}

.mv__img:before {
  content: "";
  background-color: rgba(17, 17, 17, .2);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  display: block;
  padding-top: 66.40625%;
}

.mv__title {
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.01em;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .mv__title {
    font-size: 3.125rem;
    letter-spacing: 0.01em;
    line-height: 1;
    margin-top: 1.125rem;
  }
}

.mv__subtitle {
  margin-top: 13px;
  margin-top: 0.8125rem;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.01em;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .mv__subtitle {
    font-size: 1.5625rem;
    margin-top: 0.75rem;
    line-height: 1.5;
    letter-spacing: 0.01em;
  }
}

.news-content__date {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #ffffff;
  margin-right: 21px;
  margin-right: 1.3125rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width: 768px) {
  .news-content__date {
    margin-right: 0;
    margin-top: 0.25rem;
    padding-right: 0;
    padding-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .news-content__date--sub {
    width: 35%;
    margin-right: 0;
  }
}

.news-content__category {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  color: #ffffff;
  padding: 4.8px 20.8px;
  padding: 0.3rem 1.3rem;
  border: 1px solid #ffffff;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .news-content__category {
    font-weight: 500;
    padding-top: 0.375rem;
    padding-right: 1.375rem;
    padding-bottom: 0.25rem;
    padding-left: 1.3125rem;
    line-height: 1.5;
  }
}

@media screen and (min-width: 768px) {
  .news-content__category--sub {
    width: 46%;
  }
}

.news-content__category a {
  pointer-events: none;
}

@media screen and (min-width: 768px) {
  .news__inner.inner {
    max-width: 1100px;
  }
}

@media screen and (min-width: 768px) {
  .news__inner--sub.inner {
    max-width: 56.875rem;
  }
}

.news__body {
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .news__body {
    margin: 0;
    width: 55%;
    margin-top: 0.375rem;
    margin-left: 0.875rem;
  }
}

@media screen and (min-width: 768px) {
  .news__body--sub {
    width: 68%;
  }
}

.news__text {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #ffffff;
  display: inline-block;
  letter-spacing: 0.002em;
}
@media screen and (min-width: 768px) {
  .news__text {
    line-height: 1.5;
  }
}

.news__text:hover {
  border-bottom: 1px solid #ffffff;
}

.news__text--sub:hover {
  color: #F9F871;
  border-bottom: none;
  opacity: 1;
}

.news__text--single:hover {
  border-bottom: none;
}

.news__btn {
  margin-top: 26px;
  margin-top: 1.625rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .news__btn {
    margin: 0;
    width: 13%;
    text-align: right;
  }
}

@media screen and (min-width: 768px) {
  .news__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.news__contents--sub {
  margin-top: 32px;
  margin-top: 2rem;
}

.news__contents--sub:first-child {
  margin-top: 0;
}

.news__contents--single {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.news__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width: 768px) {
  .news__content {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 22%;
  }
}

@media screen and (min-width: 768px) {
  .news__content--sub {
    width: 27%;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media screen and (min-width: 768px) {
  .overview {
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .overview::before {
    content: "";
    position: absolute;
    top: -12.375rem;
    left: 0;
    width: 94.609375%;
    height: 75.6875rem;
    z-index: -1;
    background-image: linear-gradient(to left top, transparent 50%, #F9F871 49.9%, #F9F871 calc(50% + 1px), transparent calc(50.1% + 1px));
  }
}

.overview__images {
  padding-top: 0;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .overview__images {
    width: 50.6%;
    margin: 0;
  }
}

.overview__bg {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(42%, transparent), color-stop(42%, #333333), to(#333333));
  background: linear-gradient(180deg, transparent 0%, transparent 42%, #333333 42%, #333333 100%);
  width: 100%;
  height: 100%;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .overview__bg {
    margin-top: 2.0625rem;
    background: -webkit-gradient(linear, left top, right top, from(#333333), color-stop(70%, #333333), color-stop(70%, transparent), to(transparent));
    background: linear-gradient(90deg, #333333 0%, #333333 70%, transparent 70%, transparent 100%);
  }
}

.overview__contents {
  margin-top: 45px;
  margin-top: 2.8125rem;
  margin-right: auto;
  margin-left: auto;
  max-width: 500px;
  max-width: 31.25rem;
}
@media screen and (min-width: 768px) {
  .overview__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    margin-top: 0;
    padding-top: 5rem;
    padding-bottom: 5rem;
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
    max-width: 71.875rem;
    margin: 0 auto;
  }
}

.overview__body.inner {
  max-width: 550px;
  max-width: 34.375rem;
}
@media screen and (min-width: 768px) {
  .overview__body.inner {
    padding-right: 2rem;
    padding-left: 0;
    width: 49.6%;
  }
}

.overview__body {
  padding-top: 29px;
  padding-top: 1.8125rem;
  padding-bottom: 21px;
  padding-bottom: 1.3125rem;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .overview__body {
    padding-right: 1.59375rem;
    padding-top: 2.125rem;
    padding-bottom: 2.4375rem;
    width: 49.4%;
    background-color: transparent;
  }
}

.overview__images {
  position: relative;
}

.overview__images::before {
  content: "";
  display: block;
  padding-top: 69.6%;
}
@media screen and (min-width: 768px) {
  .overview__images::before {
    padding-top: 69.8384201%;
  }
}

.overview__images img {
  top: 50%;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-nav {
  margin-top: 80px;
  margin-top: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}
@media screen and (min-width: 768px) {
  .page-nav {
    margin-top: 7rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}

.page-nav__left a {
  padding-right: 13px;
  padding-right: 0.8125rem;
  padding-left: 13px;
  padding-left: 0.8125rem;
}
@media screen and (min-width: 768px) {
  .page-nav__left a {
    padding-right: 0.8125rem;
    padding-left: 0.8125rem;
  }
}

.page-nav__top a {
  margin-right: 48px;
  margin-right: 3rem;
  margin-left: 48px;
  margin-left: 3rem;
  padding-right: 18px;
  padding-right: 1.125rem;
  padding-left: 18px;
  padding-left: 1.125rem;
}
@media screen and (min-width: 768px) {
  .page-nav__top a {
    margin-right: 3rem;
    margin-left: 3rem;
    padding-right: 1.125rem;
    padding-left: 1.125rem;
  }
}

.page-nav__right a {
  padding-right: 13px;
  padding-right: 0.8125rem;
  padding-left: 13px;
  padding-left: 0.8125rem;
}
@media screen and (min-width: 768px) {
  .page-nav__right a {
    padding-right: 0.8125rem;
    padding-left: 0.8125rem;
  }
}

.page-nav--single {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.page-nav__sub a {
  border: 1px solid #ffffff;
  color: #ffffff;
}
.page-nav__sub a:hover {
  background-color: #ffffff;
  color: #333333;
  opacity: 1;
}

@media screen and (min-width: 768px) {
  .page-nav--blog {
    margin-top: 6.875rem;
  }
}

.page-nav--blog .wp-pagenavi span.current {
  color: #333333;
  background-color: #F9F871;
  font-weight: 400;
  border: solid 1px #F9F871;
}

.page-nav--blog .wp-pagenavi a:hover {
  background-color: #F9F871;
}

.page-nav--news {
  display: none;
}
@media screen and (min-width: 768px) {
  .page-nav--news {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.pc-nav__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: inherit;
}

.pc-nav__item {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
  padding-right: 31px;
  padding-right: 1.9375rem;
  height: inherit;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .pc-nav__item {
    letter-spacing: 0.09em;
    padding-right: 2rem;
  }
}

.pc-nav__item a {
  height: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.pc-nav__item a:hover {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #FFEA2E), color-stop(73%, #FFEA2E), color-stop(73%, transparent));
  background: linear-gradient(transparent 70%, #FFEA2E 70%, #FFEA2E 73%, transparent 73%);
}

.pc-nav__item:last-child {
  background: #ffffff;
  color: #333333;
  padding-left: 32px;
  padding-left: 2rem;
}

.pc-nav__item:last-child:hover {
  background-color: #333333;
}

.pc-nav__item:last-child:hover.pc-nav__item:last-child a {
  color: #ffffff;
}

.point {
  color: #ffffff;
  margin-top: 48px;
  margin-top: 3rem;
}

.point:first-child {
  margin-top: 0;
}

.point__title {
  border: 1px solid #ffffff;
  border-radius: 2rem;
  padding: 8px 24px;
  padding: 0.5rem 1.5rem;
  margin-left: 39px;
  margin-left: 2.4375rem;
  background-color: #111111;
  display: inline-block;
  font-size: 20px;
  font-size: 1.25rem;
}

.point__text {
  margin-top: -20px;
  margin-top: -1.25rem;
  padding-top: 44px;
  padding-top: 2.75rem;
  padding-bottom: 32px;
  padding-bottom: 2rem;
  padding-left: 22px;
  padding-left: 1.375rem;
  padding-right: 22px;
  padding-right: 1.375rem;
  border: 1px solid #ffffff;
  line-height: 2.15;
  letter-spacing: 0.01em;
}

.section-header {
  text-align: center;
  position: relative;
}

.section-header__title {
  font-weight: 400;
  font-size: 20px;
  font-size: 1.25rem;
  letter-spacing: 2px;
  letter-spacing: 0.125rem;
  line-height: 1.5;
  color: #ffffff;
  position: relative;
}
@media screen and (min-width: 768px) {
  .section-header__title {
    font-size: 1.875rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
  }
}

.section-header__subtitle {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 50px;
  font-size: 3.125rem;
  letter-spacing: 0.035em;
  line-height: 1;
  color: #F9F871;
  opacity: 0.27;
  z-index: -1;
  position: absolute;
  top: -38px;
  top: -2.375rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .section-header__subtitle {
    font-size: 6.875rem;
    line-height: 1;
    letter-spacing: 0.02em;
    top: -1.125rem;
    left: 0;
    -webkit-transform: none;
            transform: none;
  }
}

@media screen and (min-width: 768px) {
  .section-header__subtitle--top {
    top: -3.875rem;
  }
}

@media screen and (min-width: 768px) {
  .section-header__subtitle--right {
    top: -1.5625rem;
    right: 0;
    text-align: right;
  }
}

@media screen and (min-width: 768px) {
  .section-header__subtitle--overview {
    top: -1.5625rem;
  }
}

@media screen and (min-width: 768px) {
  .single-works__inner.inner {
    max-width: 53.1875rem;
    margin-right: auto;
    margin-left: auto;
    padding: 0 1.5625rem;
  }
}

.single-works__text {
  color: #ffffff;
  font-size: 23px;
  font-size: 1.4375rem;
  font-weight: 500;
}

.single-works__images {
  width: 100%;
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .single-works__images {
    width: 100%;
    margin: 0;
    margin-top: 2rem;
  }
}

.single-works__images.inner {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .single-works__images.inner {
    max-width: 53.1875rem;
    margin-right: auto;
    margin-left: auto;
    padding: 0 1.5625rem;
  }
}

.single-works__wrapper {
  position: relative;
}

.single-works__image img {
  height: auto;
  aspect-ratio: 325/251;
}
@media screen and (min-width: 768px) {
  .single-works__image img {
    aspect-ratio: 799/427;
  }
}

.single-works__image--size img {
  aspect-ratio: 1;
}

.single-works__box {
  margin-top: 80px;
  margin-top: 5rem;
}

@media screen and (min-width: 768px) {
  .single-works__box.inner {
    max-width: 53.1875rem;
  }
}

.single {
  position: relative;
}

.single__inner.inner {
  max-width: 550px;
  max-width: 34.375rem;
}
@media screen and (min-width: 768px) {
  .single__inner.inner {
    max-width: 53.125rem;
  }
}

.single__body.inner {
  max-width: 550px;
  max-width: 34.375rem;
}
@media screen and (min-width: 768px) {
  .single__body.inner {
    max-width: 53.125rem;
  }
}

.single__text {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 400;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .single__text {
    font-size: 1.4375rem;
    font-weight: 500;
  }
}

.single__post {
  color: #FFFFFF;
  margin-top: 24px;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .single__post {
    margin-top: 2rem;
  }
}

.single__thumbnail.inner {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .single__thumbnail.inner {
    padding: 0 1.5625rem;
    margin-right: auto;
    margin-left: auto;
    max-width: 53.125rem;
  }
}

.single__thumbnail {
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .single__thumbnail {
    margin-top: 2rem;
  }
}

.single__thumbnail-image img {
  height: auto;
  aspect-ratio: 375/251;
}
@media screen and (min-width: 768px) {
  .single__thumbnail-image img {
    aspect-ratio: 200/107;
  }
}

.single__post p {
  margin-top: 24px;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .single__post p {
    margin-top: 2rem;
  }
}

.single__post p:first-child {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .single__post p:first-child {
    margin-top: 0;
  }
}

.single__post h2 {
  margin-top: 24px;
  margin-top: 1.5rem;
  padding-left: 6px;
  padding-left: 0.375rem;
}
@media screen and (min-width: 768px) {
  .single__post h2 {
    margin-top: 2rem;
    letter-spacing: 0.2em;
  }
}

.single__post h2:nth-of-type(1) {
  border-left: solid white 3px;
  font-weight: 400;
  letter-spacing: 0.02em;
  font-size: 20px;
  font-size: 1.25rem;
  border-left: solid #ffffff 3px;
}

.single__post h2:nth-of-type(2) {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  padding-bottom: 2px;
  padding-bottom: 0.125rem;
  padding-bottom: 2px;
  padding-bottom: 0.125rem;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(23%, #FFEA2E), color-stop(23%, #FFFFFF));
  background-image: linear-gradient(90deg, #FFEA2E 23%, #FFFFFF 23%);
  display: inline-block;
  background-size: 100% 10%;
  background-repeat: no-repeat;
  background-position: bottom;
}

.single__body img {
  aspect-ratio: 375/251;
  margin-top: 24px;
  margin-top: 1.5rem;
  height: auto;
}
@media screen and (min-width: 768px) {
  .single__body img {
    aspect-ratio: 200/107;
    margin-top: 2rem;
  }
}

.single__body ul {
  margin-top: 24px;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .single__body ul {
    margin-top: 2rem;
  }
}

.single__body li {
  line-height: 2.5;
}

.single__body ol {
  margin-top: 24px;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .single__body ol {
    margin-top: 2rem;
  }
}

.sp-nav {
  height: 100vh;
  width: 100%;
  display: none;
  top: 0;
  left: 0;
  right: 0;
  position: absolute;
  background: #111111;
}

.sp-nav__items {
  text-align: center;
  padding-top: 209px;
  padding-top: 13.0625rem;
}

.sp-nav__item {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
  padding-top: 32px;
  padding-top: 2rem;
  color: #ffffff;
}

.sp-nav__item:first-child {
  padding: 0;
}

.sp-nav__item a:hover {
  border-bottom: 1px solid #FFEA2E;
}

.sub-blog__categories > div {
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .sub-blog__categories > div {
    margin-top: 0;
  }
}

.sub-blog__categories {
  margin-top: -16px;
  margin-top: -1rem;
}
@media screen and (min-width: 768px) {
  .sub-blog__categories {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .sub-contact__inner.inner {
    max-width: 56.5rem;
  }
}

.sub-content__images {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .sub-content__images {
    width: 50%;
    margin: 0;
  }
}

.sub-content__contents {
  margin-top: 48px;
  margin-top: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 768px) {
  .sub-content__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 6.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

@media screen and (min-width: 768px) {
  .sub-content__contents--reverse {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

.sub-content__contents--top {
  margin-top: 80px;
  margin-top: 5rem;
}
@media screen and (min-width: 768px) {
  .sub-content__contents--top {
    margin-top: 9.375rem;
  }
}

.sub-content__contents.inner {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .sub-content__contents.inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}

.sub-content__images {
  position: relative;
}

.sub-content__images::before {
  content: "";
  display: block;
  padding-top: 69.6%;
  position: relative;
  background-color: rgba(0, 0, 0, .25);
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .sub-content__images::before {
    padding-top: 66.6727273%;
  }
}

.sub-content__images img {
  top: 50%;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.sub-content__philosophy {
  color: #ffffff;
}

.sub-content__body {
  padding-top: 29px;
  padding-top: 1.8125rem;
  padding-bottom: 21px;
  padding-bottom: 1.3125rem;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .sub-content__body {
    padding-top: 2.125rem;
    padding-bottom: 2.4375rem;
    width: 50%;
  }
}

@media screen and (min-width: 768px) {
  .sub-content__body--left.inner {
    padding-left: 0;
  }
}

@media screen and (min-width: 768px) {
  .sub-content__body--right.inner {
    padding-right: 0;
  }
}

.sub-overview__info {
  color: #ffffff;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .sub-overview__info {
    font-size: 1rem;
  }
}

.sub-overview__map {
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (min-width: 768px) {
  .sub-overview__map {
    margin-top: 5rem;
  }
}

.sub-overview__map iframe {
  width: 100%;
  aspect-ratio: 5/4;
}
@media screen and (min-width: 768px) {
  .sub-overview__map iframe {
    aspect-ratio: 1100/367;
  }
}

.sub-overview__map.inner {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .sub-overview__map.inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}

@media screen and (min-width: 768px) {
  .sub-works__inner.inner {
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.sub-works__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 768px) {
  .sub-works__wrapper {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 2.5625rem;
  }
}

.sub-works__wrapper-inner {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .sub-works__wrapper-inner {
    padding-right: 5.625rem;
    padding-left: 5.625rem;
    margin-right: auto;
    margin-left: auto;
  }
}

.sub-works__unit {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .sub-works__unit {
    width: 47.8%;
  }
}

.sub-works__unit {
  margin-top: 48px;
  margin-top: 3rem;
}
@media screen and (min-width: 768px) {
  .sub-works__unit {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .sub-works__unit:nth-child(n+3) {
    margin-top: 7.125rem;
  }
}

.sub-works__categories > div {
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .sub-works__categories > div {
    margin-top: 0;
  }
}

.sub-works__categories {
  margin-top: -16px;
  margin-top: -1rem;
}
@media screen and (min-width: 768px) {
  .sub-works__categories {
    margin-top: 0;
  }
}

.thanks__wrapper {
  padding-top: 200px;
  padding-top: 12.5rem;
  padding-bottom: 150px;
  padding-bottom: 9.375rem;
  color: #ffffff;
}

.thanks__title {
  text-align: center;
  font-size: 30px;
  font-size: 1.875rem;
}

.thanks__subtitle {
  text-align: center;
  margin-top: 80px;
  margin-top: 5rem;
  font-size: 30px;
  font-size: 1.875rem;
}

.thanks__btn {
  text-align: center;
  margin-top: 80px;
  margin-top: 5rem;
}

.unit {
  color: #ffffff;
}

.unit__image {
  position: relative;
}

.unit__image img {
  aspect-ratio: 175/132;
  width: 100%;
  height: auto;
}

.unit__category {
  position: absolute;
  top: -1px;
  right: -1px;
  background-color: #111111;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 400;
  padding: 8px 20px;
  padding: 0.5rem 1.25rem;
}

.unit__title {
  margin-top: 24px;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  text-align: center;
  display: block;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .unit__title {
    margin-top: 0.75rem;
  }
}

.works {
  position: relative;
}

.works:before {
  content: "";
  position: absolute;
  top: 156px;
  top: 9.75rem;
  right: 0;
  width: 100%;
  height: 1398px;
  height: 87.375rem;
  z-index: -1;
  background-image: linear-gradient(to left top, transparent 50%, #F9F871 49.9%, #F9F871 calc(50% + 1px), transparent calc(50.1% + 1px));
}
@media screen and (min-width: 768px) {
  .works:before {
    display: none;
  }
}

.works__bg {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(43%, transparent), color-stop(43%, #333333), to(#333333));
  background: linear-gradient(180deg, transparent 0%, transparent 43%, #333333 43%, #333333 100%);
  margin: 0 calc(50% - 50vw);
  width: 100%;
  height: 100%;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .works__bg {
    margin-top: -0.25rem;
    background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(30%, transparent), color-stop(30%, #333333), to(#333333));
    background: linear-gradient(90deg, transparent 0%, transparent 30%, #333333 30%, #333333 100%);
  }
}

.works__images {
  width: 100%;
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .works__images {
    width: 50.6%;
    margin: 0;
  }
}

@media screen and (min-width: 768px) {
  .works__images--single {
    width: 100%;
    margin: 0;
    margin-top: 2rem;
  }
}

.works__images--single.inner {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .works__images--single.inner {
    max-width: 50.0625rem;
    margin-right: auto;
    margin-left: auto;
    padding: 0 1.5625rem;
  }
}

.works__wrapper {
  position: relative;
}

.works__contents {
  margin-top: 45px;
  margin-top: 2.8125rem;
}
@media screen and (min-width: 768px) {
  .works__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 2.3125rem;
    padding-top: 5.0625rem;
    padding-bottom: 4.8125rem;
  }
}

.works__contents.inner {
  padding: 0;
  max-width: 500px;
  max-width: 31.25rem;
}
@media screen and (min-width: 768px) {
  .works__contents.inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
    padding-top: 5.0625rem;
    padding-bottom: 4.8125rem;
    max-width: 71.875rem;
  }
}

.works__body.inner {
  max-width: 550px;
  max-width: 34.375rem;
}
@media screen and (min-width: 768px) {
  .works__body.inner {
    padding-left: 2rem;
    padding-right: 0;
  }
}

.works__img {
  position: relative;
}

.works__img::before {
  content: "";
  display: block;
  padding-top: 69.6%;
}
@media screen and (min-width: 768px) {
  .works__img::before {
    padding-top: 69.8384201%;
  }
}

.works__img img {
  top: 50%;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.works__body {
  padding-top: 30px;
  padding-top: 1.875rem;
  padding-bottom: 21px;
  padding-bottom: 1.3125rem;
  color: #ffffff;
}
@media screen and (min-width: 768px) {
  .works__body {
    padding-top: 2.125rem;
    padding-bottom: 2.4375rem;
    width: 49.4%;
    background-color: transparent;
  }
}

@media screen and (min-width: 768px) {
  .works__inner--single.inner {
    max-width: 50.0625rem;
  }
}

.works__box {
  margin-top: 80px;
  margin-top: 5rem;
}

@media screen and (min-width: 768px) {
  .works__box.inner {
    max-width: 50.0625rem;
  }
}

@media screen and (min-width: 768px) {
  .works__thumb {
    margin-top: 2.5rem;
  }
}

.wp-breadcrumb {
  color: #ffffff;
  margin-left: 20px;
  margin-left: 1.25rem;
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .wp-breadcrumb {
    margin-left: 5.625rem;
  }
}

.wp-breadcrumb--works {
  margin-top: 0;
  padding-top: 66px;
  padding-top: 4.125rem;
}
.wp-breadcrumb span {
  margin-right: -5px;
  margin-right: -0.3125rem;
}

.wp-breadcrumb span:nth-child(n+2) {
  margin-left: -15px;
  margin-left: -0.9375rem;
}

.wp-pagenavi {
  clear: both;
  text-align: center;
  font-weight: 400;
  clear: both;
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.2em;
}

.wp-pagenavi a, .wp-pagenavi span {
  color: #ffffff;
  border: solid 1px #ffffff;
  padding-right: 8px;
  padding-right: 0.5rem;
  padding-left: 8px;
  padding-left: 0.5rem;
  text-align: center;
  margin-right: 16px;
  margin-right: 1rem;
}

.wp-pagenavi a:hover {
  color: #333333;
  background-color: #ffffff;
  opacity: 1;
}

.wp-pagenavi a:first-child {
  margin-right: 24px;
  margin-right: 1.5rem;
}

.wp-pagenavi a:nth-child(5) {
  margin-right: 24px;
  margin-right: 1.5rem;
}

.wp-pagenavi a:last-child {
  margin-right: 0;
}

.wp-pagenavi span.current {
  color: #333333;
  background-color: #ffffff;
  font-weight: 400;
}

.related__title {
  color: #ffffff;
  font-size: 16px;
  font-size: 1rem;
  text-align: center;
  padding-top: 8px;
  padding-top: 0.5rem;
  padding-bottom: 8px;
  padding-bottom: 0.5rem;
  background-color: #333333;
  border: 1px solid #ffffff;
  letter-spacing: 0.2em;
}

.related__title--mobile {
  background-color: transparent;
  opacity: 0.9;
}

.top-blog {
  margin-top: 100px;
  margin-top: 6.25rem;
}
@media screen and (min-width: 768px) {
  .top-blog {
    margin-top: 12.5625rem;
  }
}

.top-blog--single {
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (min-width: 768px) {
  .top-blog--single {
    margin-top: 6.5rem;
  }
}

.top-contact {
  margin-top: 118px;
  margin-top: 7.375rem;
  padding-top: 69px;
  padding-top: 4.3125rem;
  padding-bottom: 62px;
  padding-bottom: 3.875rem;
}
@media screen and (min-width: 768px) {
  .top-contact {
    margin-top: 9.375rem;
    padding-top: 9rem;
    padding-bottom: 9.3125rem;
  }
}

.top-content {
  margin-top: 151px;
  margin-top: 9.4375rem;
}
@media screen and (min-width: 768px) {
  .top-content {
    margin-top: 11.9375rem;
  }
}

.top-footer {
  margin-top: 52px;
  margin-top: 3.25rem;
}
@media screen and (min-width: 768px) {
  .top-footer {
    margin-top: 2.4375rem;
    margin-bottom: 1.625rem;
  }
}

.top-news {
  margin-top: 24px;
  margin-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .top-news {
    margin-top: 1.9375rem;
  }
}

.top-overview {
  margin-top: 121px;
  margin-top: 7.5625rem;
}
@media screen and (min-width: 768px) {
  .top-overview {
    margin-top: 12.375rem;
  }
}

.top-single {
  margin-top: 78px;
  margin-top: 4.875rem;
}
@media screen and (min-width: 768px) {
  .top-single {
    margin-top: 5.6875rem;
  }
}

.top-sub {
  margin-top: 85px;
  margin-top: 5.3125rem;
}
@media screen and (min-width: 768px) {
  .top-sub {
    margin-top: 4.3125rem;
  }
}

.top-sub--page {
  margin-top: 85px;
  margin-top: 5.3125rem;
}
@media screen and (min-width: 768px) {
  .top-sub--page {
    margin-top: 7.1875rem;
  }
}

.top-sub--contact {
  margin-top: 85px;
  margin-top: 5.3125rem;
}
@media screen and (min-width: 768px) {
  .top-sub--contact {
    margin-top: 7.1875rem;
    margin-bottom: 9.375rem;
  }
}

.top-works {
  margin-top: 121px;
  margin-top: 7.5625rem;
}
@media screen and (min-width: 768px) {
  .top-works {
    margin-top: 12.375rem;
  }
}

.top-works--single {
  margin-top: 53px;
  margin-top: 3.3125rem;
}
@media screen and (min-width: 768px) {
  .top-works--single {
    margin-top: 5.6875rem;
  }
}
/*# sourceMappingURL=styles.css.map */
