@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');
html {
  font-size: 62.5%;
}

body {
  line-height: 1.33;
  font-size: 1.6em;
  font-family: 'Noto Serif JP', serif;
  font-weight: 200;
  color: #333;
  letter-spacing: 0.075em;
}

body.blog {
  padding: 0;
}

p, a {
  font-weight: 200;
}

img {
  max-width: 100%;
  width: 100%;
  vertical-align: bottom;
}

a {
  text-decoration: none;
  outline: none;
}

li {
  list-style: none;
}

textarea,
input[type=text],
input[type=tel],
input[type=password],
select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #333;
}

input::-ms-clear,
input::-ms-reveal {
  visibility: hidden;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  border: 1px solid transparent;
  color: #fff;
  font-family: 'Noto Serif JP', serif;;
  background-color: rgba(0, 0, 0, 0.35);
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
@media (max-width: 767px) {
  .header {
    background-color: transparent;
  }
}

.header__inner {
  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;
  margin: 0 auto;
  padding: 10px 40px 0;
  width: 100%;
  height: 120px;
}
@media (max-width: 1439px) {
  .header__inner {
    padding: 15px;
  }
}
@media (max-width: 1023px) {
  .header__inner {
    height: 90px;
  }
}
@media (max-width: 767px) {
  .header__inner {
    height: auto;
  }
}
.header__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;/*
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 30px;*/
}
.header__logo-wrapper {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.header__logo {
  margin-right: 17px;
  width: 50px;
  font-size: 0;
}
@media (max-width: 1439px) {
  .header__logo {
  }
}
@media (max-width: 1023px) {
  .header__logo {
    margin-right: 10px;
  }
}
@media (max-width: 767px) {
  .header__logo {
    margin-right: 10px;
    width: 26px;
  }
}
.header__logo-img {
  display: none;
}
.header__text {
  font-size: 2rem;
  line-height: 1.36;
  font-weight: 200;
}
@media (max-width: 1439px) {
  .header__text {
    font-size: 1.4rem;
  }
}
@media (max-width: 767px) {
  .header__text {
    font-size: 1rem;
    transform: scale(.9);
  }
}
@media (max-width: 767px) {
  .hmbg-sns img {
    display: inline-block!important;
    height: 20px;
    width: auto;
  }
}

.header__nav {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 1023px) {
  .header__nav {
    display: none;
  }
}
.header__nav-item {
  margin-right: 2.5%;
}
@media (max-width: 1439px) {
  .header__nav-item {
    margin-right: 2%;
  }
}
.header__nav-item > span {
  display: inline!important;
}
.txt-w {
  color: #fff!important;
}

.header__nav-item > span > a {
  display: inline!important;
}
.header__nav-item:last-of-type {
  margin-right: 0;
}
.header__nav-item--flex {
  display: flex;
  align-items: center;
}
.header__nav-item--flex > * {
  margin-right: 8%;
}
.header__nav-item--flex > *:last-of-type,
.header__nav-item--flex > *:nth-last-of-type(2) {
  margin-right: 0;
}
.header__link {
  color: #fff;
  font-size: 1.8rem;
  line-height: 1.36;
  font-weight: 200;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  white-space: nowrap;
}
@media (max-width: 1439px) {
  .header__link {
    font-size: 1.4rem;
  }
}
.header__link:focus, .header__link:hover {
  opacity: 0.7;
}
.header__btn {
  flex-shrink: 0;
  display: block;
  padding: 10px;
  width: 130px;
  border: 1px solid #333333;
  border-radius: 10px;
  color: #333;
  background-color: #fff;
  font-family: inherit;
  font-size: 1.2rem;
  line-height: 1.36;
  font-weight: 200;
  letter-spacing: 0.1em;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.header__btn:hover {
  opacity: .7;
}
@media (max-width: 1439px) {
  .header__btn {
    flex-shrink: 1;
    width: 130px;
    font-size: 1.5rem;
  }
}
@media (max-width: 1023px) {
  .header__btn {
    width: 100px;
  }
}
.header__icon-link,
.header__icon-link-white {
  transition: .3s;
}
.header__icon-link:focus,
.header__icon-link:hover,
.header__icon-link-white:focus,
.header__icon-link-white:hover {
  opacity: .7;
}
.header__icon-link img,
.header__icon-link-white img {
  width: 60px;
}
@media (max-width: 1439px) {
  .header__icon-link img,
  .header__icon-link-white img {
    width: 45px;
  }
}
.header__icon-link {
  display: none;
}
.header--white, .header.white {
  color: #333;
  border: 1px solid #707070;
  background-color: #fff;
}
.header--white .header__logo-img, .header.white .header__logo-img {
  display: block;
}
.header--white .header__link, .header.white .header__link {
  color: #333;
}
.header--white .header__logo-img-white, .header.white .header__logo-img-white {
  display: none;
}
.header--white .header__icon-link, .header.white .header__icon-link {
  display: block;
}
.header--white .header__icon-link-white, .header.white .header__icon-link-white {
  display: none;
}

.container {
  margin: 0 auto;
  padding: 0 30px;
  max-width: 964px;
  width: 90%;
}
@media (max-width: 767px) {
  .container {
    width: 100%;
  }
}

.footer {
  padding: 50px 0 52px;
}
@media (max-width: 767px) {
  .footer {
    padding-bottom: 90px;
  }
}
.footer__top-img {
  margin: 0 auto 47px;
  width: 200px;
}
@media (max-width: 767px) {
  .footer__top-img {
    width: 180px;
  }
}
.footer__horizontal-list {
  margin-bottom: 30px;
  padding-bottom: 44px;
  border-bottom: 1px solid #CCCCCC;
  font-weight: 200;
}
@media (max-width: 767px) {
  .footer__horizontal-list {
    padding-bottom: 10px;
  }
}
.footer__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 85px;
}
@media (max-width: 767px) {
  .footer__inner {
    display: block;
    text-align: center;
  }
  .footer__right {
    text-align: center!important;
  }
}
.footer__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media (max-width: 767px) {
  .footer__left {
    display: block;
  }
}
.footer__logo {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 5.31%;
  width: 120px;
}
@media (max-width: 767px) {
  .footer__logo {
    margin: 0 auto 15px;
  }
}
.footer__text {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding-top: 15px;
  font-size: 1.3rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 200;
  line-height: 1.77;
  letter-spacing: 0.075em;
}
@media (max-width: 767px) {
  .footer__text {
    margin-bottom: 20px;
    text-align: center;
  }
}
.footer__btn {
  display: inline-block;
  margin-bottom: 15px;
  width: 151px;
  padding: 8.5px;
  border: 2px solid #333333;
  border-radius: 10px;
  color: #fff;
  background-color: #333333;
  font-size: 1.4rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  line-height: 1.36;
  font-weight: 200;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .footer__before-icon-link.before-icon-link {
    margin: 0 auto;
  }
}
.footer__btn:focus, .footer__btn:hover {
  color: #333333;
  background-color: #fff;
}
.footer__before-icon-link.before-icon-link {
  width: 151px;
  padding: 11px;
  border-radius: 10px;
  color: #fff;
  background-color: #333333;
  font-size: 1.4rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  line-height: 1.36;
  font-weight: bold;
  text-align: center;
}
.footer__before-icon-link.before-icon-link:focus, .footer__before-icon-link.before-icon-link:hover {
  color: #333333;
  background-color: #fff;
}

.only-pc {
  display: block;
}
@media (max-width: 1023px) {
  .only-pc {
    display: none;
  }
}

.only-tab {
  display: none;
}
@media (max-width: 1023px) {
  .only-tab {
    display: block;
  }
}

.only-sp {
  display: none;
}
@media (max-width: 767px) {
  .only-sp {
    display: block;
  }
}

.humburger-btn {
  display: none;
  width: 50px;
  height: 50px;
  padding: 0;
  border: none;
  background-color: transparent;
  position: fixed;
  right: 20px;
  top: 15px;
  z-index: 120;
  cursor: pointer;
}

@media (max-width: 767px) {
  .humburger-btn {
    width: 25px;
    height: 25px;
    padding: 0;
    border: none;
    background-color: transparent;
    position: fixed;
    right: 20px;
    top: 15px;
    z-index: 120;
    cursor: pointer;
  }
}
@media (max-width: 1023px) {
  .humburger-btn {
    display: block;
  }
}
.humburger-btn .humburger-btn__line {
  width: 30px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.humburger-btn .humburger-btn__line::before {
  content: "";
  width: 30px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: -10px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}
.humburger-btn .humburger-btn__line::after {
  content: "";
  width: 30px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 10px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}
.humburger-btn.white .humburger-btn__line, .humburger-btn--white .humburger-btn__line {
  background-color: #333;
}
.humburger-btn.white .humburger-btn__line::before, .humburger-btn.white .humburger-btn__line:after, .humburger-btn--white .humburger-btn__line::before, .humburger-btn--white .humburger-btn__line:after {
  background-color: #333;
}

.humburger-btn.cross .humburger-btn__line {
  background-color: rgba(255, 255, 255, 0);
  -webkit-transition: background-color 0.5s;
  transition: background-color 0.5s;
}
.humburger-btn.cross .humburger-btn__line::before {
  background-color: #fff;
  -webkit-transform: translate(-50%, 11px) rotate(45deg);
          transform: translate(-50%, 11px) rotate(45deg);
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
  z-index: 120;
}
.humburger-btn.cross .humburger-btn__line::after {
  background: #fff;
  -webkit-transform: translate(-50%, -9px) rotate(-45deg);
          transform: translate(-50%, -9px) rotate(-45deg);
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
  z-index: 120;
}

.humburger-nav-wrapper {
  width: 75%;
  height: 100vh;
  position: fixed;
  top: 0;
  right: -100%;
  z-index: 110;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.humburger-nav-wrapper.open {
  right: 0;
}
.humburger-nav-wrapper .humburger-nav {
  width: 100%;
  height: 100%;
  background-color: rgba(85, 85, 85, 0.9);
}
.humburger-nav-wrapper .humburger-nav__logo {
  margin: 0 auto 50px;
  width:70px;
}
.humburger-nav-wrapper .humburger-nav .humburger-nav__list {
  display: block;
  position: absolute;
  top: 48%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
}
.humburger-nav-wrapper .humburger-nav .humburger-nav__list .humburger-nav__item {
  margin-bottom: 30px;
}
.humburger-nav-wrapper .humburger-nav .humburger-nav__list .humburger-nav__item:last-child {
  margin-bottom: 0;
}
.humburger-nav-wrapper .humburger-nav .humburger-nav__list .humburger-nav__item a {
  color: #fff;
  font-size: 1.8rem;
  white-space: nowrap;
}
.humburger-nav-wrapper .humburger-nav .humburger-nav__list .humburger-nav__item a i {
  padding-right: 6px;
}

.fv {
  position: relative;
  margin-top: -22px;
}
.fv .swiper-wrapper {
  height: 101vh;
}
@media (max-width: 767px) {
  .fv picture {
    height: 100%;
  }
  .fv .swiper-wrapper {
    height: calc(100vh - 70px);
  }
}
.fv .swiper-slide img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.fv__content {
  position: absolute;
  top: 35.25%;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  z-index: 1;
  padding: 0 30px;
  width: 100%;
  color: #fff;
  font-family: 'Noto Serif JP', serif;
  font-weight: 200;
  letter-spacing: 0.2em;
  text-align: center;
}
@media (max-width: 767px) {
  .fv__content {
    top: 35.55%;
    padding: 0 20px;
  }
}
.fv__main-text {
  margin-bottom: 14px;
  font-size: 6rem;
}
@media (max-width: 1439px) {
  .fv__main-text {
    font-size: 4.8rem;
  }
}
@media (max-width: 1023px) {
  .fv__main-text {
    font-size: 3.8rem;
  }
}
@media (max-width: 767px) {
  .fv__main-text {
    font-size: 2rem;
  }
}
.fv__text {
  font-size: 2.3rem;
}
@media (max-width: 1023px) {
  .fv__text {
    font-size: 2rem;
  }
}
@media (max-width: 767px) {
  .fv__text {
    font-size: 1rem;
    transform: scale(.85);
  }
}

.top-about {
  padding: 72px 0 78px;
}
.top-about__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 67px;
}
@media (max-width: 1023px) {
  .top-about__inner {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (max-width: 767px) {
  .top-about__inner {
    display: block;
  }
}
.top-about__content {
  position: relative;
  z-index: 1;
  margin-right: -5.2%;
  padding: 47px 5.01% 39px 2.76%;
  width: 56.08%;
  background-color: rgba(255, 246, 235, 0.8);
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  font-family: 'Noto Serif JP', serif;
}
@media (max-width: 767px) {
  .top-about__content {
    width: 90%;
  }
}
@media (max-width: 767px) {
  .top-about__content {
    padding: 45px 3% 40px;
  }
}
.top-about__title {
  margin-bottom: 12px;
  padding-left: 1.59%;
  font-size: 2.3rem;
  font-weight: 200;
  letter-spacing: 0.1em;
}
@media (max-width: 1023px) {
  .top-about__title {
    font-size: 2rem;
  }
}
.top-about__title--center {
  padding-left: 0;
  text-align: center;
}
.top-about__title--right {
  margin-bottom: 31px;
  padding-left: 0;
  text-align: right;
}
.top-about__text {
  font-size: 1.6rem;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .top-about__text {
    font-size: 1.4rem;
  }
}
.top-about__img {
  position: relative;
  margin-top: 90px;
  padding-top: 30.75%;
  width: 49.11%;
  overflow: hidden;
}
@media (max-width: 1023px) {
  .top-about__img {
    margin-top: 0;
  }
}
@media (max-width: 767px) {
  .top-about__img {
    margin: -20px 0 0 auto;
    padding-top: 0;
    width: 80%;
  }
}
.top-about__img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767px) {
  .top-about__img img {
    height: auto;
    position: static;
  }
}

.btn {
  display: inline-block;
  max-width: 536px;
  width: 100%;
  padding: 19px;
  border: 1px solid #8E2511;
  border-radius: 45px;
  color: #fff;
  background-color: #8E2511;
  font-family: 'Noto Serif JP', serif;
  font-weight: 200;
  line-height: 1.31;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.btn:focus, .btn:hover {
  color: #8E2511;
  background-color: #fff;
}
@media (max-width: 1023px) {
  .btn {
    padding: 12px;
    max-width: 400px;
  }
}
@media (max-width: 767px) {
  .btn {
    padding: 10px;
    width: 85%;
    font-size: 1.4rem;
  }
}
.btn--white {
  border-color: #333;
  color: #333;
  background-color: #fff;
}
.btn--white:focus, .btn--white:hover {
  background-color: #333;
  color: #fff;
}

.btn-wrapper {
  text-align: center;
}

.top-results {
  padding: 67px 0 0;
  background-image: url("./../images/common/bg1.png");
  background-repeat: repeat;
}
.top-results__section-title {
  margin-bottom: 62px;
}
.top-results__link-card-wrapper-col4 {
  margin-bottom: 70px;
}
@media (max-width: 1023px) {
  .top-results__link-card-wrapper-col4 {
    margin: 0 auto 40px;
    max-width: 600px;
  }
}
@media (max-width: 767px) {
  .top-results__link-card-wrapper-col4 {
    max-width: 280px;
  }
}
.top-results__link-card .link-card__img {
  padding-top: 70%;
}
.top-results__link-card .link-card__img img {
  height: 100%;
  position: absolute;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-results__link-card .link-card__body {
  padding: 12px 21px 36px;
}
.top-results__btn-wrapper {
  margin-bottom: 69px;
}
.top-results__img {
  position: relative;
  width: 100%;
  padding-top: 16.84%;
}
.top-results__img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.section-title {
  font-size: 3rem;
  font-family: 'Noto Serif JP', serif;
  letter-spacing: 0.2em;
  font-weight: 700;
  text-align: center;
}

.section-title-img {
  margin-bottom: 40px;
  text-align: center;
}
@media (max-width: 767px) {
  .section-title-img {
    margin-bottom: 20px;
  }
}
.section-title-img img {
  display: inline-block;
  width: 240px;
}
@media (max-width: 767px) {
  .section-title-img img {
    width: 120px;
  }
}

.link-card {
  display: flex;
  flex-direction: column;
}
.link-card__img {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.link-card__img::before {
  content: "";
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.link-card:focus .link-card__img::before, .link-card:hover .link-card__img::before {
  display: block;
}
.link-card:focus .link-card__img img, .link-card:hover .link-card__img img {
  -webkit-transform: scale(1.15);
          transform: scale(1.15);
}
.link-card__img img {
  height: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.link-card__body {
  flex-grow: 1;
  position: relative;
  padding: 19px 21px 57px;
  color: #333;
  background-color: #fff;
  border: 1px solid #707070;
}
.link-card__date {
  margin-bottom: 5px;
  font-size: 1.2rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
.link-card__title {
  font-size: 1.8rem;
  font-weight: 800;
}
.link-card__link {
  position: absolute;
  right: 31px;
  bottom: 9px;
  text-decoration: underline;
  font-size: 1rem;
  line-height: 1.4;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.link-card__link:focus, .link-card__link:hover {
  text-decoration: none;
}

.link-card-wrapper-col4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 1023px) {
  .link-card-wrapper-col4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media (max-width: 767px) {
  .link-card-wrapper-col4 {
    display: block;
  }
}
.link-card-wrapper-col4 .link-card {
  -ms-flex-preferred-size: 22.3%;
      flex-basis: 22.3%;
  margin-right: 3.87%;
}
@media (max-width: 1023px) {
  .link-card-wrapper-col4 .link-card {
    -ms-flex-preferred-size: 46%;
        flex-basis: 46%;
    margin-right: 0;
    margin-bottom: 30px;
  }
}
.link-card-wrapper-col4 .link-card:nth-of-type(4n) {
  margin-right: 0;
}

.link-card-wrapper-col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (max-width: 1023px) {
  .link-card-wrapper-col3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media (max-width: 767px) {
  .link-card-wrapper-col3 {
    display: block;
  }
}
.link-card-wrapper-col3 .link-card {
  -ms-flex-preferred-size: 28.76%;
      flex-basis: 28.76%;
  margin-right: 6.86%;
  margin-bottom: 80px;
}
@media (max-width: 1023px) {
  .link-card-wrapper-col3 .link-card {
    -ms-flex-preferred-size: 42%;
        flex-basis: 42%;
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .link-card-wrapper-col3 .link-card {
    margin-bottom: 40px;
  }
}
.link-card-wrapper-col3 .link-card:nth-of-type(3n) {
  margin-right: 0;
}

.top-products {
  padding: 90px 0 130px;
}
@media (max-width: 767px) {
  .top-products {
    padding: 70px 0 100px;
  }
}
.top-products__section-title {
  margin-bottom: 81px;
}
@media (max-width: 767px) {
  .top-products__section-title {
    margin-bottom: 60px;
  }
}
.top-products__card-wrapper {
  margin-bottom: 99px;
}
@media (max-width: 767px) {
  .top-products__card-wrapper {
    margin-bottom: 60px;
  }
}
.top-products__bottom {
  padding: 50px 8.4%;
  background-color: #F0F0F0;
}
@media (max-width: 1023px) {
  .top-products__bottom {
    padding: 40px 5%;
  }
}
@media (max-width: 767px) {
  .top-products__bottom {
    padding: 20px;
  }
}
.top-products__bottom-inner {
  padding: 25px 10.1% 32px;
  background-color: #fff;
}
@media (max-width: 1023px) {
  .top-products__bottom-inner {
    padding: 20px 5% 25px;
  }
}
@media (max-width: 767px) {
  .top-products__bottom-inner {
    padding: 20px 20px 25px;
  }
}
.top-products__bottom-title {
  margin-bottom: 22px;
  font-size: 3rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 700;
  text-align: center;
}
@media (max-width: 767px) {
  .top-products__bottom-title {
    font-size: 2.2rem;
  }
}

.card {
  display: block;
  cursor: pointer;
}
.card:focus .card__img::before, .card:hover .card__img::before {
  display: block;
}
.card:focus .card__img img, .card:hover .card__img img {
  -webkit-transform: scale(1.15);
          transform: scale(1.15);
}
.card__img {
  position: relative;
  margin-bottom: 24px;
  padding-top: 56.31%;
  width: 100%;
  overflow: hidden;
}
.card__img::before {
  content: "";
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.card__img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.card__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #333;
}
.card__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 28px;
  font-size: 2rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  line-height: 1.35;
  font-weight: bold;
}
@media (max-width: 767px) {
  .card__title {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-right: 20px;
  }
}
.card__title::before {
  content: "";
  display: block;
  margin-right: 18px;
  width: 7px;
  height: 32px;
  background-color: #333;
}
@media (max-width: 767px) {
  .card__title::before {
    margin-right: 10px;
  }
}
.card__link {
  display: inline-block;
  padding: 2px 18px 3px 15px;
  border: 1px solid #707070;
  border-radius: 3px;
  background-color: #D0EFD0;
  font-size: 1rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  line-height: 1.4;
  font-weight: bold;
  letter-spacing: 0.05em;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .card__link {
    padding: 2px 12px 3px 12px;
  }
}
.card__link:focus, .card__link:hover {
  opacity: 0.7;
}
.card--media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 767px) {
  .card--media {
    display: block;
  }
}
.card--media .card__img {
  -ms-flex-preferred-size: 43.33%;
      flex-basis: 43.33%;
  margin-right: 8.5%;
  margin-bottom: 0;
  padding-top: 24.33%;
}
@media (max-width: 1023px) {
  .card--media .card__img {
    margin-right: 6%;
  }
}
@media (max-width: 767px) {
  .card--media .card__img {
    margin-bottom: 24px;
    padding-top: 56.26%;
  }
}
.card--media .card__body {
  display: block;
}
@media (max-width: 767px) {
  .card--media .card__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.card--media .card__title {
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .card--media .card__title {
    margin-bottom: 0;
    font-size: 1.8rem;
  }
}
.card--media .card__link {
  margin-left: 18px;
}
@media (max-width: 767px) {
  .card--media .card__link {
    margin-left: 0;
  }
}

.card-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (max-width: 767px) {
  .card-wrapper {
    display: block;
  }
}
.card-wrapper .card {
  -ms-flex-preferred-size: 49.11%;
      flex-basis: 49.11%;
  margin-bottom: 130px;
}
.card-wrapper .card:nth-last-of-type(1), .card-wrapper .card:nth-last-of-type(2) {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .card-wrapper .card {
    -ms-flex-preferred-size: 46%;
        flex-basis: 46%;
    margin-bottom: 80px;
  }
}
@media (max-width: 767px) {
  .card-wrapper .card {
    margin-bottom: 40px;
  }
}
@media (max-width: 767px) {
  .card-wrapper .card:nth-last-of-type(2) {
    margin-bottom: 40px;
  }
}

.top-flow {
  padding: 84px 0 114px;
  background-color: #FFF6EB;
}
@media (max-width: 767px) {
  .top-flow {
    padding: 70px 0 90px;
  }
}
.top-flow__section-title {
  margin-bottom: 33px;
}
.top-flow__lead {
  margin-bottom: 85px;
  font-size: 1.4rem;
  font-family: 'Noto Serif JP', serif;
  line-height: 2;
  font-weight: 300;
  text-align: center;
}
@media (max-width: 767px) {
  .top-flow__lead {
    margin-bottom: 60px;
  }
}
.top-flow__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 39px;
}
@media (max-width: 767px) {
  .top-flow__list {
    display: block;
    margin: 0 auto 40px;
    max-width: 280px;
  }
}
.top-flow__list-item {
  -ms-flex-preferred-size: 28.76%;
      flex-basis: 28.76%;
  margin-bottom: 66px;
}
@media (max-width: 767px) {
  .top-flow__list-item {
    margin-bottom: 35px;
  }
}
.top-flow__title {
  margin-bottom: 15px;
  font-size: 2rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  line-height: 1.35;
  font-weight: bold;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .top-flow__title {
    margin-bottom: 10px;
  }
}
.top-flow__img {
  position: relative;
  margin-bottom: 23px;
  padding-top: 66.54%;
}
@media (max-width: 767px) {
  .top-flow__img {
    margin-bottom: 16px;
  }
}
.top-flow__img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.top-flow__text {
  font-size: 1.4rem;
  font-family: 'Noto Serif JP', serif;
  line-height: 2;
  font-weight: 300;
}

.top-news {
  padding: 115px 0 106px;
  background-image: url("./../images/common/bg1.png");
  background-repeat: repeat;
}
@media (max-width: 767px) {
  .top-news {
    padding: 70px 0;
  }
}
.top-news__container {
  max-width: 780px;
}
.top-news__section-title {
  margin-bottom: 47px;
}
@media (max-width: 767px) {
  .top-news__section-title {
    margin-bottom: 40px;
  }
}
.top-news__list {
  margin-bottom: 21px;
  padding: 16px 6.39% 21px;
  border: 1px solid #707070;
  border-radius: 5px;
  background-color: #fff;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
@media (max-width: 767px) {
  .top-news__list {
    padding: 15px 25px;
  }
}
.top-news__list-item {
  padding: 30px 0;
  border-bottom: 1px solid #cccccc;
}
.top-news__list-item:last-of-type {
  border-bottom: none;
}
.top-news__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.top-news__link:focus, .top-news__link:hover {
  opacity: 0.7;
}
@media (max-width: 767px) {
  .top-news__link {
    display: block;
  }
}
.top-news__date {
  margin-right: 9.55%;
  color: #666666;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  line-height: 1.31;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .top-news__date {
    margin-bottom: 6px;
  }
}
.top-news__title {
  color: #333333;
  font-size: 1.4rem;
  line-height: 1.36;
  letter-spacing: 0.05em;
}
.top-news__more {
  display: block;
  margin-right: 27px;
  color: #8D2411;
  line-height: 2;
  letter-spacing: 0.05em;
  text-decoration: underline;
  text-underline-offset: 0.1em;
  text-align: right;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.top-news__more:focus, .top-news__more:hover {
  text-decoration: none;
}

.top-blog {
  padding: 91px 0 226px;
}
@media (max-width: 767px) {
  .top-blog {
    padding: 70px 0 180px;
  }
}
.top-blog__section-title {
  margin-bottom: 64px;
}
@media (max-width: 767px) {
  .top-blog__section-title {
    margin-bottom: 40px;
  }
}
.top-blog__list {
  margin-bottom: 95px;
}
.top-blog__media {
  margin-bottom: 72px;
}
.top-blog__media:last-of-type {
  margin-bottom: 0;
}
.top-blog__media .media__img {
  position: relative;
  padding-top: 29.42%;
}
@media (max-width: 767px) {
  .top-blog__media .media__img {
    padding-top: 70%;
  }
}
.top-blog__media .media__img img {
  height: 100%;
  position: absolute;
  top: 0;
  object-fit: cover;
}

.media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 767px) {
  .media {
    display: block;
  }
}
.media:focus .media__img::before, .media:hover .media__img::before {
  display: block;
}
.media:focus .media__img img, .media:hover .media__img img {
  -webkit-transform: scale(1.15);
          transform: scale(1.15);
}
.media__img {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 44.25%;
      flex-basis: 44.25%;
  margin-right: 6.64%;
  overflow: hidden;
}
.media__img::before {
  content: "";
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (max-width: 1023px) {
  .media__img {
    margin-right: 3%;
  }
}
.media__img img {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.media__body {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding-top: 4.76%;
}
@media (max-width: 1023px) {
  .media__body {
    padding-top: 10px;
  }
}
.media__date {
  margin-bottom: 8px;
  color: #666666;
  font-size: 1.8rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media (max-width: 1023px) {
  .media__date {
    font-size: 1.6rem;
  }
}
@media (max-width: 767px) {
  .media__date {
    font-size: 1.4rem;
  }
}
.media__title {
  margin-bottom: 24px;
  padding-bottom: 28px;
  border-bottom: 1px solid #707070;
  color: #333333;
  font-size: 2.2rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  line-height: 1.36;
  font-weight: bold;
}
@media (max-width: 1023px) {
  .media__title {
    padding-bottom: 20px;
    margin-bottom: 24px;
  }
}
@media (max-width: 767px) {
  .media__title {
    font-size: 1.8rem;
  }
}
.media__text {
  color: #333333;
  font-size: 1.4rem;
  line-height: 1.36;
}

.before-icon-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  justify-content: center;
  padding: 3px 18px;
  border: 1px solid #333333;
  border-radius: 3px;
  color: #333333;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (max-width: 1023px) {
  .before-icon-link {
    padding: 3px 10px;
  }
}
.before-icon-link:focus, .before-icon-link:hover {
  background-color: #333333;
  color: #fff;
}
.before-icon-link__icon {
  display: inline-block;
  -ms-flex-preferred-size: 12px;
      flex-basis: 12px;
  margin-right: 8px;
}
.before-icon-link__text {
  font-size: 1rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  line-height: 1.4;
  font-weight: bold;
  letter-spacing: 0.05em;
}

.cta__top {
  display: block;
  padding: 16px 0 10px;
  width: 100%;
  background-color: #D8D8D8;
}
.cta__arrow {
  margin: 0 auto;
  width: 167.5px;
  text-align: center;
}
.cta__wrapper {
  padding: 40px 0;
  background-color: #555555;
}
@media (max-width: 767px) {
  .cta__wrapper {
    padding: 40px 20px;
  }
}
.cta__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 44px 2.63% 33px;
  max-width: 904px;
  background-color: #fff;
}
@media (max-width: 767px) {
  .cta__inner {
    display: block;
    padding: 30px 15px;
  }
}
.cta__item {
  -ms-flex-preferred-size: 48.67%;
      flex-basis: 48.67%;
  padding-top: 4px;
  padding-bottom: 33px;
  border-right: 1px solid #707070;
}
@media (max-width: 1023px) {
  .cta__item {
    -ms-flex-preferred-size: 46%;
        flex-basis: 46%;
  }
}
@media (max-width: 767px) {
  .cta__item {
    border-right: none;
  }
}
.cta__item:last-of-type {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding-left: 5.05%;
  border-right: none;
}
@media (max-width: 767px) {
  .cta__item:last-of-type {
    padding-left: 0;
  }
}
.cta__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 40px;
}
@media (max-width: 1023px) {
  .cta__head {
    margin-bottom: 20px;
  }
}
.cta__title {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 45px;
  font-size: 2.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 700;
}
@media (max-width: 1023px) {
  .cta__title {
    margin-right: 20px;
    font-size: 2rem;
  }
}
@media (max-width: 767px) {
  .cta__title {
    font-size: 1.8rem;
  }
}
.cta__before-icon-link {
  -ms-flex-preferred-size: 165px;
      flex-basis: 165px;
}
@media (max-width: 767px) {
  .cta__before-icon-link {
    -ms-flex-preferred-size: 150px;
        flex-basis: 150px;
  }
}
.cta__texts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.cta__icon {
  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;
  margin-right: 15px;
  width: 63px;
  height: 63px;
  border-radius: 50%;
  background-color: #8D2411;
}
@media (max-width: 1023px) {
  .cta__icon {
    width: 45px;
    height: 45px;
  }
}
.cta__icon img {
  width: auto;
  height: 42px;
}
@media (max-width: 1023px) {
  .cta__icon img {
    height: 32px;
  }
}
.cta__icon--fax {
  background-color: #000000;
}
.cta__icon--fax img {
  height: 36px;
}
@media (max-width: 1023px) {
  .cta__icon--fax img {
    height: 28px;
  }
}
.cta__number {
  font-size: 3.6rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0.05em;
  font-weight: bold;
}
@media (max-width: 1023px) {
  .cta__number {
    font-size: 2.4rem;
  }
}

.horizontal-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 767px) {
  .horizontal-list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.horizontal-list__item {
  margin-right: 5.3%;
}
.horizontal-list__item:last-of-type {
  margin-right: 0;
}
@media (max-width: 767px) {
  .horizontal-list__item:last-of-type {
    margin: 0 15px 10px;
  }
}
@media (max-width: 767px) {
  .horizontal-list__item {
    margin: 0 15px 10px;
  }
}
.horizontal-list__link {
  color: #333;
  font-size: 1.4rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 700;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.horizontal-list__link:focus, .horizontal-list__link:hover {
  opacity: 0.7;
}

.copyright {
  font-size: 1.1rem;
  line-height: 1.36;
  letter-spacing: 0.1em;
  text-align: center;
}

.page-top {
  position: fixed;
  right: 140px;
  bottom: -105px;
  display: inline-block;
  padding: 8px 7px 5px;
  width: 69px;
  height: 67px;
  background-color: rgba(255, 255, 255, 0.8);
}
@media (max-width: 1280px) {
  .page-top {
    right: 20px;
  }
}
@media (max-width: 767px) {
  .page-top {
    display: none;/*
    right: 10px;
    bottom: 105px;
    width: 46px;
    height: 45px;*/
  }
}
.page-top__text {
  color: #444444;
  font-size: 2.4rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0.1em;
  font-weight: bold;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .page-top__text {
    font-size: 1.4rem;
  }
}

.page-fv {
  position: relative;
  margin-top: 120px;
}
@media (max-width: 1023px) {
  .page-fv {
    margin-top: 90px;
  }
}
@media (max-width: 767px) {
  .page-fv {
    margin-top: 57px;
  }
}
.page-fv__img {
  position: relative;
  width: 100%;
  margin-top: -20px;
}
.page-fv__img::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.15);
}


.page-fv__img img {
  height: 350px;
  -o-object-fit: cover;
     object-fit: cover;
}

.page-fv__img.for-products img,
.page-fv__img.for-result img
{
  object-position: center bottom!important;
}

.page-fv__img.for-blog img
{
  object-position: center top!important;
}

@media (max-width: 767px) {
  .page-fv__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
.page-fv__content {
  position: absolute;
  top: 40%;
  left: 157px;
  transform: none;
}

.page-fv__content.products-title,
.page-fv__content.result-title,
.page-fv__content.blog-title
{
  left: 50%;
  top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    padding: 0 20px;
    width: 100%;
    text-align: center;
}

@media (max-width: 1023px) {
  .page-fv__content {
    left: 60px;
  }
}
@media (max-width: 767px) {
  .page-fv__content {
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    padding: 0 20px;
    width: 100%;
    text-align: center;
  }
}
.page-fv__text {
  color: #fff;
  font-size: 4.8rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 200;
  letter-spacing: 0.2em;
}
@media (max-width: 1439px) {
  .page-fv__text {
    font-size: 3.6rem;
  }
}
@media (max-width: 767px) {
  .page-fv__text {
    font-size: 3.2rem;
  }
}
.page-fv--no-img {
  height: 156px;
  background-color: #FFF6EB;
}
.page-fv--no-img .page-fv__text {
  color: #333;
}

.breadcrumbs__inner {
  margin: 0 auto;
  padding: 22px 20px;
  max-width: 1126px;
  width: 100%;
  color: #333;
  font-size: 1.4rem;
  font-weight: 800;
  line-height: 1.36;
}
@media (max-width: 767px) {
  .breadcrumbs__inner {
    font-size: 1.2rem;
  }
}
.breadcrumbs__inner > span {
  margin-left: 10px;
  margin-right: 17px;
}
@media (max-width: 767px) {
  .breadcrumbs__inner > span {
    margin-left: 6px;
    margin-right: 10px;
  }
}
.breadcrumbs__inner > span:first-of-type {
  margin-left: 0;
}
.breadcrumbs__inner > span:last-of-type {
  margin-right: 0;
}
.breadcrumbs a {
  color: #333;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.breadcrumbs a:focus, .breadcrumbs a:hover {
  opacity: 0.7;
}
.breadcrumbs--top {
  margin-top: 120px;
}
@media (max-width: 1023px) {
  .breadcrumbs--top {
    margin-top: 90px;
  }
}
@media (max-width: 767px) {
  .breadcrumbs--top {
    margin-top: 80px;
  }
}
.breadcrumbs--top .breadcrumbs__inner {
  padding: 48px 20px;
}

.about {
  padding: 120px 0 40px;
}
.about__container {
  max-width: 960px;
}
.about__page-section-title {
  margin-bottom: 43px;
  letter-spacing: 0.2em;
}
@media (max-width: 767px) {
  .about__page-section-title {
    margin-bottom: 35px;
  }
}
.about__img {
  position: relative;
}
.about__img::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.23);
}
.about__content {
  position: relative;
  z-index: 2;
  margin: -79px auto 102px;
  padding: 39px 4.22% 66px;
  width: 80%;
  background-color: rgba(254, 246, 235, 0.5);
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
@media (max-width: 767px) {
  .about__content {
    margin-top: -30px;
    padding: 40px 20px;
    width: 90%;
  }
}
.about__text {
  color: #000;
  font-size: 1.7rem;
  font-family: 'Noto Serif JP', serif;
  line-height: 2;
}
@media (max-width: 767px) {
  .about__text {
    font-size: 1.4rem;
  }
}
.about__bottom-img {
  margin: 0 auto 40px;
  width: 200px;
}
@media (max-width: 767px) {
  .about__bottom-img {
    margin-bottom: 20px;
    width: 120px;
  }
}
.about__bottom-text {
  font-size: 3rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-align: center;
}
@media (max-width: 767px) {
  .about__bottom-text {
    font-size: 2.2rem;
  }
}

.page-section-title {
  font-size: 3.8rem;
  font-weight: 800;
  letter-spacing: 0.2em;
  line-height: 1.34;
  text-align: center;
}
@media (max-width: 1023px) {
  .page-section-title {
    font-size: 3.2rem;
  }
}
@media (max-width: 767px) {
  .page-section-title {
    font-size: 2.8rem;
  }
}

.about-features {
  padding-top: 97px;
  background-image: url("./../images/common/bg1.png");
  background-repeat: repeat;
}
@media (max-width: 767px) {
  .about-features {
    padding-top: 70px;
  }
}
.about-features__page-section-title {
  margin-bottom: 95px;
  font-size: 4.8rem;
  font-family: 'Noto Serif JP', serif;
  letter-spacing: 0.2em;
}
@media (max-width: 767px) {
  .about-features__page-section-title {
    margin-bottom: 60px;
    font-size: 2.4rem;
  }
}
.about-features__cards {
  margin: 0 auto 170px;
  max-width: 720px;
}
@media (max-width: 767px) {
  .about-features__cards {
    margin-bottom: 100px;
  }
}
.about-features__card {
  margin-bottom: 70px;
}
@media (max-width: 767px) {
  .about-features__card {
    margin-bottom: 40px;
  }
}
.about-features__card:last-of-type {
  margin-bottom: 0;
}
.about-features__img {
  position: relative;
  padding-top: 50%;
}
.about-features__img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.about-features__card-body {
  padding: 60px 9% 63px;
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
  border-left: 1px solid #707070;
  background-color: #fff;
  font-family: 'Noto Serif JP', serif;
  text-align: center;
}
@media (max-width: 1023px) {
  .about-features__card-body {
    padding: 60px 7%;
  }
}
@media (max-width: 767px) {
  .about-features__card-body {
    padding: 30px 20px;
  }
}
.about-features__title {
  margin-bottom: 46px;
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  line-height: 1.44;
}
@media (max-width: 1023px) {
  .about-features__title {
    font-size: 3.2rem;
  }
}
@media (max-width: 767px) {
  .about-features__title {
    margin-bottom: 20px;
    font-size: 2.2rem;
  }
}
.about-features__text {
  letter-spacing: 0.1em;
  line-height: 2;
}
@media (max-width: 767px) {
  .about-features__text {
    text-align: left;
  }
}
.about-features__bottom-img {
  position: relative;
  padding-top: 16.84%;
}
.about-features__bottom-img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.products {
  padding: 80px 0 100px;
}
@media (max-width: 767px) {
  .products {
    padding: 60px 0 70px;
  }
}
.products__container {
  max-width: 780px;
}
.products__page-section-title {
  margin-bottom: 85px;
}
@media (max-width: 767px) {
  .products__page-section-title {
    margin-bottom: 60px;
  }
}
.products__item {
  padding-top: 135px;
}
@media (max-width: 767px) {
  .products__item {
    padding-top: 100px;
  }
}
.products__item:first-of-type {
  padding-top: 0;
}
.products__item--pt100 {
  padding-top: 100px;
}
@media (max-width: 767px) {
  .products__item--pt100 {
    padding-top: 80px;
  }
}
.products__item--small .products__text {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .products__item--small .products__text {
    padding-left: 6px;
  }
}
.products__gallery {
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .products__gallery {
    margin-bottom: 30px;
  }
}
.products__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 24px;
  font-size: 2.4rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .products__heading {
    margin-bottom: 20px;
    font-size: 2.2rem;
  }
}
.products__heading::before {
  content: "";
  display: block;
  margin-right: 20px;
  width: 7px;
  height: 1.25em;
  background-color: #333;
}
.products__text {
  margin-bottom: 41px;
  padding-left: 4.58%;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .products__text {
    margin-bottom: 30px;
  }
}
.products__table {
  margin-bottom: 66px;
}
@media (max-width: 767px) {
  .products__table {
    margin-bottom: 40px;
  }
}
.products__table:last-child {
  margin-bottom: 0;
}
.products__inner {
  margin: 0 auto 61px;
  width: 74.3%;
}
@media (max-width: 767px) {
  .products__inner {
    margin-bottom: 40px;
    width: 100%;
  }
}
.products__large-text {
  margin-bottom: 41px;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  font-weight: 800;
  text-align: center;
}
@media (max-width: 767px) {
  .products__large-text {
    font-size: 2rem;
  }
}
.products__img {
  margin-bottom: 25px;
}

.gallery__main-img {
  position: relative;
  margin-bottom: 19px;
  padding-top: 56.39%;
}
.gallery__main-img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.gallery__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.gallery__img {
  position: relative;
  -ms-flex-preferred-size: 48.89%;
      flex-basis: 48.89%;
  padding-top: 27.5%;
}
.gallery__img img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.table {
  width: 100%;
  border: 1px solid #CCCCCC;
  border-collapse: collapse;
}
.table tr {
  border-bottom: 1px solid #CCCCCC;
}
.table tr:last-of-type {
  border-bottom: none;
}
.table__th {
  padding: 20px 4.44%;
  width: 23.33%;
  background-color: #FFC6B1;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .table__th {
    padding: 20px 10px;
    width: 100px;
  }
}
.table__td {
  padding: 20px 17px;
  line-height: 1.56;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .table__td {
    padding: 20px 12px;
    font-size: 1.4rem;
  }
}

.table-area {
  padding: 45px 0 50px;
  background-color: #FFF6EB;
}
.table-area__title {
  margin-bottom: 60px;
  font-size: 2.4rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: center;
}
@media (max-width: 767px) {
  .table-area__title {
    margin-bottom: 40px;
    font-size: 2rem;
  }
}
.table-area__img {
  margin-bottom: 39px;
  padding-right: 25.55%;
  padding-left: 6.53%;
}
@media (max-width: 767px) {
  .table-area__img {
    font-size: 2rem;
    padding-right: 12.78%;
    padding-left: 3.27%;
  }
}
.table-area__table {
  margin: 0 auto;
  width: 74.31%;
  border-collapse: collapse;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .table-area__table {
    width: 90%;
  }
}
.table-area__tr:nth-of-type(even) {
  background-color: #fff;
}
.table-area__tr:nth-of-type(odd) {
  background-color: #FFD8CC;
}
.table-area__th {
  padding: 8px 0;
  color: #fff;
  background-color: #FF460F;
  font-size: 1.4rem;
  line-height: 1.36;
  font-weight: bold;
}
.table-area__td {
  padding: 12px 0;
  font-size: 1.3rem;
  line-height: 1.31;
  text-align: center;
}
.table-area__caption {
  margin: 14px auto 0;
  padding-right: 5%;
  width: 74.31%;
  font-size: 1.3rem;
  letter-spacing: 0.05em;
  text-align: right;
}
@media (max-width: 767px) {
  .table-area__caption {
    padding-right: 0;
    width: 90%;
    font-size: 1.2rem;
  }
}
.table-area--small-img .table-area__img {
  padding-left: 14.72%;
}
@media (max-width: 767px) {
  .table-area--small-img .table-area__img {
    padding-left: 7.36%;
  }
}

.results {
  padding: 85.5px 0 144px;
}
@media (max-width: 767px) {
  .results {
    padding-bottom: 100px;
  }
}
.results__section-title-img {
  margin-bottom: 48px;
}
.results__lead {
  margin-bottom: 90px;
  font-size: 2.4rem;
  font-weight: 800;
  text-align: center;
}
@media (max-width: 767px) {
  .results__lead {
    margin-bottom: 60px;
    font-size: 2rem;
  }
}
.results__link-card-wrapper-col3 {
  margin-bottom: 71px;
}
@media (max-width: 767px) {
  .results__link-card-wrapper-col3 {
    margin-bottom: 90px;
  }
}

.article {
  margin-bottom: 83px;
  padding: 80px 8.41% 85px;
  background-image: url("./../images/common/bg1.png");
  background-repeat: repeat;
}
@media (max-width: 767px) {
  .article {
    padding: 60px 30px;
  }
}
.article__inner {
  padding: 66px 12.23% 220px;
  background-color: #fff;
}
@media (max-width: 767px) {
  .article__inner {
    padding: 40px 15px;
  }
}
.article__title-img {
  margin: 0 auto 40px;
  width: 200px;
}
@media (max-width: 767px) {
  .article__title-img {
    margin-bottom: 30px;
    width: 120px;
  }
}
.article__title {
  margin-bottom: 8px;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  font-weight: 800;
  text-align: center;
}
.article__date {
  margin-bottom: 43px;
  color: #666666;
  font-size: 1.4rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0.05em;
  font-weight: bold;
  text-align: center;
}
.article__date + .article__body {
  margin-top: 80px;
}
.article__main-img {
  margin-bottom: 45px;
}
.article__body p {
  color: #333;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.075em;
}
@media (max-width: 767px) {
  .article__body p {
    font-size: 1.4rem;
  }
}

.wp-pagenavi-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}

.wp-pagenavi .current {
  display: inline-block;
  margin-right: 30px;
  width: 50px;
  height: 60px;
  border: 2px solid #333;
  color: #333;
  background-color: #fff;
  font-size: 2.4rem;
  line-height: 60px;
  font-weight: 800;
  text-align: center;
}
@media (max-width: 767px) {
  .wp-pagenavi .current {
    margin-right: 15px;
    width: 30px;
    height: 45px;
    line-height: 45px;
    font-size: 1.8rem;
  }
}
.wp-pagenavi a {
  display: inline-block;
  margin-right: 30px;
  width: 50px;
  height: 60px;
  border: 1px solid #333;
  color: #333;
  background-color: #fff;
  font-size: 2.4rem;
  line-height: 60px;
  font-weight: 800;
  text-align: center;
}
.wp-pagenavi a:focus, .wp-pagenavi a:hover {
  border: 2px solid #333;
}
.wp-pagenavi a:last-child,
.wp-pagenavi span:last-child {
  margin-right: 0;
}
@media (max-width: 767px) {
  .wp-pagenavi a {
    margin-right: 15px;
    width: 30px;
    height: 45px;
    line-height: 45px;
    font-size: 1.8rem;
  }
}

.post-link {
  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;
  margin-bottom: 95px;
}
.post-link a {
  display: inline-block;
  margin-right: 30px;
  width: 50px;
  height: 60px;
  border: 1px solid #333;
  color: #333;
  background-color: #fff;
  font-size: 2.4rem;
  line-height: 60px;
  font-weight: 800;
  text-align: center;
}
.post-link a:focus, .post-link a:hover {
  border: 2px solid #333;
}
@media (max-width: 767px) {
  .post-link a {
    margin-right: 15px;
    width: 30px;
    height: 45px;
    line-height: 45px;
    font-size: 1.8rem;
  }
}
.post-link a[rel=prev]:last-child {
  margin-right: 80px;
}
.post-link a[rel=next] {
  margin-right: 0;
}
.post-link a[rel=next]:first-child {
  margin-left: 80px;
}

.news {
  padding: 26px 0 123px;
}
.news__link-card-wrapper-col3 {
  margin-bottom: 100px;
}

.blog {
  padding: 26px 0 93px;
}
.blog__link-card-wrapper-col3 {
  margin-bottom: 20px;
}

.contact {
  padding: 55px 0;
}
.contact__inner {
  padding: 57px 10.17% 73px;
  background-color: #FFF6EB;
}
.contact__text {
  margin-bottom: 13px;
  line-height: 2;
  letter-spacing: 0.075em;
  text-align: center;
}
.contact__caption {
  margin-bottom: 103px;
  color: #8D2411;
  line-height: 2;
  letter-spacing: 0.05em;
  text-align: center;
}
@media (max-width: 767px) {
  .contact__caption {
    margin-bottom: 70px;
  }
}

.form__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .form__item {
    display: block;
    margin-bottom: 30px;
  }
}
.form__item:last-of-type {
  margin-bottom: 60px;
}
.mw_wp_form_confirm .form__item {
  margin-bottom: 40px;
}
.mw_wp_form_confirm .form__item:last-of-type {
  margin-bottom: 80px;
}
.form__item label {
  -ms-flex-preferred-size: 25.55%;
      flex-basis: 25.55%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding: 14px 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  line-height: 1.31;
}
@media (max-width: 1023px) {
  .form__item label {
    -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
  }
}
@media (max-width: 767px) {
  .form__item label {
    display: block;
    margin-bottom: 4px;
    padding: 0;
  }
}
.mw_wp_form_confirm .form__item label {
  padding: 0;
}
.form__item label.necessary::after {
  content: "※";
  display: inline-block;
  margin-left: 5px;
  color: #8D2411;
  font-size: 1rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  vertical-align: top;
}
.form__item input {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  display: block;
  padding: 14px 30px;
  width: 100%;
  border: 1px solid #707070;
  background-color: #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  line-height: 1.31;
}
@media (max-width: 767px) {
  .form__item input {
    padding: 10px 20px;
    width: 100%;
    font-size: 1.4rem;
  }
}
.form__item .form__img {
  padding: 16px 0;
  width: 30%;
  height: auto;
}
@media (max-width: 767px) {
  .form__item .form__img {
    margin: 0 auto;
    padding: 0;
    width: 80%;
  }
}
.form__item .form__img img {
  width: 100%;
  height: auto;
}

.mw_wp_form_confirm .form__item .form__img  {
  display: none;
}
.form__item textarea {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  resize: none;
  padding: 14px 30px;
  border: 1px solid #707070;
  background-color: #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media (max-width: 767px) {
  .form__item textarea {
    padding: 10px 20px;
    width: 100%;
    font-size: 1.4rem;
  }
}
.form__item--img-drop select {
  -ms-flex-preferred-size: 25.55%;
      flex-basis: 25.55%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: inline-block;
  margin-right: 4.16%;
  padding: 14px 1em;
  border: 1px solid #707070;
  border-radius: 0;
  background-color: #fff;
  background-image: url('../images/contact/angle-down-solid.svg');
  background-size: 16px auto;
  background-repeat: no-repeat;
  background-position: right 6px center;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media (max-width: 767px) {
  .form__item--img-drop select {
    margin-bottom: 20px;
    padding: 10px 20px;
    width: 100%;
    font-size: 1.4rem;
  }
}
.form__item--file {
  margin-bottom: 60px;
}
.form__item--file .mwform-file-delete {
  display: none;
}
.form__item--file__inner {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.form__item--file input {
  display: none !important;
}
.form__item--file__label {
  -ms-flex-preferred-size: 25.55%;
      flex-basis: 25.55%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding: 14px 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  line-height: 1.31;
}
@media (max-width: 1023px) {
  .form__item--file__label {
    -ms-flex-preferred-size: 28%;
        flex-basis: 28%;
  }
}
@media (max-width: 767px) {
  .form__item--file__label {
    margin-bottom: 8px;
    padding: 0;
  }
}
.form__item--file label {
  display: block;
  margin-top: 14px;
  margin-bottom: 17px;
  padding: 5px;
  width: 173px;
  border: 1px solid #707070;
  border-radius: 15px;
  color: #666666;
  background-color: #fff;
  font-size: 1.4rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  text-align: center;
  cursor: pointer;
}
@media (max-width: 767px) {
  .form__item--file label {
    margin: 0 0 10px;
      width: 100%;
  }
}
.mw_wp_form_confirm .form__item--file label {
  padding: 0;
  width: 100%;
  border: none;
  border-radius: 0;
  background-color: transparent;
  font-size: 0;
  cursor: auto;
}
.mw_wp_form_input .mw-wp-form_image {
  display: none;
}
.form__item--file__text {
  font-size: 1.3rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
.form__item--file__text::before {
  content: "・";
}
.mw_wp_form_confirm .form__item--file__text {
  display: none;
}
.form input[type=submit] {
  display: block;
  margin: 0 auto;
  width: 300px;
  padding: 10px;
  border: 2px solid #707070;
  border-radius: 50px;
  color: #fff;
  background-color: #707070;
  font-size: 2rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  letter-spacing: 0.1em;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  cursor: pointer;
}
.form input[type=submit]:focus, .form input[type=submit]:hover {
  background-color: #fff;
  color: #707070;
}
@media (max-width: 767px) {
  .form input[type=submit] {
    max-width: 100%;
    width: 200px;
    padding: 6px;
  }
}
.form .error {
  font-weight: bold;
}
.mw_wp_form_complete p {
  line-height: 2;
}

.fixed-footer {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 100;
  padding: 10px;
  height: 70px;
  width: 100%;
  border-top: 2px solid #333;
  background-color: #fff;
}
@media (max-width: 767px) {
  .fixed-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.fixed-footer__item {
  padding: 0 20px;
  border-right: 1px solid #333;
}
.fixed-footer__item:last-of-type {
  border-right: none;
}
.fixed-footer__icon {
  margin: 0 auto 6px;
  width: 20px;
  text-align: center;
}
.fixed-footer__text {
  color: #333;
  font-size: 1.2rem;
  text-align: center;
}
/*# sourceMappingURL=style.css.map */


.separate-block{
    display: flex;
    flex-wrap: wrap;
}

.file-name{
        font-size: 1.3rem;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: bold;

}
.file-name:before{
    content: '・';
}

@media (min-width: 768px) {
    .upload-box:nth-of-type(3n+2){
        margin: 0 15px;
    }
    .file-name{
        width: 173px;
    }
}

@media (max-width: 767px) {
    .upload-box{
        margin-bottom: 2rem;
    }
.campaign .mwform-radio-field:nth-of-type(1):before,.campaign .mwform-radio-field:nth-of-type(2):before{
    font-size: 11px;

}
    .products__heading strong{
        font-size: 60%;
    }
    .separate-block{
        justify-content: space-between;
    }
    .upload-box{
        width: 48%;
    }
}



.campaign .mwform-radio-field:nth-of-type(1),.campaign .mwform-radio-field:nth-of-type(2){
    position: relative;
}



.products__heading strong{
    display: inline-block;
    background: #ff0000;
    color: #fff;
    padding: 5px 10px;
    margin-left: 15px;
        border-radius: 20px;
}


.footer small{
    text-align: center;
    display: block;
    margin-bottom: 15px;
    font-size: 70%;
}

@media (min-width: 768px) {
.footer .pc__none{
 display: none;
}
}

.sdgs__logo{
  text-align: center;
  display: block;
}

@media (max-width: 767px) {
  .sdgs__logo img{
    width: 70%;
    margin: 0 auto 50px;
    display: block;
  }
  }

@media (min-width: 768px) {
.sdgs__logo img{
  width: 30%;
  margin: 0 auto 50px;
  display: block;
}
}

.top__youtube{
  text-align: center;
  padding-top: 70px;
}

.top__youtube iframe{
width: 100%;

}

@media (min-width: 768px) {
.top__youtube iframe{
height: 35vw;
max-height: 380px;
}
}

@media (max-width: 767px) {
.top__youtube iframe{
height: 55vw;
}
}


.products__below_text p{
    margin-bottom: 20px;
}

.page__company table{
  margin-bottom: 50px;
}


.page__company table tr th{
  width: 30%;
  padding: 15px;
  background: #ddd;
}
.page__company table tr td{
  width: 70%;
  padding: 15px;
}

.page__company iframe{
  width: 100%;
  max-height: 400px;
  height: 40vw;
  margin-bottom: 100px;
}
@media (max-width: 767px) {
  .page__company table tr th{
    font-size: 14px;
  }
}

.page__company .greeting__msg h3{
  text-align: center;
  font-weight: 700;
  font-size: 130%;
  margin-bottom: 30px;
}

.page__company .greeting__msg_content{
  margin-bottom: 45px;
}
.page__company .greeting__msg_content p{
  line-height: 2;
}


@media (max-width: 767px) {
  .page__company .greeting__msg_content img{
    width: 50%;
    display: block;
    margin: 0 auto 30px;
  }
}

@media (min-width: 768px) {
.page__company .greeting__msg_content{
  display: flex;
  justify-content: space-between;

}
.page__company .greeting__msg_content img{
  width: 15%;
  height: 100%;
}
.page__company .greeting__msg_content p{
  width: 78%;
}

}

.spot__bnr{
  text-align: center;
  display: block;
  cursor: pointer;
}


@media (min-width: 768px) {
.spot__bnr{
  text-align: center;
  display: block;
  width: 70%;
  margin: 40px auto;
  max-width: 720px;
}
}
@media (max-width: 767px) {
  .spot__bnr{
    margin: 30px;
  }
}


.link-card__body .results-name,.link-card__body .results-place,.link-card__body .results-size{
  display: block;
  margin-top: 10px;
  color: #333;
  font-weight: 700;
  font-size: 14px;
}

.results__search{
  text-align: center;
  margin-bottom: 60px;
}

.results__search P{
  margin-bottom: 30px;
  font-size: 2rem;
  font-weight: 800;
}

.results__search_select{
margin: 0 auto 50px;
width: 300px;
position: relative;
}

.results__search_select:after{
right: 20px;
top: 21px;
width: 10px;
height: 10px;
font-size: 18px;
content: "";
position: absolute;
border-top: 2px solid #2c2c2c;
border-left: 2px solid #2c2c2c;
transform: translateY(-50%) rotate(-135deg);
pointer-events: none;
}


.results__search select{
   padding: 10px;
   font-weight: 800;
   width: 100%;
}



.fv__tate {
position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    color: #fff;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 0.2em;
    text-align: center;
    height: 60%;
    display: flex;
    flex-wrap: wrap;
    z-index: 1;
}

.fv__tate_first{
  height: 100%;
  display: flex;
  margin-left: 5px;
}
.fv__tate_second{
  height: 100%;
  display: flex;
  font-size: 30px;
  font-weight: 600;
  letter-spacing: 5px;
  white-space: nowrap;
}

.fv__tate span{
  font-weight: 600;
  border: 1px solid #fff;
  padding: 15px 7px;
  line-height: 1;
}
.fv__tate small{
  display: block;
  margin-right: 5px;
  font-size: 14px;
  white-space: nowrap;
}





.single__item_thumbnail{
  margin-bottom: 30px;
}
.single__item_thumbnail img{
  width: 100%;
  height: 100%;
}

  .single__item h1{
    color: #000000;
    margin-bottom: 15px;
    font-weight: 700;
  }

  .single__item_text{
    color: #707070;
    font-weight: 600;
    margin-bottom: 40px;
  }

  .single__item_separate .left img{
    height: 100%;

  }

  .single__item_separate .left__sub{
    display: flex;
  }

  .single__item_separate .left__sub img{
    width: 15%;
    margin-right: 10px;
       cursor: pointer;
  }
  .single__item_separate .left__sub img.selected{
    border: 2px solid #DC3333;
  }



  .single__item_separate .right h1{
    color: #333333;
    border-left: 5px solid #717171;
    padding-left: 20px;
    margin-bottom: 10px;
    font-weight: 700;
  }

  .single__item_separate .right p{
    padding-left: 20px;
    color: #000000;
    font-weight: 600;
    margin-bottom: 30px;
  }
      .single__item_separate .right table tr{
        display: table;
        width: 100%;
        border-spacing: 0;
        border-bottom: 1px solid #CCCCCC;
        border-left: 1px solid #CCCCCC;
        border-right: 1px solid #CCCCCC;
      }

    .single__item_separate .right table tr:nth-of-type(1){
      border-top: 1px solid #CCCCCC;
    }

    .single__item_separate .right table th{
      background: #FFD9CC;
      vertical-align: middle;
      display: table-cell;
      width: 25%;
      font-weight: 600;
      padding: 15px 10px;
      text-align: center;
    }
    .single__item_separate .right table td{
      width: 75%;
      font-weight: 600;
      padding: 15px 10px;
            display: table-cell;
    }

    .single__item_separate .right__img{
      text-align: center;
      margin-top: 30px;

    }
    .single__item_separate .right__img img{
      width: 70%;
      display: block;
      margin: 0 auto;
    }


    .single__item_table{
      background: #FFF7EB;
    }


    .single__item_table tr{
      display: table;
      width: 100%;
          border-spacing: 0;
    }

    .single__item_table tr td{
      text-align: center;
      vertical-align: middle;
      padding: 10px 5px;
      display: table-cell;
      font-weight: 700;
    }

    .single__item_table tr td:not(:last-of-type){
      border-right: 2px solid #fff;
    }
    .single__item_table tr:nth-of-type(2n+2) td{
      background: #FFD9CC;
    }
    .single__item_table tr:nth-of-type(2n+3) td{
      background: #fff;
    }

    .single__item_table tr:nth-of-type(1) td{
      background: #FE4710;
      color: #fff;
    }

    .single__item_table .form{
      margin-top: 80px;
    }


.single__item_link h2{
  text-align: center;
  color: #333333;
  font-weight: 700;
}

.single__item_link .separate{
  display: flex;
  flex-wrap: wrap;
}
.single__item_link .separate.just__between{
  justify-content: space-between;
}

  .single__item_link .separate a{
    box-shadow: 0 3px 6px rgba(0,0,0,0.16);
  }
  .single__item_link .separate a img{
    width: 100%;
  }

    .single__item_link .separate a .box{
      padding: 10px;
    }
    .single__item_link .separate a .box h3{
      font-weight: 700;
      color: #333333;
      margin-bottom: 10px;
    }
    .single__item_link .separate a .box p{
      font-weight: 600;
      color: #707070;
      min-height: 70px;
    }
    .single__item_link .separate a .box small{
      display: flex;
      justify-content: flex-end;
      align-items: center;
      color: #333333;
      margin-top: 20px;
    }

        .single__item_link .separate a .box small:after{
          content: '';
          display: inline-block;
          margin-left: 5px;
          background-image: url(../../assets/images/item/link__after.png);
          background-size: contain;
          background-repeat: no-repeat;
        }


        .single__item_intro .repeat a{
          margin-bottom: 30px;
        }

  .single__item_intro .repeat a .box{
    position: relative;
  }


  .single__item_intro .repeat a .box h3{
    font-weight: 700;
    margin-bottom: 10px;
    color: #333333;
  }
  .single__item_intro .repeat a .box p{
    color: #707070;
    font-weight: 600;
  }

    .single__item_intro .repeat a .box small{
      display: flex;
      justify-content: flex-end;
      align-items: center;
      color: #333333;
      margin-top: 20px;
      position: absolute;
      right: 0;
      bottom: 0;
    }

        .single__item_intro .repeat a .box small:after{
          content: '';
          display: inline-block;
          margin-left: 5px;
          background-image: url(../../assets/images/item/link__after.png);
          background-size: contain;
          background-repeat: no-repeat;
        }

.single__item_intro{
  margin-top: 100px;
}

.single__item_other{
  margin-top: 120px;
}

.single__item_other img{
  width: 100%;
}

.single__item_other h3{
  color: #333333;
  border-left: 10px solid #333333;
  padding-left: 20px;
  margin-bottom: 20px;
  font-weight: 700;
}
.single__item_other p{
  color: #707070;
  padding-left: 20px;
  margin-bottom: 40px;
  font-weight: 600;
}

.single__item_other .table table{
  width: 100%;
  border-spacing: 0;
}

.single__item_other .table tr{
  display: table;
  width: 100%;
    border-spacing: 0;
}

.single__item_other .table th{
  background: #ffc6b1;
  vertical-align: middle;
  text-align: center;
  width: 30%;
  display: table-cell;
  padding: 20px;
}
.single__item_other .table td{
  width: 70%;
  padding: 20px;
  display: table-cell;
}


.archive__item{
  margin-bottom: 100px;
}

      .archive__item .repeat a{
          margin-bottom: 30px;
             box-shadow: 0 3px 6px rgba(0,0,0,0.16);
        }

  .archive__item .repeat a .box{
    position: relative;
    padding: 15px;
  }


  .archive__item .repeat a .box h3{
    font-weight: 700;
    margin-bottom: 10px;
    color: #333333;
  }
  .archive__item .repeat a .box p{
    color: #707070;
    font-weight: 600;
  }

    .archive__item .repeat a .box small{
      display: flex;
      justify-content: flex-end;
      align-items: center;
      color: #333333;
      margin-top: 20px;
      position: absolute;
      right: 15px;
      bottom: 15px;
    }

        .archive__item .repeat a .box small:after{
          content: '';
          display: inline-block;
          margin-left: 5px;
          background-image: url(../../assets/images/item/link__after.png);
          background-size: contain;
          background-repeat: no-repeat;
        }



.archive__item h1{
    color: #000000;
    font-weight: 700;
}
.archive__item h2{
  text-align: center;
    color: #333333;
    font-weight: 700;
}


.archive__item_adjust{
  margin-bottom: 100px;
}

.text__center{
  text-align: center;
}


 .single__item_table .comment{
  line-height: 2;
 }



@media (min-width: 768px) {

 .adjust__mt{
  margin-top: 200px;
 }
  .single__item_table .comment{
    font-size: 12px;
    margin-top: 20px;
  }

.archive__item{
  margin-top: 70px;
}

.archive__item h1{
  font-size: 38px;
  margin-bottom: 20px;
}

.archive__item h2{
  font-size: 50px;
  margin-bottom: 60px;
}

  .archive__item .repeat a{
    display: flex;
    justify-content: space-between;
  }

  .archive__item .repeat a img{
    width: 40%;
    height: 100%;
  }
  .archive__item .repeat a .box{
    width: 55%;
  }
  .archive__item .repeat a .box h3{
  font-size: 21px;
  }

   .archive__item .repeat a .box small:after{
    width: 34px;
    height: 34px;
  }

    .archive__item .repeat a .box small{
      font-size: 15px;
    }





  .single__item_other h3{
    font-size: 30px;
    margin-top: 30px;
  }

  .single__item_intro .repeat a{
    display: flex;
    justify-content: space-between;
  }

  .single__item_intro .repeat a img{
    width: 40%;
    height: 100%;
  }
  .single__item_intro .repeat a .box{
    width: 55%;
  }
  .single__item_intro .repeat a .box h3{
  font-size: 21px;
  }

   .single__item_intro .repeat a .box small:after{
    width: 34px;
    height: 34px;
  }

    .single__item_intro .repeat a .box small{
      font-size: 15px;
    }




   .single__item_link .separate a .box small:after{
    width: 34px;
    height: 34px;
  }

    .single__item_link .separate a .box small{
      font-size: 15px;
    }

    .single__item_link .separate a .box h3{
      font-size: 21px;
    }


.single__item_link h2{
  font-size: 50px;
  margin-bottom: 60px;
}

  .single__item_link .separate a{
    width: 48%;
    margin-bottom: 50px;
  }

 .single__item_table tr td{
  font-size: 12px;
  width: 90px;
 }
    .single__item_table{
      padding: 65px 0 ;
    }
  .single__item{
      margin-top: 20px;
  }

  .single__item h1{
   font-size: 38px;
  }

    .sinble__item_text{
      font-size: 20px;
  }

  .single__item_separate{
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
  }

  .single__item_separate .left{
    width: 50%;
  }
  .single__item_separate .right{
    width: 45%;
  }
  .single__item_separate .right h1{
    font-size: 16px;
  }
  .single__item_separate .right p{
    font-size: 12px;
  }
    .single__item_separate .right table th,.single__item_separate .right table td{
      font-size: 13px;
    }
  .single__item_separate .left__sub{
    margin-top: 20px;
  }
.single__item_link{
  padding: 65px 0;
  margin-bottom: 100px;
}
.single__item_midashi{
  font-size: 24px;
  margin-top: 40px;
}
}
@media (max-width: 767px) {

  .archive__item .repeat a .box small{
    position: relative;
    right: auto;
    bottom: auto;
  }

      .single__item_table .container{
        overflow-x: scroll;
        white-space: nowrap;
      }
      .single__item_table table{
        width: 100%;
        overflow-x: auto; /* 横スクロールを有効にする */
        white-space: nowrap; /* 要素が折り返しなしで表示される */
        display: block; /* 必要に応じてブロック要素に変更 */
      }

 .single__item_table table td{
  width: 30%;
  display: inline-block;
  min-width: 100px;
  font-size: 13px;
 }

  .single__item_table .comment{
    font-size: 12px;
    margin-top: 20px;
  }


.archive__item{
  margin-top: 35px;
}

.archive__item h1{
  font-size: 21px;
  margin-bottom: 20px;
}

.archive__item h2{
  font-size: 28px;
  margin-bottom: 40px;
}

  .single__item_other h3{
        font-size: 16px;
        padding-left: 10px;
        margin-top: 30px;
  }

  .single__item_other .table th{
    width: 35%;
  }

  .single__item_intro .repeat a{
    display: block;
  }


      .single__item_link .separate a .box small:after{
        width: 23px;
        height: 23px;
      }

      .single__item_link .separate a .box p{
        font-size: 14px;
      }

      .single__item_link .separate a{
        margin-bottom: 20px;
      }

.single__item_link{
  padding: 65px 0;
}
.single__item_link .separate a .box h3{
  font-size: 21px;
}

.single__item_link h2{
  font-size: 28px;
  margin-bottom: 40px;
}

    .single__item_table{
      padding: 40px 0;
      margin-top: 40px;
    }
  .single__item_separate .left{
    margin-bottom: 30px;
  }

    .single__item_separate .left__sub{
    margin-top: 10px;
  }
    .single__item_separate .right h1{
    font-size: 16px;
    padding-left: 10px;
  }
  .single__item_separate .right p{
    font-size: 13px;
    padding-left: 10px;
  }
  .single__item_separate .right table th{
    font-size: 13px;
  }
  .single__item_separate .right table td{
    font-size: 13px;
  }
   .single__item_midashi{
    font-size: 16px;
    padding-left: 10px;
   }
}

@media (max-width: 1023px) {
    .adjust__mt {
        margin-top: min(calc(180 / 750 * 100vw), 180px);
    }
}


.mw_wp_form_complete{
  text-align: center;
  padding: 60px 0;
}

.mw_wp_form_complete p{
  font-weight: 700;
}

  .table__area table{
    width: 100%;
  }

  .table__area table tr{
        display: table;
        width: 100%;
        border-spacing: 0;
        border-bottom: 1px solid #CCCCCC;
        border-left: 1px solid #CCCCCC;
        border-right: 1px solid #CCCCCC;
      }

    .table__area table tr:nth-of-type(1){
      border-top: 1px solid #CCCCCC;
    }

    .table__area table tr th{
      background: #FFD9CC;
      vertical-align: middle;
      display: table-cell;
      width: 35%;
      font-weight: 600;
      padding: 15px 10px;
      text-align: center;
    }
    .table__area table tr td{
      width: 65%;
      font-weight: 600;
      padding: 15px 10px;
            display: table-cell;
    }

    .single__item_midashi{
          color: #333333;
    border-left: 5px solid #717171;
    padding-left: 20px;
    margin-bottom: 20px;
    font-weight: 700;
    }

    .table__area{
      margin-bottom: 50px;
    }

    .humburger-nav-wrapper .humburger-nav .humburger-nav__list .humburger-nav__item{
      margin-bottom: 20px;
    }

    .contact__inner .contact__caption{
      margin-bottom: 20px;
    }

    .greeting__msg_block{
      margin-bottom: 30px;
    }

.greeting__msg_block h4{
  font-weight: 700;
  font-size: 120%;
  margin-bottom: 30px;
  text-align: center;
}

.greeting__msg_block .bold{
  font-weight: 700;
}
.greeting__msg_block p{
  line-height: 2;
  text-align: center;
  margin-bottom: 10px;
}


@media (max-width: 767px) {
  .greeting__msg_block p{
    text-align: left;
  }
}


.product__link a{
  display: block;
  margin-bottom: 30px;
}

@media (min-width: 768px) {
  .sp__float3{
    display: none;
  }

  .float__pc{
    position: fixed;
    right: 20px;
    bottom: 20px;
    display: flex;
    justify-content: flex-end;
  }
  .float__pc a{
    display: block;
    width: 60%;
  }
  .product__swiper{
    width: 69.5%;
  }
  .float__pc2{
    position: fixed;
    right: 20px;
    bottom: 2%;
    width: 15%;
    overflow: hidden;
  }


}

@media (max-width: 767px) {

  .sp__none{
    display: none;
  }

  .sp__float3{
   position: fixed;
   width: 100%;
   left: 0;
   bottom: 0;
  }

.sp__float3 img{
  width: 100%;
}

  .sp__float3.active{
    z-index: 2;
  }
}

.product__link,.product__swiper{
   margin: 80px auto 0;
}

.product__swiper{
  overflow: hidden;
}