@charset "UTF-8";
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            recet css
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
body {
  background-color: #F4F4F4;
  color: #000;
  position: relative;
  overflow-x: hidden;
}
h1,h2,h3,h4,h5,h6 {
  font-size: 100%;
  font-weight: 500;
  margin: 0;
  padding: 0;
  -webkit-margin-before: 0em;
  -webkit-margin-after: 0em;
  -webkit-margin-start: 0px;
  -webkit-margin-end: 0px;
}
a {text-decoration: none; overflow: hidden; color: #333;}
img {border: none; vertical-align: middle;-webkit-backface-visibility: hidden;}
hr {display: none;clear: both;}
ul {margin: 0;padding: 0;}
ol {margin: 0;padding: 0;}
li {margin: 0;padding: 0; list-style-type: none;}
dl {margin: 0;padding: 0;}
dt {margin: 0;padding: 0;}
dd {margin: 0; padding: 0;}
p {margin: 0; padding: 0; font-features-settings: "palt" 1;}
span {font-features-settings: "palt" 1;}
address {font-style: normal;}
* {-webkit-appearance: none; -o-box-sizing: border-box;  -ms-box-sizing: border-box; box-sizing: border-box;}
figure {margin: 0;}
input {
  all: revert;
}
.screen-reader-text {
  border: 0;
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
                共通パーツ
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
body {
  letter-spacing: 0.1em;
  height: 100%;
  margin: 0;
  font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.8;
  font-features-settings: "palt";
  color: #000;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 14px;
  }
}

main {
  width: 100%;
}
/* .pc {display: block !important;} */
.sp {display: none !important;}
.sp-s {display: none !important;}
@media screen and (max-width: 768px) {
  .pc {display: none !important;}
  .sp {display: block !important;}
}
@media screen and (max-width: 500px) {
  .sp-s {display: block !important;}
}


.size-xs {font-size: 70%;}
.size-s {font-size: 80%;}
@media screen and (max-width: 768px) {
  .size-s {font-size: 60%;}
}
.colored {color: #0097E4;}
.uncolored {color: #000;}
.white {color: #FFF;}
.block {display: block;}
.right {margin-left: auto;}
.center {margin: 0 auto;}
.marker {background: linear-gradient(transparent 70%, #FFE576 70%);}
.rotate {
  display: inline-block;
  transform: rotate(-90deg);
}
/*■■■■■■■■■■■■■■■■■
wrap
■■■■■■■■■■■■■■■■■*/
.content-wrap {
  width: 80%;
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .content-wrap {width: 95%;}
}

.anker-margin {
  height: 60px;
}

/*■■■■■■■■■■■■■■■■■
     見出し・共通
■■■■■■■■■■■■■■■■■*/
.section__heading,
.page__heading {
  font-size: 40px;
  font-weight: 600;
  margin-bottom: 40px;
}
@media screen and (max-width: 500px) {
  .section__heading,
  .page__heading {
    margin-bottom: 20px;
    font-size: 40px;
  }
}

.page__heading--news,
.page__heading--privacy {
  text-align: center;
  padding-top: 20px;
}

.section__heading span,
.page__heading span {
  font-size: 14px;
}

.section__heading--news span,
.page__heading--news span,
.page__heading--contact span,
.page__heading--privacy span {
  display: block;
}

.section__heading--plan {
  display: flex;
  flex-direction: column;
  margin-right: 60px;
}

.section__heading--case span {
  display: block;
}

.section__heading--company {
  display: flex;
  flex-direction: column;
}

.section__heading--faq,
.section__heading--recruit {
  display: flex;
  flex-direction: column;
  text-align: center;
}


.page__intro {
  margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
  .page__intro {
    margin-bottom: 40px;
  }
}




/*■■■■■■■■■■■■■■■■■
      ボタン
■■■■■■■■■■■■■■■■■*/
.btn__wrap {
  margin-top: 2em;
}
.btn {
  display: flex;
  align-items: center;
  width: 200px;
  height: 30px;
  border-radius: 100px;
  text-decoration: none;
  transition: 0.3s;
  border: 1px solid #000;
  background-color: #FFF;
  color: #000;
}
.btn:hover {
  background-color: #000;
  color: #FFF;
}

.header__btn .btn {
  width: 160px;
  background-color: #BC9D65;
  border: none;
}
.header__btn .btn  .btn__text {
  color: #FFF;
}
.header__btn .btn:hover {
  opacity: 0.7;
}






.form-submit-btn__wrap {
  /* display: flex;
  align-items: center;
  text-align: center; */
  margin-top: 1em;
  margin: 0 auto;
  text-align: center;
}
.form-submit-btn {
  letter-spacing: 0.2em;
  font-weight: 600;
  font-size: 14px;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.form-submit-btn::after {
  content: "";
  background-color: #000;
  width: 10px;
  height: 10px;
  position: absolute;
  right: 10px;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
.form-submit-btn:hover::after {
  background-color: #FFF;
}



.btn__text {
  display: block;
  flex-grow: 1;
  text-align: center;
  position: relative;
  font-size: 16px;
  color: #000;
}
.btn:hover .btn__text {
  color: #FFF;
}
.btn__text--small {
  font-size: 12px;
}



.btn-closeing {
  width: 300px;
  display: flex;
  align-items: center;
  height: 40px;
  border-radius: 100px;
  text-decoration: none;
  transition: 0.3s;
  border: 1px solid #000;
  background-color: #000;
}
@media screen and (max-width: 768px) {
  .btn-closeing {
    width: 260px;
  }
}



.btn-closeing .btn__text {
  color: #fff;
}
.btn-closeing:hover {
  opacity: .7;
}

.btn__wrap--recruit {
  margin-top: 3em;
  text-align: center;
}



.btn-recruit {
  width: 300px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  height: 40px;
  border-radius: 100px;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
                header
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.header {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  display: flex;
  z-index: 20;
  font-size: 14px;
  letter-spacing: 0.09em;
  background-color: rgba(255, 255, 255, 1);
  padding: 10px 30px;
  align-items: center;
  transition: transform 0.5s;
  height: 80px;
}


.js_hide {
  transform: translateY(-100%);
}

@media screen and (max-width: 768px) {
  .header {
    padding: 25px 10px;
    height: 60px;
  }
}

.header-logo {
  display: flex;
  align-items: flex-end;
}

.header-logo a img {
  width: 100px;
}

.header__btn {
  display: inline-block;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
                header-menu
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.header__menu {
  margin-left: auto;
  display: flex;
}

.header__menu ul {
  display: flex;
  list-style-type: none;
}

.header__menu ul li {
  margin-right: 2em;
}

.header__menu ul li a {
  position: relative;
  padding-bottom: 4px;
  color: #000000;
  font-weight: 600;
}
.header__menu ul li a::before {
  position: absolute;
  background: #000000;
  content: '';
  width: 100%;
  height: 1px;
  left: 0;
  bottom: 0;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
}
.header__menu ul li a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}

.header__menu--sp {
  width: 90%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.header__menu--sp .header__btn {
  margin-right: 60px;
}



/* ハンバーガー トグルボタン　*/
.menu-btn {
  position: fixed;
  top: 10px;
  right: 10px;
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  z-index: 90;
}

@media screen and (max-width: 768px) {
  .menu-btn {
    top: 10px;
    right: 10px;
    height: 40px;
    width: 40px;
  }
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
  content: "";
  display: block;
  height: 1px;
  width: 50px;
  background-color: #000;
  position: absolute;
}

.menu-btn span:before {bottom: 8px;}
.menu-btn span:after {top: 8px;}
#menu-btn-check:checked ~ .menu-btn span {
  background-color: rgba(255, 255, 255, 0);
}

#menu-btn-check:checked ~ .menu-btn span::before {
  bottom: 0;
  transform: rotate(45deg);
  background-color: #000;
}

#menu-btn-check:checked ~ .menu-btn span::after {
  top: 0;
  transform: rotate(-45deg);
  background-color: #000;
}

#menu-btn-check {
  display: none;
  /* チェックボックスを隠す */
}

/* ここからメニュー*/
/* メニュー画面をディスプレイ外へ */
.menu-content {
  width: 80%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 100%; /*leftの値を変更してメニューを画面外へ*/
  background-color: rgba(255, 255, 255, 0.9);
  z-index: 80;
  transition: all 0.5s; /*アニメーション設定*/
}

.menu-content ul {
  padding: 70px 10px 0;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .menu-content ul {
    padding: 100px 10px 0;
  }
}

.menu-content ul li {
  list-style: none;
  margin-bottom: 1em;
}

.menu-content ul li a {
  display: block;
  width: 100%;
  font-size: 24px;
  font-weight: 600;
  box-sizing: border-box;
  color: #000;
  text-decoration: none;
  letter-spacing: 0.1em;
  padding: 9px 15px 10px 0;
  position: relative;
}
@media screen and (max-width: 768px) {
  .menu-content ul li a {
    font-size: 20px;
    letter-spacing: 0.1em;
    padding: 9px 15px 10px 0;
  }
}
.menu-content ul li a:hover {
  opacity: 0.7;
}



/* チェックボックスにチェックがついたとき、メニューが画面に表示 */
#menu-btn-check:checked ~ .menu-content {
  left: 20%; /*メニューを画面内へ*/
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
                backBtn
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.backBtn {
  height: 80px;
  width: 80px;
  position: fixed;
  right: 20px;
  bottom: 60px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 79;
}
@media screen and (max-width: 500px) {
  .backBtn {
    height: 70px;
    width: 70px;
    right: 5px;
    bottom: 10px;
  }
}


.btn-pagetop img {
  width: 100%;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
                footer
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
body {
  display: flex; /* フレックスボックスに有効に */
  flex-flow: column; /* 要素を縦に並べる */
  min-height: 100vh; /* 最小でも画面の高さ分のbodyの高さを担保する */
}
main {
  flex: 1; /* 画面の高さから他の同レイヤーの要素の高さを引いた値に */
}


.footer {
  width: 100%;
  background-color: #BC9D65;
  padding-top: 20px;
}

.footer a {
  color: #FFF;
}

.footer__wrap {
  width: 80%;
  max-width: 1000px;
  margin: 0 auto;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .footer__wrap {
    width: 96%;
  }
}

.footer__inner {
  border-bottom: 1px solid #FFF;
  padding: 20px 0 10px;
}
@media screen and (max-width: 768px) {
  .footer__inner {
    padding: 10px 0;
  }
}


.footer__main {
  display: flex;
}
@media screen and (max-width: 768px) {
  .footer__main {
    flex-direction: column;
  }
}

.footer__link-wrap {
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 768px) {
  .footer__link-wrap {
    font-size: 12px;
  }
}


.footer__link-wrap a {
  margin-right: 20px;
}

.footer__relatedlink {
  margin-left: 160px;
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .footer__relatedlink {
    margin-left: 0;
  }
}


.footer-logo__wrap {
  width: 120px;
  margin-right: 40px;
}
@media screen and (max-width: 768px) {
  .footer-logo__wrap {
    margin-bottom: 20px;
  }
}

.footer-logo__wrap img {
  width: 100%;
}




.copyright {
  text-align: right;
  font-size: 12px;
  padding: 20px;
}

@media screen and (max-width: 768px) {
  .copyright {
    padding-bottom: 10px;
    text-align: center;
  }
}
/*■■■■■■■■■■■■■■■■■
セクション間余白
■■■■■■■■■■■■■■■■■*/
.section { padding-bottom: 120px;}
@media screen and (max-width: 768px){
  .section { padding-bottom: 80px;}
}
@media screen and (max-width: 500px){
  .section { padding-bottom: 60px;}
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
              TOP-mv
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.mv {
  background-color: #F4F4F4;
  width: 100%;
  padding-top: 10px;
}

.mv__wrap {
  position: relative;
  width: 80%;
  max-width: 1300px;
  margin-left: auto;
  height: 600px;
  margin-left: auto;

}
@media screen and (max-width: 500px){
  .mv__wrap {
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
    height: 700px;
    padding: 0 10px 40px;
  }
}


.mv__text--first {
  position: absolute;
  left: -20%;
  top: 25%;
  line-height: 1.5;
  z-index: 19;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.3;
}
@media screen and (min-width: 1600px){ 
  .mv__text--first {
    font-size: 3vw;
  }
}

.mv__text--second {
  position: absolute;
  left: -20%;
  top: 50%;
  line-height: 2;
  z-index: 19;
  font-weight: 500;
}
@media screen and (min-width: 1600px){ 
  .mv__text--second {
    font-size: 1vw;
    top: 60%;
  }
}

@media screen and (max-width: 500px){
  .mv__text--first,
  .mv__text--second {
    position: static;
  }
}
@media screen and (max-width: 500px){
  .mv__text-wrap {
    padding-top: 80px;
  }
}


/*■■■■■■
MV-slideshow
■■■■■■■*/

.slideshow {
  position: relative;
  width: 100%;
  height: 100%;
  margin-top: 80px;

  border-radius: 20px 0 0 20px;
  overflow: hidden;
}
@media screen and (max-width: 500px){
  .slideshow {
    margin-top: 40px;
    border-radius: 20px;
  }
}

.slideshow img {
  position: absolute;
  top: 0;
  left:0;
  width: 100%;
  height: 100%;
  z-index: 8;
  opacity: 0.0;
  object-fit: cover;

}

.slideshow img.active {
  z-index: 10;
  opacity: 1.0;
  animation: animationZoom 10s linear infinite;
}
.slideshow img.last-active {
  z-index: 9;
}



@keyframes animationZoom {
  100% { transform:scale(1.1)} 
}



/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
                TOP-intro
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.intro {
  background-color: #F4F4F4;
}
.intro__container {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px){
  .intro__container {
    display: block;
  }
}




.intro__main {
  display: flex;
}
@media screen and (max-width: 768px){
  .intro__main {
    justify-content: center;
    margin-bottom: 60px;
  }
}

.intro__main p {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 24px;
  font-weight: 600;
}
@media screen and (max-width: 768px){
  .intro__main p {
    font-size: 30px;
  }
}

.intro__img img {
  width: 100%;
}
.intro__img--1 {
  width: 100px;
  object-fit: contain;
  margin-top: auto;
}
@media screen and (max-width: 768px){
  .intro__img--1 {
    width: 100px;
  }
}
@media screen and (max-width: 500px){
  .intro__img--1 {
    width: 80px;
  }
}


.intro__img--2 {
  width: 120px;
  object-fit: contain;
  margin-bottom: auto;
  margin-left: 15px;
}
@media screen and (max-width: 768px){
  .intro__img--2 {
    width: 120px;
    margin: 0;
    padding-left: 10px;
  }
}
@media screen and (max-width: 500px){
  .intro__img--2 {
    width: 100px;
  }
}
@media screen and (max-width: 768px){
  .intro__img--2 {
    width: 120px;
    margin: 0;
    padding-left: 10px;
  }
}

.intro__text-wrap {
  width: 50%;
  font-weight: 500;
}
@media screen and (max-width: 768px){
  .intro__text-wrap {
    width: 60%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 500px){
  .intro__text-wrap {
    width: 100%;
  }
}

.intro__text-wrap p {
  margin-bottom: 20px;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            TOP-Profile
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.top-profile {
  background-color: #F4F4F4;
  padding-bottom: 20px;
}


.top-profile__Wrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: 120px;
}
@media screen and (max-width: 768px){
  .top-profile__Wrap {
    display: flex;
    flex-direction: column;
  }
}

.top-profile__Wrap--reverce {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px){
  .top-profile__Wrap--reverce {
    display: flex;
    flex-direction: column;
  }
}

.top-profile__name {
  font-size: 36px;
  font-weight: 600;
}

.top-profile__post {
  font-size: 14px;
  display: block;
}

.top-profile__name--sub {
  font-size: 14px;
}

.top-profile__img {
  width: 40%;
  text-align: center;
}
@media screen and (max-width: 768px){
  .top-profile__img {
    width: 80%;
    margin: 0 auto 20px;
  }
}
@media screen and (max-width: 500px){
  .top-profile__img {
    width: 100%;
  }
}

.top-profile__img img {
  width: 100%;
  margin: 0 auto;
}



.top-profile__text {
  width: 50%;
}
@media screen and (max-width: 768px){
  .top-profile__text {
    width: 100%;
    margin: 0 auto;
  }
}

.top-profile__text p {
  margin-bottom: 1em;
  line-height: 1.8;
}


.profile__sns-btn--circle {
  display: inline-block;
  width: 40px;
  height: 40px;
  margin-top: 20px;
  margin-right: 10px;
}

.profile__sns-btn--square {
  display: inline-block;
  width: 80px;
  height: 40px;
}
.profile__sns-btn--circle a img,
.profile__sns-btn--square a img {
  width: 100%;
}


.top__note {
  margin-top: 20px;
  text-align: right;
}


/*■■■■■■■■■■■■■■
無限横スクロール
■■■■■■■■■■■■■■■■*/
@keyframes infinity-scroll-left {
  from {
    transform: translateX(-100%);
  }
    to {
    transform: translateX(0);
  }
}

.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list {
  animation: infinity-scroll-left 40s infinite linear 0.5s both;
}
.scroll-infinity__item {
  width: calc(100vw / 3);
  height: 220px;
  padding-right: 10px;

}
@media screen and (max-width: 768px){
  .scroll-infinity__item {
    width: calc(100vw / 2);
    padding-right: 10px;
  }
}
.scroll-infinity__item>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            plan
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.plan {
  padding-top: 100px;
  background-color: #FAF3E7;
}

.plan__heading-wrap {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
@media screen and (max-width: 500px){
  .plan__heading-wrap {
    flex-direction: column;
    align-items: start;
  }
}

.plan__text {
  font-size: 18px;
  text-align: center;
  margin-bottom: 40px;
  font-weight: 600;
}

.plan__text span {
  display: block;
  font-size: 14px;
  font-weight: 400;
}

.plan__heading-wrap p {
  padding-bottom: 20px;
}

@media screen and (max-width: 500px){
  .sp-scroll {
    width: 100%;
    overflow-x: scroll;
  }
}

.plan__chart img {
  width: 100%;
}
@media screen and (max-width: 500px){
  .plan__chart img {
    width: 200%;
    padding-bottom: 20px;
  }
}

.plan__note-heading {
  width: 100px;
  background-color: #FFF;
  text-align: center;
}

.plan__note {
  margin-top: 40px;
}
.plan__note p {
  margin-bottom: 20px;
  max-width: 800px;
}

.plan__chart-note {
  font-size: 12px;
  margin-bottom: 10px;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            case
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.case {
  padding-top: 100px;
  background-color: #F4F4F4;
}

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


.case-card {
  background-color: #FFF;
  padding: 20px;
  margin-bottom: 20px;
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  margin: 0 10px;
}
@media screen and (max-width: 768px){
  .case-card {
    flex-direction: column;
  }
}

.case-card:hover {
  opacity: .7;
}

.case-card__inner-img {
  width: 50%;
  height: 200px;
}
@media screen and (max-width: 768px){
  .case-card__inner-img {
    width: 100%;
    height: 200px;
  }
}

.case-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 2%;
}

.case-card__txt {
  width: 50%;
  display: flex;
  flex-direction: column;
  padding-left: 20px;
}
@media screen and (max-width: 768px){
  .case-card__txt {
    width: 100%;
  }
}

.case-card__title {
  color: #BC9D65;
  font-size: 17px;
  margin-bottom: 10px;
  height: 80px;
  padding-top: 20px;
}

.case-card__keyword {
  font-size: 12px;
  height: 140px;
}

.case-card__more {
  font-size: 12px;
  font-weight: 600;
  margin-top: auto;
  text-align: right;
}


/*■■■■■■■■■■■
Slick 編集用
■■■■■■■■■■■■■*/
.slick01 {
  width: 100%;
  height: 100%;
  overflow: visible;
  position: relative; /* 矢印の絶対配置基準に */
}

/* 矢印のデザイン変更 */
.slick-prev:before {
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 8px;
  width: 13px;
  height: 13px;
  border-top: 3px solid #ffffff;
  border-right: 3px solid #ffffff;
  transform: rotate(225deg);    /* くの字の向き */
}

.slick-next:before {
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 8px;
  width: 13px;
  height: 13px;
  border-top: 3px solid #ffffff;
  border-right: 3px solid #ffffff;
  transform: rotate(45deg);    /* くの字の向き */
}

.slick-prev {
  left: 12%;
}
@media screen and (max-width: 768px){
  .slick-prev {
    left: 22%;
  }
}
@media screen and (max-width: 500px){
  .slick-prev {
    left: 5%;
  }
}

.slick-next {
  right: 12%;
}
@media screen and (max-width: 768px){
  .slick-next {
    right: 22%;
  }
}
@media screen and (max-width: 500px){
  .slick-next {
    right: 5%;
  }
}

.slick-prev,
.slick-next {
  background: #000 !important;
  width: 40px;
  height: 40px;
  border-radius: 100px;
  color: #FFF;
  z-index: 10;
}



/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            company
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.company {
  padding-top: 100px;
  background-color: #F4F4F4;
}
.company__wrap {
  background-color: #FFF;
  padding: 40px;
  max-width: 1000px;
  margin: 0 auto;
  border-radius: 10px;
}
@media screen and (max-width: 500px){
  .company__wrap {
    padding: 20px;
  }
}


.company__list {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 500px){
  .company__list {
    flex-direction: column;
  }
}

.company__list dt {
  width: 30%;
  font-weight: 600;
}
@media screen and (max-width: 500px){
  .company__list dt {
    width: 100%;
  }
}

.company__list dd {
  width: 70%;
}
@media screen and (max-width: 500px){
  .company__list dd {
    width: 100%;
  }
}

.company__list dt,
.company__list dd {
  padding: 10px 0;
  border-bottom: 1px solid #D6D6D6;
}
@media screen and (max-width: 500px){
  .company__list dt {
    padding: 0;
    padding-top: 10px;
    border-bottom: none;
  }
  .company__list dd {
    padding: 5px 0;
    border-bottom: 1px solid #D6D6D6;
  }
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            faq
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.faq {
  padding-top: 100px;
  background-color: #FAF3E7;
}
.faq__list:not(:last-child) {
  margin-bottom: 30px;
}


.faq__list li {
  position: relative;
  width: 100%;
  margin-bottom: 20px;
}
@media screen and (max-width: 500px) {
  .faq__list li {
      margin-bottom: 10px;
  }
}


.faq_main {
  width: 100%;
  margin: 0 auto;
  padding: 10px;
  cursor: pointer;
  background-color: #FFF;
  border-radius: 5px;
}
@media screen and (max-width: 500px) {
  .faq_main {
      padding: 0;
  }
}


.faq_ques {
  text-align: left;
  padding: 5px 10px;
  display: flex;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 500px) {
  .faq_ques {
      background-size: 40px auto;
      padding: 10px 0 10px 10px;
      width: 90%;
      line-height: 1.3;
  }
}

.faq_ans {
  display: none;
  text-align: left;
  padding: 5px 10px;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 500px) {
  .faq_ans {
    width: 100%;
    padding: 10px;
    line-height: 1.3;
  }
}

.faq_ans p {
  display: inline-block;
  vertical-align:top;
}

.faq_ques_text {
  width: 80%;
}
@media screen and (max-width: 500px) {
  .faq_ques_text {
    width: 85%;
  }
}

.faq_ans_text {
  width: 80%;
  margin-left: -5px;
}
@media screen and (max-width: 500px) {
  .faq_ans_text {
    width: 85%;
    margin-left: -5px;
  }
}


.faq_ques_head,
.faq_ans_head {
  font-size: 20px;
  display: block;
  margin-right: 20px;
  background-color: #BC9D65;
  color: #FFF;
  border-radius: 100px;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
}
.faq_ans_head {
  background-color: #F2E6D1;
  color: #BC9D65;
}
@media screen and (max-width: 500px) {
  .faq_ques_head,
  .faq_ans_head {
    font-size: 14px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    margin-right: 5px;
  }
}



/* 三角部分 */
.faq_ques:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  transform: rotate(45deg); /* 「く」の字を右下向きに */
  position: absolute;
  top: 20px;
  right: 20px;
  transition: all 0.2s;
}
@media screen and (max-width: 500px) {
  .faq_ques:after {
    width: 6px;
    height: 6px;
    top: 0;
    bottom: 0;
    right: -8%;
    margin: auto;
  }
}

.faq_opn .faq_ques:after {
  rotate: 180deg;
  border-right: 2px solid #BC9D65;
  border-bottom: 2px solid #BC9D65;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
                TOP-news
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.top-news {
  background-color: #F4F4F4;
}

.top-news__container {
  display: flex;
  justify-content: space-between;
  padding: 200px 0 100px;
}
@media screen and (max-width: 768px){
  .top-news__container {
    display: flex;
    flex-direction: column;
    padding: 60px 0;
  }
}


.top-news__wrap--first {
  width: 20%;
}
@media screen and (max-width: 768px){
  .top-news__wrap--first {
    width: 100%;
  }
}
@media screen and (max-width: 768px){
  .top-news__wrap--inner {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
  }
}

.news-btn__wrap {
  margin-top: 2em;
}
@media screen and (max-width: 768px){
  .news-btn__wrap {
    margin-top: auto;
  }
}


.news-btn {
  display: flex;
  align-items: center;
  text-decoration: none;
  transition: 0.3s;
  font-weight: 600;
  position: relative;
}
.news-btn::before {
  content:"";
  width: 20px;
  height: 20px;
  border-radius: 50px;
  margin-right: 10px;
  background-color:#BC9D65;
}
.news-btn::after {
  content: "";
  position: absolute;
  left: 3px;
  width: 8px;
  height: 8px;
  border-right: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  transform: rotate(-45deg); /* 「く」の字方向 */
  display: block;
}
.news-btn:hover {
  opacity: 0.7;
}



.top-news__img {
  width: 100px;
  margin-top: 100px;
  padding-left: 30px;
}
@media screen and (max-width: 768px){
  .top-news__img {
    margin-top: 0;
  }
}

.top-news__img img {
  width: 100%;
}

.top-news__list {
  width: 70%;
  padding: 40px;
  border-radius: 10px;
  background-color: #FFF;
}
@media screen and (max-width: 768px){
  .top-news__list {
    width: 100%;
    padding: 20px;
  }
}

.top-news__item  {
  list-style-type: none;
  padding: 10px;
  border-bottom: 1px solid #D6D6D6;
}
@media screen and (max-width: 768px){
  .top-news__item  {
    margin-bottom: 2em;
  }
}

.top-news__item a {
  display: flex;
  align-items: flex-start;
  vertical-align: top;
  gap: 1em;
}
@media screen and (max-width: 1080px){
  .top-news__item a {
    display: block;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0;
  }
}

.top-news__item a:hover {
  opacity: .7;
}

.news__date-wrap {
  display: flex;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px){
  .news__date-wrap {
    margin-bottom: 10px;
  }
}

.news__date {
  font-size: 12px;
  flex-shrink: 0;
}
@media screen and (max-width: 768px){
  .top-news__item a .news__date {
    margin-left: 0;
  }
}

.top-news__title {
  display: inline-block;
  width: 80%;
  margin-left: auto;
  flex-shrink: 1;
}
@media screen and (max-width: 1080px){
  .top-news__title {
    /* order: 3; */
    width: 100%;
  }
}


/*■■■■■■
下層-News
■■■■■■■*/
.news__container {
  margin-top: 100px;
  padding-bottom: 60px;
  background-color: #FFF;
}

.news-wrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 20px;
}
@media screen and (max-width: 768px){
  .news-wrap {
    display: block;
  }
}

.news__list--main {
  width: 73%;
}
@media screen and (max-width: 768px){
  .news__list--main {
    width: 100%;
  }
}

.news__item {
  padding: 30px 0;
  border-bottom: 1px solid #D6D6D6;
}
.news__item:first-of-type {
  padding-top: 0;
}

.news__link {
  height: 100%;
}

.news__category {
  display: inline-block;
  text-align: center;
  font-size: 12px;
  width: 100px;
  background-color: #BC9D65;
  color: #FFF;
  margin-left: 20px;
}

.top-news__item .news__category {
  margin-left: 0;
}

.news__category a {
  display: block;
  width: 100%;
  height: 100%;
  color: #FFF;
}

.news__title a {
  display: block;
  width: 100%;
  height: 100%;
}
.news__title a:hover {
  opacity: .7;
}

.news-sub {
  width: 23%;
  background-color: #F4F4F4;
}
@media screen and (max-width: 768px){
  .news-sub {
    width: 100%;
  }
}

.news-sub__category {
  padding: 30px 30px 20px 30px;
  display: flex;
  flex-wrap: wrap;
}

.news-sub__title {
  width: 100%;
  font-size: 14px;
  margin-bottom: 15px;
}

.news-sub__btn a {
  background-color: #BC9D65;
  color: #FFF;
  display: inline-block;
  font-size: 0.8rem;
  width: 100px;
  padding: 2px 0;
  margin-bottom: 10px;
  text-align: center;
  cursor: pointer;
  transition: 0.3s;
  margin-right: 10px;
}
@media screen and (max-width: 768px){
  .news-sub__btn a {
    margin-right: 10px;
    margin-bottom: 5px;
  }
}

.news-sub__btn a:hover {
  background-color: #000;
  color: #FFF;
}



/* News個別記事ページ */
.news__article {
  margin: 25px 0 0;
}

.news__article p {
  margin-bottom: 10px;
}

.news__article p img {
  display: block;
  width: 80%;
  margin: 40px auto;
}


/* 個別記事ナビ */
.nav-links {
  padding: 40px 20px;
  text-align: center;
  width: 100%;
  margin: 0 auto;
}

.nav-previous {
  text-align: left;
  width: 33%;
  float: left;
}
@media screen and (max-width: 500px){
  .news .nav-previous {
    width: 45%;
  }
}
.nav-top {
  text-align: center;
  width: 33%;
  float: left;
}

.nav-next {
  text-align: right;
  width: 33%;
  float: right;
}
@media screen and (max-width: 500px){
  .news .nav-next {
    width: 45%;
  }
}

.nav-previous a,
.nav-next a {
  font-size: 12px;
  display: inline-block;
  padding: 5px 10px;
  line-height: 22px;
  text-align: left;
  border-bottom: 1px solid #dddddd;
}
.nav-top a {
  font-size: 12px;
  display: inline-block;
  padding: 5px 10px;
  line-height: 22px;
}



/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
              Privacy
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.privacy__container {
  margin-top: 100px;
  padding-bottom: 60px;
  background-color: #FFF;
}

.privacy-wrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 20px;
}
@media screen and (max-width: 768px){
  .privacy-wrap {
    display: block;
  }
}

.privacy__article {
  margin: 25px 0 0;
}

.privacy__para {
  /* margin-bottom: 1em; */
}

.privacy__para-head {
  font-weight: 600;
  margin-top: 1em;
}

.privacy__para-list {
  margin-bottom: 1em;
  list-style-position: inside;
}

ul.privacy__para-list li {
  text-indent: -1em;
  padding-left: 1em;
  list-style-type: disc !important;
}
ol.privacy__para-list li {
  text-indent: -1em;
  padding-left: 1em;
  list-style-type: decimal !important;
}

.privacy__date {
  text-align: right;
}


.privacy__anker {
  display: inline-block;
  text-decoration: underline;
}

div.wpcf7 .wpcf7-spinner {
  display: block;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            closeing
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.closeing {
  height: 400px;
  background-image: url(img/bg-recruit.jpg);
  background-position: 50% 50%;
  background-size: cover;
  display: flex;
  align-items: center;
}

.closeing__wrap {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  width: 500px;
  height: auto;
  padding: 20px;
  margin: auto;
}
@media screen and (max-width: 500px){
  .closeing__wrap {
    width: 94%;
    padding: 20px;
  }
}


.closeing__wrap .btn__wrap {
  display: inline-block;
  margin: 20px auto 0;
}

.closeing__wrap p {
  font-size: 20px;
  font-weight: 600;
}
.closeing__wrap p span {
  display: block;
  font-size: 14px;
  font-weight: 400;
  margin-top: 10px;
}



/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            recruit
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.recruit {
  padding-top: 60px;
}

.recruit__text {
  text-align: center;
  font-size: 14px;
  line-height: 2;
}


.recruit-heading__wrap {
  position: relative;
  width: 500px;
  margin: 0 auto;
}
@media screen and (max-width: 768px){
  .recruit-heading__wrap {
    width: 400px;
  }
}
@media screen and (max-width: 500px){
  .recruit-heading__wrap {
    width: 300px;
    padding-bottom: 60px;
  }
}


.recruit__img img {
  width: 100%;
}
.recruit__img--1 {
  width: 100px;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 500px){
  .recruit__img--1 {
    width: 70px;
    top: 60px;
  }
}

.recruit__img--2 {
  width: 100px;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 500px){
  .recruit__img--2 {
    width: 70px;
    top: 60px;
  }
}

.recruit__note {
  font-size: 12px;
  margin-top: 10px;
}



/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
            下層-Contact
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.contact__container {
  background-color: #FFF;
  margin-top: 100px;
  margin-bottom: 60px;
  padding: 30px 20px 50px;
}
.page__heading--contact {
  text-align: center;
  padding-top: 20px;
}

.contact-form {
  width: 100%;
  margin: 0 auto;
  padding-top: 10px;
  padding-bottom: 50px;
}

.contact-form-item {
  padding-bottom: 20px;
}

.contact-form-item-ttl {
  display: flex;
  align-self: center;
  margin-bottom: 5px;
}

.form-required::after {
  content: "必須";
  background-color: #FF6767;
  color: #FFF;
  font-size: 12px;
  padding: 0 10px;
  display: inline-block;
  margin-left: 10px;
}

.form-daiko::after {
  content: "民泊代行";
  background-color: #9c9c9c;
  color: #FFF;
  font-size: 12px;
  padding: 0 10px;
  display: inline-block;
  margin-right: 10px;
}

.contact-form-input {
  width: 100%;
  height: 2.5rem;
  font-size: 16px;
  background-color: #F4F4F4;
  border: none;
}

.contact-form-textarea {
  width: 100%;
  font-size: 16px;
  background-color: #F4F4F4;
  border: none;
  padding: 20px;
}

.contact-form-checkbox-list {
  display: flex;
  flex-direction: column;
}
.contact-form-checkbox-list li {
  position: relative;
  display: inline-block;
}
/* .contact-form-checkbox-list li::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 2em;
  cursor: pointer;
} */


.form-note {
  font-weight: 500;
  margin-bottom: 10px;
}
.form-note span {
  text-decoration: underline;
}

.contact-form-inner {
  padding-left: 2em;
}
@media screen and (max-width: 768px){
  .contact-form-inner {
    padding-left: 0;
  }
}

.form-recaptcha-txt {
  display: block;
  width: 60%;
  max-width: 600px;
  margin: 0 auto 40px;
  text-align: center;
  font-size: 11px;
  line-height: 1.5;
}
@media screen and (max-width: 768px){
  .form-recaptcha-txt {
    width: 80%;
    max-width: 600px;
    margin: 40px auto;
  }
}


.form-recaptcha-txt a {
  text-decoration: underline;
}


.red {
  color: #FF0000;
}






/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
    ScrollReveal追加（MV__text用）
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.blr_set{
  filter: blur(10px);
  transition: all 0.8s ease;
}
.blr_reset{
  filter: blur(0px);
}
.blr_set2{
  filter: blur(10px);
  transition: all 0.8s ease;
}
.blr_reset2{
  filter: blur(0px);
}




/* reCAPTHA 保護マーク非表示 */
.grecaptcha-badge { visibility: hidden; }


/* ページネーション左右アイコン */
svg.icon {
  width: 1em;
  height: 1em;
}