@charset "UTF-8";
/*-----------------------

         変数          

-----------------------*/ :root {
  --baseColor: #595757;
  --mainColor: #EC707E;
  --subColor: #F0EDE8;
  --colorW: #fff;
  --colorGray: #7D7D7D;
}
body {
  color: var(--baseColor);
}
.text-c {
  text-align: center;
}
.text-l {
  text-align: left;
}
.text-r {
  text-align: right;
}
.text-j {
  text-align: justify;
}
.flex {
  display: flex;
}
.flex-c {
  display: flex;
  justify-content: center;
}
.flex-b {
  display: flex;
  justify-content: space-between;
}
.flex-e {
  display: flex;
  justify-content: flex-end;
}
.color-main {
  color: var(--mainColor);
}
.color-sub {
  color: var(--subColor);
}
.color-w {
  color: var(--colorW);
}
.bg-main {
  background: var(--mainColor);
}
.bg-sub {
  background: var(--subColor);
}
.bg-base {
  background: var(--baseColor);
}
.bg-gray {
  background: var(--colorGray);
}
.w-inner {
  width: 120rem;
  padding: 0 2rem;
  margin: 0 auto;
}
.sec {
  padding: 10rem 0;
}
/*aside*/
aside .contents2Wrap {
  gap: 1.5rem 3rem;
}
aside .contents2Wrap h2 a {
  display: block;
}
aside .contents2Wrap h2 a img {
  width: 100%;
}
/*btn*/
.detail-btn {
  position: relative;
}
.detail-btn a {
  color: var(--colorW);
  background-color: var(--mainColor);
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  padding: 2rem;
  line-height: 1;
  width: 100%;
  text-align: center;
  display: block;
  border-radius: 5rem;
  position: relative;
}
.detail-btn a::after {
  content: "";
  background: url("../images/workation/common/arrow.webp")no-repeat center center/contain;
  width: 0.9rem;
  height: 1.3rem;
  position: absolute;
  top: 50%;
  right: 4rem;
  transform: translateY(-50%);
  font-weight: 700;
  transition: 0.5s;
}
.detail-btn a:hover {
  opacity: 1;
}
.detail-btn a:hover::after {
  right: 3rem;
}
.more-btn {
  background-color: #3E3A39;
  display: inline-block;
  position: relative;
}
.more-btn a {
  color: var(--colorW);
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  padding: 1rem;
  line-height: 1;
  width: 27.8rem;
  text-align: center;
  display: inline-block;
  position: relative;
  z-index: 10;
}
.more-btn a::after {
  content: "";
  background: url("../images/workation/common/arrow.webp")no-repeat center center/contain;
  width: 0.9rem;
  height: 1.3rem;
  position: absolute;
  top: 50%;
  right: 4rem;
  transform: translateY(-50%);
  font-weight: 700;
  transition: 0.5s;
  z-index: 10;
}
.more-btn a:hover {
  opacity: 1;
}
.more-btn a:hover::after {
  right: 3rem;
}
/*見出し*/
.sec-sub-ttl {
  font-size: 6.4rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  position: relative;
  z-index: 10;
}
.sec-ttl {
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: 0.2em;
}
/*段組*/
.contents2Wrap {
  display: grid;
  gap: 7rem 5rem;
  grid-template-columns: repeat(2, 1fr);
}
.contents3Wrap {
  display: grid;
  gap: 4rem;
  grid-template-columns: repeat(3, 1fr);
}
.contents2Wrap figure img, .contents3Wrap figure img, .contents4Wrap figure img {
  width: 100%;
}
/* キラキラ部分 */
.star {
  position: absolute;
  display: block;
  width: 16px;
  height: 13px;
  background-image: url("../images/workation/common/hov-sakura1.webp");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  animation: glitter 1s;
  pointer-events: none;
  z-index: 5;
}
.star2 {
  position: absolute;
  display: block;
  width: 18px;
  height: 13px;
  background-image: url("../images/workation/common/hov-sakura2.webp");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  animation: glitter2 2s;
  animation-delay: 1s;
  pointer-events: none;
  z-index: 5;
}
/* キラキラが発生するアニメーション */
@keyframes glitter {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(0);
    opacity: 0;
  }
}
@keyframes glitter2 {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(0);
    opacity: 0;
  }
}
/*pager*/
.wp-pagenavi {
  display: flex;
  justify-content: center;
  gap: 2%;
}
.wp-pagenavi a, .wp-pagenavi span {
  line-height: 1;
  padding: 1.5rem;
}
.wp-pagenavi span.current {
  background: #3E3A39;
  color: var(--colorW);
  border: solid 1px #3E3A39;
}
.wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink {
  border: none;
}
/*-----------------------

         header          

-----------------------*/
header {
  height: auto;
}
header .logo {
  width: 24.01vw;
  padding: 1rem 0;
}
.hdr_inner {
  padding: 1rem 3rem;
}
.hdr_inner ul li a {
  font-weight: 500;
  color: var(--baseColor);
  transition: 0.2s;
}
.hdr_inner ul li a:hover {
  color: var(--mainColor);
  transition: 0.2s;
}
/*-----------------------

         footer          

-----------------------*/
footer.workation {
  background-color: transparent;
}
footer.workation::before {
  display: none;
}
/*-----------------------

         W-TOP          

-----------------------*/
main.workation, .w-post {
  overflow-x: hidden;
}
.workation .textArea p {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.1em;
}
.workation .mv {
  position: relative;
}
.workation .mv .bg {
  position: relative;
}
.workation .mv .bg::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  background: url("../images/workation/top/mv-sakura.webp") no-repeat right top/cover;
  z-index: 3000;
}
.workation .mv .ttlG {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 5000;
}
.workation .mv .ttlG > * {
  color: #fff;
  text-align: center;
}
.workation .mv h2 {
  margin-bottom: 2rem;
}
.workation .mv h2 + p {
  line-height: 1.75;
  font-weight: 700;
}
.workation .mv .mv-pickup {
  position: absolute;
  width: 38rem;
  left: 4vw;
  bottom: 18rem;
  z-index: 4000;
}
.workation .mv .mv-pickup .pickup-inner {
  background: #fff;
  position: relative;
  padding: 1.5rem;
}
.workation .mv .mv-pickup .pickup-inner::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 1rem;
  bottom: -1rem;
  background: #D9AFA2;
  z-index: -1;
}
.workation .mv .mv-pickup .pickup-inner h3 {
  font-size: 0.9375vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin-bottom: 0.5rem;
}
.workation .mv .mv-pickup .pickup-inner .flex {
  gap: 1rem;
  align-items: flex-start;
}
.workation .mv .mv-pickup .pickup-inner figure {
  width: 5.052vw;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}
.workation .mv .mv-pickup .pickup-inner figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.workation .mv .mv-pickup .pickup-inner .textArea {
  width: calc(100% - 1rem - 5.052vw);
}
.workation .mv .mv-pickup .pickup-inner .textArea p {
  font-size: 0.677vw;
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 1.5;
  text-align: left;
}
.workation .mv .mv-pickup .pickup-inner .textArea .more-btn {
  font-size: 0.625vw;
  letter-spacing: 0.1em;
  padding: 0.5rem 5rem;
  position: relative;
  color: var(--colorW);
  background-color: #3E3A39;
  display: inline;
  top: 1rem;
}
.workation .mv .mv-pickup .pickup-inner .textArea .more-btn::after {
  content: "";
  right: 2rem;
  ontent: "";
  background: url(../images/workation/common/arrow.webp)no-repeat center center/contain;
  width: 0.9rem;
  height: 1.3rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-weight: 700;
  transition: 0.5s;
}
.workation .mv .mv-pickup .pickup-inner .textArea .more-btn:hover::after {
  right: 1rem;
}
/*桜アニメーション*/
.sakura li {
  width: 18px;
  position: absolute;
  list-style: none;
  top: -50px;
  animation: fall 4s linear infinite, rotate1 2s ease-in-out infinite alternate;
  z-index: 4000;
}
@keyframes fall {
  to {
    top: 120%;
  }
}
@keyframes rotate1 {
  from {
    transform: translateX(0px) rotate(0deg);
  }
  to {
    transform: translateX(200px) rotate(-80deg) rotateX(180deg);
  }
}
@keyframes rotate2 {
  from {
    transform: translateX(200px) rotate(-45deg);
  }
  to {
    transform: translateX(0px) rotate(0deg);
  }
}
.sakura li:nth-child(1) {
  left: 0;
  animation: fall 10s linear infinite, rotate1 3s ease-in-out infinite alternate;
}
.sakura li:nth-child(2) {
  right: 5vw;
  animation: fall 15s linear infinite, rotate1 2s ease-in-out infinite alternate;
}
.sakura li:nth-child(3) {
  right: 15vw;
  animation: fall 9s linear infinite, rotate1 3.5s ease-in-out infinite alternate;
}
.sakura li:nth-child(4) {
  right: 30vw;
  animation: fall 8s linear infinite, rotate2 4s ease-in-out infinite alternate;
}
.sakura li:nth-child(5) {
  right: 40vw;
  animation: fall 10s linear infinite, rotate1 4s ease-in-out infinite alternate;
}
.sakura li:nth-child(6) {
  left: 55vw;
  animation: fall 11s linear infinite, rotate2 3s ease-in-out infinite alternate;
}
.sakura li:nth-child(7) {
  right: 65vw;
  animation: fall 7s linear infinite, rotate2 3.5s ease-in-out infinite alternate;
}
.sakura li:nth-child(8) {
  right: 50vw;
  animation: fall 7s linear infinite, rotate1 3s ease-in-out infinite alternate;
}
/*//桜アニメーション*/
/*border-animation*/
.stroke {
  position: relative;
}
.stroke .img-border {
  content: "";
  position: absolute;
  opacity: 0;
}
.stroke .img-border.top, .stroke .img-border.bottom {
  width: 100%;
}
.stroke .img-border.top {
  border-top: 1px solid var(--baseColor);
  right: 0;
  top: 0;
}
.stroke .img-border.bottom {
  border-bottom: 1px solid var(--baseColor);
  left: 0;
  bottom: 0;
}
.stroke .img-border.right, .stroke .img-border.left {
  height: 100%;
}
.stroke .img-border.right {
  border-right: 1px solid var(--baseColor);
  right: 0;
  top: 0;
}
.stroke .img-border.left {
  border-left: 1px solid var(--baseColor);
  left: 0;
  bottom: 0;
}
.stroke.is-animated .img-border {
  opacity: 1;
}
.stroke.is-animated .img-border.top, .stroke.is-animated .img-border.bottom {
  animation: stroke-width 1.8s cubic-bezier(0.22, 1, 0.36, 1);
}
.stroke.is-animated .img-border.right, .stroke.is-animated .img-border.left {
  animation: stroke-height 1.8s cubic-bezier(0.22, 1, 0.36, 1);
}
/*borderが画像を囲む*/
@keyframes stroke-width {
  0% {
    width: 0;
    opacity: 1;
  }
  100% {
    width: 100%;
    opacity: 1;
  }
}
@keyframes stroke-height {
  0% {
    height: 0;
    opacity: 1;
  }
  100% {
    height: 100%;
    opacity: 1;
  }
}
/*//border-animation*/
.workation .contentsWrap {
  padding: 4rem 5rem 6rem;
  width: 65%;
  margin: -5rem auto 0;
  position: relative;
}
.workation .contentsWrap p.map {
  position: absolute;
  bottom: -6.5rem;
  right: -18rem;
  cursor: pointer;
  z-index: 20;
}
.workation .sec01 h3, .workation .sec05 h3 {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin: 4rem 0 3rem;
}
.workation .sec01 .textArea p:not(:last-child), .workation .sec05 .textArea p:not(:last-child) {
  margin-bottom: 1.5em;
}
.workation .sec01 .more-btn, .workation .sec05 .more-btn {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -1.9rem;
}
.workation .sec02 {
  position: relative;
  margin-top: 65rem;
  z-index: -1;
  padding-top: 12rem;
}
.workation .sec02::before {
  content: "";
  display: block;
  position: absolute;
  background: url("../images/workation/top/sec02-top-img.webp") no-repeat center center/cover;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 52rem;
  top: -52rem;
}
.workation .sec02 h2, .workation .sec10 h2 {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin-top: -2rem;
}
.workation .sec02 h3 {
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  line-height: 1.5;
  margin-bottom: 2.5rem;
}
.workation .sec02 ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 6rem;
  width: 95%;
  margin-top: 10rem;
}
.workation .sec02 ul.is-animated {
  position: relative;
  z-index: 1;
}
.workation .sec02 ul li {
  background: var(--colorW);
  padding: 2rem;
  aspect-ratio: 1/1;
  position: relative;
  opacity: 0;
}
.workation .sec02 ul.is-animated li {
  position: relative;
}
.workation .sec02 ul li::before {
  content: "";
  background: var(--colorW);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  z-index: 0;
}
.workation .sec02 ul li::after {
  content: "";
  background: #DAB0A3;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  right: -2.5rem;
  bottom: -2.5rem;
  z-index: -1;
  opacity: 0;
}
.workation .sec02 ul.is-animated li:nth-child(1) {
  -webkit-animation: list-anime 0.5s ease 0.5s 1 forwards;
  animation: list-anime 0.5s ease 0.5s 1 forwards;
}
.workation .sec02 ul.is-animated li:nth-child(2) {
  -webkit-animation: list-anime 0.5s ease 1s 1 forwards;
  animation: list-anime 0.5s ease 1s 1 forwards;
}
.workation .sec02 ul.is-animated li:nth-child(3) {
  -webkit-animation: list-anime 0.5s ease 1.5s 1 forwards;
  animation: list-anime 0.5s ease 1.5s 1 forwards;
}
.workation .sec02 ul.is-animated li::after {
  -webkit-animation: list-anime 1.5s ease 2s 1 forwards;
  animation: list-anime 1.5s ease 2s 1 forwards;
  z-index: -1;
}
@-webkit-keyframes list-anime {
  100% {
    opacity: 1;
  }
}
@keyframes list-anime {
  100% {
    opacity: 1;
  }
}
.workation .sec02 ul li .number {
  font-size: 3.4rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-indent: 0.3em;
  margin-bottom: 6rem;
  position: relative;
  -webkit-text-stroke: 1px #3E3A39;
  text-stroke: 1px #3E3A39;
  line-height: 1;
}
.workation .sec02 ul li .number span {
  color: #fff;
  -webkit-text-stroke: 1px #3E3A39;
  text-stroke: 1px #3E3A39;
  font-size: 150%;
  font-style: italic;
}
.workation .sec02 ul li .number::after {
  content: "";
  display: block;
  height: 2px;
  width: 2.5rem;
  background: var(--baseColor);
  position: absolute;
  left: 0;
  bottom: -2.5rem;
}
.workation .sec02 ul li .list-ttl {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin-bottom: 1.5rem;
  position: relative;
}
.workation .sec02 ul li .textArea {
  position: relative;
}
.workation .sec03 {
  position: relative;
}
.workation .sec03::after {
  content: "";
  display: block;
  position: absolute;
  background: url("../images/workation/top/sec02-bottom-img.webp") no-repeat center center/cover;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 11.9rem;
  bottom: -11.9rem;
}
.workation .sec03 .sec-ttl, .workation .sec04 .sec-ttl, .workation .sec06 .sec-ttl {
  margin-top: -2rem;
}
.workation .sec03 .sec-ttl + p {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin-top: 4rem;
}
.workation .sec03 figure {
  margin: 6rem 0;
}
.workation .sec03 .movie {
  margin: 6rem auto;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  max-width: 91.7rem;
}
.workation .sec03 .movie video {
  object-fit: cover;
  height: 100%;
}
.workation .sec04 {
  margin-top: 15rem;
}
.tour .contents3Wrap {
  margin: 8rem 0;
}
.tour figure {
  margin-bottom: 1.5rem;
  aspect-ratio: 16 /9;
  overflow: hidden;
}
.tour figure.end {
  position: relative;
}
.tour figure.end::after {
  content: "募集終了しました";
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--colorW);
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(62, 58, 57, 0.6);
}
.tour figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tour .contents3Wrap .box a figure img {
  transform: scale(1);
  transition: 0.5s;
}
.tour .contents3Wrap .box a:hover figure img {
  transform: scale(1.1);
  transition: 1s;
}
.tour p.message {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 0.1rem 1.2rem;
}
.tour .box .flex.date {
  align-items: center;
  gap: 1rem;
}
.tour .box .flex.date p {
  letter-spacing: 0.1em;
  font-weight: 700;
}
.tour .box h3 {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 2.5rem;
}
.workation .sec06 {
  position: relative;
  margin-top: 36rem;
}
.workation .sec06::before {
  content: "";
  display: block;
  position: absolute;
  background: url("../images/workation/top/sec05-top-img.webp") no-repeat left center/cover;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 35.4rem;
  top: -35.4rem;
}
.workation .sec06 .contents2Wrap {
  margin-top: 8rem;
}
.workation .sec06 ul li .work-space-ttl {
  font-size: 2rem;
  letter-spacing: 0.2em;
  font-weight: 700;
}
.workation .sec06 ul li a .work-space-ttl {
  transition: 0.2s;
}
.workation .sec06 ul li a:hover .work-space-ttl {
  color: var(--mainColor);
  transition: 0.5s;
}
.workation .sec06 ul li .photoWrap {
  margin: 2rem 0;
  position: relative;
}
.workation .sec06 ul li .photoWrap .number {
  display: inline-block;
  top: -5rem;
  right: 1rem;
  color: #fff;
  -webkit-text-stroke: 2px #3E3A39;
  text-stroke: 2px #3E3A39;
  font-style: italic;
  font-size: 9rem;
  font-weight: 700;
  position: absolute;
  letter-spacing: 0;
  line-height: 1;
  transform: scale(1);
  transition: 0.5s;
}
.workation .sec06 ul li:nth-child(even) .textArea.fadein {
  transition-duration: 1.5s;
}
.workation .sec06 ul li a:hover .photoWrap .number {
  transform: scale(1.1);
  transition: 0.5s;
}
.workation .sec06 ul li figure {
  text-align: center;
}
.workation .sec06 ul li figure img {
  width: 100%;
}
.workation .card .box {
  background: var(--mainColor);
  display: flex;
  align-items: center;
  position: relative;
}
.workation .card.contents3Wrap {
  gap: 1rem;
}
.workation .card .box.ttl {
  padding: 3rem;
}
.workation .card .box .sec-ttl {
  font-size: 6rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: left;
}
.workation .card .box .sec-ttl span {
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.2em;
}
.workation .card .box .hdr {
  position: absolute;
  bottom: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.7);
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  padding: 1rem 1.5rem;
  width: 100%;
}
.workation .card .box:hover .hdr {
  background: rgba(255, 255, 255, 1);
}
.workation .card .box .hdr span {
  color: var(--mainColor);
  margin-right: 0.5rem;
}
.workation .card .box.ttl .sec-ttl {
  transition: .8s;
  transform: rotateX(0deg);
}
.workation .card .box.ttl:hover .sec-ttl {
  transform: rotateX(360deg);
}
.workation .sec09 {
  position: relative;
}
.workation .sec09::after {
  content: "";
  display: block;
  position: absolute;
  background: url("../images/workation/top/sec09-bottom-img.webp") no-repeat right center/cover;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 34.2rem;
  bottom: -34.2rem;
}
.workation .sec10 {
  margin-top: 35rem;
}
.workation .workation-news .news-Wrap {
  gap: 6.8rem;
  align-items: flex-start;
}
.workation .workation-news .news-Wrap .flexL {
  width: 20%;
}
.workation .workation-news .news-Wrap .flexL .sec-sub-ttl {
  line-height: 1;
  margin-bottom: 3rem;
}
.workation .workation-news .news-Wrap .flexR {
  width: calc(100% - 20% - 6.8rem);
}
.workation .workation-news li {
  padding: 1.5rem 1rem;
  border-bottom: dashed 1px;
}
.workation .workation-news li:nth-child(1) {
  border-top: dashed 1px;
}
.workation .workation-news p.date {
  align-items: center;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.workation .workation-news p.date img {
  margin-right: 0.5rem;
}
.workation .workation-news .news-ttl {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.workation .workation-news .more-btn {
  margin: 3rem 0 0;
}
.page-id-306 aside.sec {
  padding-bottom: 0;
}
/*-----------------------

      W-お問い合わせ          

-----------------------*/
.w-inquiry table {
  background: var(--subColor);
  width: 100%;
}
.w-inquiry tr {
  border-bottom: solid 2px #fff;
}
.w-inquiry th, .w-inquiry td {
  padding: 2rem;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.2em;
}
.w-inquiry th {
  vertical-align: middle;
  width: 30%;
}
.w-inquiry th.area {
  vertical-align: top;
}
.w-inquiry th span.red {
  color: #fff;
  font-size: 1.3rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  background: #C9000C;
  padding: 0.1rem 0.5rem;
  margin-left: 1rem;
}
.w-inquiry td {
  font-weight: 500;
  width: 70%;
}
.w-inquiry td .doui {
  background: #fff;
  border-radius: 0.5rem;
  padding: 1.5rem 2rem;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.2em;
}
.w-inquiry td .doui a {
  text-decoration: underline;
  color: #0056A8;
  font-weight: 500;
}
.w-inquiry input, .w-inquiry button, .w-inquiry textarea, .w-inquiry select, .w-inquiry input[type="url"], .w-inquiry input[type="email"], .w-inquiry input[type="text"] {
  border-radius: 0.5rem;
  border: none;
}
.w-inquiry .more-btn {
  color: var(--colorW);
  background-color: #3E3A39;
  width: 27.8rem;
  text-align: center;
  display: block;
  position: relative;
  margin: 8rem auto 0
}
.w-inquiry .more-btn::after {
  content: "";
  background: url("../images/workation/common/arrow.webp")no-repeat center center/contain;
  width: 0.9rem;
  height: 1.3rem;
  position: absolute;
  top: 50%;
  right: 4rem;
  transform: translateY(-50%);
  font-weight: 700;
  transition: 0.5s;
}
.w-inquiry .more-btn:hover {
  opacity: 1;
}
.w-inquiry .more-btn:hover::after {
  right: 3rem;
}
.w-inquiry .more-btn input[type="submit"], .w-inquiry .more-btn button {
  background-color: transparent;
  color: #fff;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  padding: 1rem;
  line-height: 1;
  z-index: 10;
  position: relative;
}
/*チェックボタン*/
.w-inquiry .doui .mwform-checkbox-field label {
  display: inline;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}
.mwform-checkbox-field input {
  display: none;
}
.w-inquiry .doui label span {
  padding-left: 4rem;
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  position: relative;
  width: inherit;
  padding-top: 0.5rem;
}
.w-inquiry .doui label span::before {
  background: #fff;
  border: 2px solid #9fa0a0;
  content: '';
  display: block;
  height: 18px;
  left: 5px;
  margin-top: -8px;
  position: absolute;
  top: 50%;
  width: 18px;
}
.w-inquiry .doui input[type=checkbox]:checked + span::after {
  opacity: 1;
}
.w-inquiry .doui label span::after {
  border-right: 3px solid #e60012;
  border-bottom: 3px solid #e60012;
  content: '';
  display: block;
  height: 26px;
  left: 17px;
  margin-top: -18px;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 7px;
}
.w-inquiry .mwform-checkbox-field-text {
  text-indent: -9999px;
}
/*確認画面*/
.page-template-page-workation-inquiry-confirmation tr.doui-check {
  display: none;
}
.page-template-page-workation-inquiry-confirmation .send {
  display: flex;
  justify-content: center;
  gap: 2rem;
}
.page-template-page-workation-inquiry-error .send-message, .page-template-page-workation-inquiry-confirmation .send-message {
  color: #C9000C;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin-bottom: 3rem;
}
/*完了画面*/
.page-template-page-workation-inquiry-thanks h2 {
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin-bottom: 4rem;
}
.page-template-page-workation-inquiry-thanks .thanks {
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.page-template-page-workation-inquiry-thanks .more-btn {
  margin: 8rem auto;
}
/* ====================================================================
-------------------------------footer
==================================================================== */
footer.workation {
  background-color: var(--subColor);
  padding: 0;
  position: relative;
  margin-top: 38rem;
}
footer.workation::after {
  content: "";
  display: block;
  width: 100%;
  height: 20rem;
  background: url(../images/workation/common/ft-bg.svg) no-repeat center top/cover;
  position: absolute;
  top: -18rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
footer.workation p, footer.workation h2, footer.workation h3, footer .workation a {
  color: var(--baseColor);
}
footer.workation::before {
  display: none;
}
footer.workation .address-area p {
  font-size: 1.4rem;
}
footer.workation .address-area p:not(:last-child) {
  margin-bottom: 1rem;
}
footer.workation address {
  font-size: 1.4rem;
  margin-top: 0;
  text-align: left;
  color: var(--baseColor);
  margin-bottom: 1rem;
}
footer.workation .contents3Wrap {
  display: flex;
  gap: 5rem;
}
footer.workation .contents3Wrap div {
  width: calc((100% - 10rem) / 3);
}
footer.workation .area-01 {
  margin-bottom: 5rem;
}
footer.workation h3 {
  margin-bottom: 2rem;
  letter-spacing: 0.1em;
}
footer.workation .copy {
  background: var(--baseColor);
  color: var(--colorW);
  margin-top: 9rem;
  padding: 1.5rem;
  font-size: 1.2rem;
}
footer.workation .tel-area {
  border-right: 1px solid var(--baseColor);
  border-left: 1px solid var(--baseColor);
  padding: 0 2rem;
}
footer.workation .tel-area p {
  line-height: 1.3;
}
footer.workation .tel-area p span {
  font-weight: bold;
  font-size: 2.6rem;
  letter-spacing: 0.1em;
  padding-right: 0.5rem;
}
footer.workation .nav li {
  list-style-type: disc;
  color: var(--baseColor);
  width: 40%;
  margin: 0 auto;
}
footer.workation .nav li:not(:last-child) {
  margin-bottom: 2rem;
}
footer.workation .nav li a {
  color: var(--baseColor);
  font-size: 1.4rem;
}
footer.workation p.copy small {
  font-size: 1.2rem;
  letter-spacing: 0.1em;
}
/* ====================================================================
-------------------------------single-common
==================================================================== */
.bred {
  margin-bottom: 7rem;
}
.bred li a {
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  padding: 0 1rem;
}
.bred li:not(:last-child)::after {
  content: "/";
  color: var(--mainColor);
  padding: 0.5rem;
  margin-right: 1rem;
}
.w-post .date {
  font-size: 1.8rem;
  letter-spacing: 0.2em;
  font-weight: 700;
  align-items: center;
  margin-bottom: 3rem;
  gap: 1rem;
}
.w-post .date img {
  margin: 0;
}
.w-post .more-btn a {
  margin: 0 auto;
}
.w-post .more-btn.back a::after {
  content: "";
  background: url(../images/workation/common/arrow.webp)no-repeat center center/contain;
  width: 0.9rem;
  height: 1.3rem;
  position: absolute;
  top: 50%;
  right: inherit;
  left: 4rem;
  transform: translateY(-50%) rotate(180deg);
  font-weight: 700;
  transition: 0.5s;
}
.w-post .more-btn.back:hover a::after {
  left: 2rem;
}
.w-post article .catch-img img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.w-single article {
  margin-bottom: 20rem;
}
/* ====================================================================
-------------------------------tour-single
==================================================================== */
.w-mv {
  position: relative;
  margin-bottom: 2rem;
}
.w-mv .ttl-area {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.w-mv .ttl-area .sub {
  font-size: 7.2rem;
  font-weight: 700;
  letter-spacing: 0.075em;
  line-height: 1;
  margin-bottom: 1rem;
  text-align: center;
}
.w-mv .ttl-area .ttl {
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 0.2em;
}
.atc-ttl {
  font-size: 2.8rem;
  letter-spacing: 0.2em;
  line-height: 1.4;
  font-weight: 700;
  margin-bottom: 5rem;
}
.single-tour .contents3Wrap {
  gap: 2rem;
  margin-top: 2rem;
}
.single-tour article h3 {
  color: var(--mainColor);
  font-size: 2.8rem;
  letter-spacing: 0.2em;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--baseColor);
  font-weight: 700;
  margin: 6rem 0 2rem;
}
.single-tour article h4 {
  font-size: 2.8rem;
  letter-spacing: 0.2em;
  font-weight: 700;
  margin: 4rem 0 2rem;
}
.single-tour article td {
  border: none;
  padding: 1.5em;
  font-size: 1.8rem;
  font-weight: 700;
}
.single-tour article .tour-cont td:first-child {
  position: relative;
  width: 12%;
}
.single-tour article .tour-cont td:first-child::after {
  content: "";
  width: 1px;
  background: var(--baseColor);
  display: inline-block;
  position: absolute;
  height: calc(100% - 3em);
  top: 50%;
  transform: translateY(-50%);
  right: 0;
}
.single-tour article tr:nth-child(odd) {
  background: var(--subColor);
}
.single-tour article table {
  width: 100%;
  margin-bottom: 4rem;
}
.single-tour article .wp-block-button__link {
  color: var(--colorW);
  background-color: var(--mainColor);
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  padding: 2rem;
  line-height: 1;
  width: 100%;
  text-align: center;
  display: block;
  border-radius: 5rem;
  position: relative;
}
.single-tour article .wp-block-button__link::after {
  content: "";
  background: url(../images/workation/common/arrow.webp)no-repeat center center/contain;
  width: 0.9rem;
  height: 1.3rem;
  position: absolute;
  top: 50%;
  right: 4rem;
  transform: translateY(-50%);
  font-weight: 700;
  transition: 0.5s;
}
.single-tour article .wp-block-buttons > .wp-block-button {
  width: 35rem;
}
.single-tour article .wp-block-button__link:hover {
  opacity: 1;
}
.single-tour article .wp-block-button__link:hover::after {
  right: 3rem;
}
.wp-block-buttons > .wp-block-button {
  width: 80%;
}
.single-tour article .overview {
  margin-bottom: 3rem;
}
/* ====================================================================
-------------------------------info-single
==================================================================== */
.single-winfo .catch-img {
  margin-bottom: 3rem;
}
.single-winfo .winfo-cont {
  font-size: 1.8rem;
  letter-spacing: 0.2em;
  line-height: 2;
}
/* ====================================================================
-------------------------------info-archive
==================================================================== */
.archive-winfo .contents3Wrap {
  gap: 4rem;
  margin-bottom: 15rem;
}
.archive-winfo .catch-img {
  margin-bottom: 1rem;
}
/*.archive-winfo .date {
  margin-bottom: 3rem;
}*/
.archive-winfo .catch-img {
  aspect-ratio: 16 /9;
  overflow: hidden;
}
.archive-winfo .catch-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition: 0.5s;
}
.archive-winfo .box a:hover figure img {
  transform: scale(1.1);
  transition: 1s;
}
.archive-winfo .atc-ttl {
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  line-height: 1.75;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  min-height: 5.6rem;
  margin-bottom: 2.5rem;
}
.archive-winfo .box {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
}
.archive-winfo .box .more-btn {
  margin-top: auto;
}
.archive-winfo .date img {
  margin-bottom: 0;
}
.archive-winfo .date {
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  margin-bottom: 0;
}
/* ====================================================================
-------------------------------privacy-policy
==================================================================== */
.privacy-policy h2 {
  font-weight: 700;
  margin-bottom: 1rem;
  font-size: clamp(2rem, 1.879rem + 0.324vw, 2.5rem);
}
.privacy-policy h2 + p, .privacy-policy h2 + p + p {
  margin-bottom: 3rem;
}
@media screen and (min-width:1920px) {
  .mv .bg img {
    width: 100%;
  }
}
@media screen and (max-width:1680px) {
  .workation .mv .mv-pickup {
    width: 35rem;
  }
  .workation .mv .mv-pickup .pickup-inner .textArea .more-btn {
    margin-left: 1rem;
  }
  .mv h2 img {
    max-width: 25%;
  }
}
@media screen and (max-width: 1536px) {
  .workation .mv .mv-pickup {
    width: 32rem;
  }
  .workation .sec02 ul {
    width: 98%;
  }
}
@media screen and (max-width: 1440px) {
  .workation .mv .mv-pickup {
    width: 30rem;
  }
}
@media screen and (max-width: 1368px) {
  .workation .mv .mv-pickup {
    left: 3vw;
    bottom: 12rem;
  }
}
@media screen and (max-width: 1280px) {
  .workation .mv .mv-pickup {
    width: 29rem;
  }
  .workation .sec02 ul {
    width: 90%;
    margin: 10rem auto 0;
  }
}
@media screen and (max-width: 559px) {
  /*-----------------------

         common          

-----------------------*/
  body {
    font-size: 1.4rem;
    letter-spacing: 0.1em;
  }
  .sec-sub-ttl {
    font-size: 2.6rem;
  }
  .sec-ttl {
    font-size: 2.6rem;
    letter-spacing: 0.1em;
  }
  .contents2Wrap {
    gap: 4rem 0;
    grid-template-columns: repeat(1, 1fr);
  }
  .contents3Wrap {
    gap: 2rem;
    grid-template-columns: repeat(2, 1fr);
  }
  .sec {
    padding: 6rem 0;
  }
  .more-btn a {
    font-size: 1.4rem;
  }
  /*-----------------------

         header          

-----------------------*/
  header.w-page .logo {
    width: 24rem;
    padding-left: 1rem;
  }
  header.w-page .logo img {
    width: 100%;
  }
  header.w-page .drawer--right .drawer-hamburger, header.w-page .drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
    right: 0;
    top: 0;
  }
  .drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
    background: var(--mainColor);
    z-index: 9999;
  }
  .drawer--right header.w-page .drawer-nav .logo {
    background-color: transparent;
  }
  .drawer--right .drawer-nav {
    padding: 0;
    background: #F0EDE8 url(../images/workation/common/castle.webp) no-repeat right -6rem bottom -13%/141%;
    z-index: 9998;
  }
  .drawer-menu {
    padding: 5rem 6% 0;
  }
  .drawer--right .drawer-nav li a {
    border-bottom: dashed 1px var(--baseColor);
    font-size: 1.6rem;
    padding: 1.5rem 1rem;
  }
  /*-----------------------

         TOP          

-----------------------*/
  .mv h2 img {
    max-width: 50%;
  }
  .workation .mv .bg::before {
    background: url(../images/workation/top/mv-sakura_sp.webp) no-repeat right top/cover;
  }
  /*ポップアップ*/
  .workation .mv .mv-pickup {
    position: fixed;
    bottom: 5rem;
    right: 0;
    left: inherit;
    display: none;
    box-shadow: 0 0 1rem #ccc;
  }
  .workation .mv .mv-pickup .pickup-inner {
    padding: 1.5rem;
  }
  .workation .mv .mv-pickup .pickup-inner h3 {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
  }
  .workation .mv .mv-pickup .pickup-inner figure {
    width: 40%;
  }
  .workation .mv .mv-pickup .pickup-inner .textArea {
    width: calc(100% - 1rem - 40%);
  }
  .workation .mv .mv-pickup .pickup-inner .textArea p {
    font-size: 1.2rem;
  }
  .workation .mv .mv-pickup .pickup-inner .textArea .more-btn {
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    padding: 0.2rem 2rem;
    display: block;
  }
  .workation .mv .mv-pickup .pickup-inner button {
    border-radius: 50%;
    width: 2.5rem;
    height: 2.5rem;
    background: var(--mainColor);
    color: #fff;
    border: none;
    padding: 0;
    letter-spacing: 0;
    line-height: 1;
    position: absolute;
    right: 2rem;
    top: 1rem;
    font-size: 2.6rem;
  }
  /*//ポップアップ*/
  .workation .mv h2 + p {
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .sakura li {
    width: 1.2rem;
  }
  .workation .contentsWrap {
    padding: 4rem 3rem 6rem;
    margin: -2.5rem auto 0;
    width: 100%;
  }
  .workation .sec01 .sec-ttl {
    font-size: 2.6rem;
    letter-spacing: 0.1em;
  }
  .workation .sec01 h3, .workation .sec05 h3 {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin: 2rem 0 2rem;
  }
  .workation .contentsWrap p.map {
    position: static;
    width: 65%;
    margin: 3rem auto 0;
  }
  .workation .sec02 {
    margin-top: 20rem;
    padding-top: 5rem;
  }
  .workation .sec02::before {
    background: url(../images/workation/top/sec02-top-img_sp.webp) no-repeat center center/cover;
    height: 16rem;
    top: -16rem;
  }
  .workation .sec02 h2, .workation .sec10 h2 {
    font-size: 2.6rem;
    letter-spacing: 0.1em;
    margin-top: 0.5rem;
    line-height: 1.35;
  }
  .workation .sec02 h3 {
    font-size: 2rem;
    letter-spacing: 0.1em;
    margin-bottom: 1.5rem;
  }
  .workation .sec02 ul {
    margin: 5rem auto 0;
    grid-template-columns: 1fr;
    width: 70%;
  }
  .workation .sec02 ul li .number {
    font-size: 2.4rem;
    text-indent: 0;
    margin-bottom: 4rem;
  }
  .workation .sec02 ul li .number span {
    font-size: 200%;
  }
  .workation .sec02 ul li .number::after {
    bottom: -1.5rem;
  }
  .workation .sec02 ul li::after {
    right: -1.5rem;
    bottom: -1.5rem;
  }
  .workation .sec02 ul li .list-ttl {
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    margin-bottom: 0.5rem;
  }
  .workation .textArea p {
    font-size: 1.4rem;
    letter-spacing: 0.1em;
  }
  .workation .sec03 .movie {
    margin: 3rem 0;
  }
  .workation .sec03 .textArea p {
    text-align: left;
  }
  .workation .sec03 .textArea p:not(:last-child) {
    margin-bottom: 1.5em;
  }
  .workation .sec03 .sec-ttl, .workation .sec04 .sec-ttl, .workation .sec06 .sec-ttl {
    margin-top: 0;
  }
  .workation .sec03::after {
    background: url(../images/workation/top/sec02-bottom-img_sp.webp) no-repeat center center/cover;
    height: 3.7rem;
    bottom: -2.9rem;
  }
  .workation .sec03 .movie video {
    margin-top: 0;
  }
  .workation .sec04 {
    margin-top: 4rem;
  }
  .tour .contents3Wrap {
    margin: 4rem 0;
  }
  .tour .contents3Wrap .more-btn {
    display: block;
  }
  .tour .contents3Wrap .more-btn a {
    width: 100%
  }
  .tour figure.end::after {
    font-size: 1.4rem;
  }
  .tour p.message {
    font-size: 1.2rem;
    margin-bottom: 0.5rem;
  }
  .tour .box .flex.date img {
    width: 2rem;
  }
  .tour .box h3 {
    font-size: 1.4rem;
    letter-spacing: 0.1em;
  }
  .tour .box .flex.date {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
  }
  .tour .box .flex.date .flex {
    align-items: center;
    gap: 1rem;
  }
  .tour .box .flex.date p {
    line-height: 1.75;
  }
  .workation .sec06 {
    margin-top: 20rem;
  }
  .workation .sec06::before {
    background: url(../images/workation/top/sec05-top-img_sp.webp) no-repeat left center/cover;
    height: 15rem;
    top: -14rem;
  }
  .workation .sec06 .contents2Wrap {
    margin-top: 4rem;
  }
  .workation .sec06 ul li .photoWrap .number {
    top: -2rem;
    font-size: 6rem;
  }
  .workation .sec07 {
    padding-top: 0;
  }
  .workation .card .box.ttl {
    padding: 1rem;
  }
  .workation .card .box .sec-ttl {
    font-size: 2.6rem;
  }
  .workation .card .box .sec-ttl span {
    font-size: 1.2rem;
  }
  .workation .card .box .hdr {
    letter-spacing: 0.1em;
    padding: 0.5rem 1rem;
    font-size: 1.2rem;
    padding-left: 2em;
    text-indent: -1.5em;
    line-height: 1.5;
  }
  .workation .sec10 {
    margin-top: 12rem;
  }
  .workation .sec09::after {
    background: url(../images/workation/top/sec09-bottom-img_sp.webp) no-repeat right center/cover;
    height: 14rem;
    bottom: -9rem;
  }
  .workation .workation-news .news-Wrap {
    gap: 4rem;
    align-items: flex-start;
    flex-direction: column;
  }
  .workation .workation-news .news-Wrap .flexL, .workation .workation-news .news-Wrap .flexR {
    width: 100%;
  }
  .workation .workation-news .news-Wrap .flexL .sec-sub-ttl {
    line-height: 2;
    margin-bottom: 1rem;
  }
  .workation .workation-news p.date img {
    width: 2rem;
    margin-right: 1rem;
  }
  .workation .workation-news .news-ttl {
    font-size: 1.6rem;
  }
  .workation .workation-news .news-Wrap .flexR ul + .text-r {
    text-align: center;
  }
  /*-----------------------

         お問い合わせ          

-----------------------*/
  .w-inquiry tr, .w-inquiry th, .w-inquiry td {
    display: block;
    width: 100%;
  }
  .w-inquiry th, .w-inquiry td {
    padding: 1rem;
  }
  .w-inquiry th {
    padding-bottom: 0.5rem;
    font-size: 1.4rem;
  }
  .w-inquiry th span.red {
    font-size: 1.2rem;
  }
  .w-inquiry td {
    padding-top: 0.5rem;
  }
  .w-inquiry td .doui {
    padding: 1.5rem 2rem;
    font-size: 1.4rem;
    letter-spacing: 0.1em;
  }
  .w-inquiry .doui .mwform-checkbox-field label {
    font-size: 1.6rem;
  }
  /*エラー*/
  .mw_wp_form .error {
    font-size: 1.4rem;
    letter-spacing: 0.1em;
  }
  /*確認*/
  .page-template-page-workation-inquiry-error .send-message, .page-template-page-workation-inquiry-confirmation .send-message {
    letter-spacing: 0.1em;
    text-align: left;
    line-height: 1.5;
  }
  .page-template-page-workation-inquiry-confirmation .send {
    flex-direction: column;
    gap: 0;
  }
  .page-template-page-workation-inquiry-confirmation .w-inquiry .more-btn {
    margin: 4rem auto 0;
  }
  /*完了*/
  .page-template-page-workation-inquiry-thanks h2 {
    font-size: 2.6rem;
  }
  .page-template-page-workation-inquiry-thanks .thanks {
    font-size: 1.4rem;
  }
  /*-----------------------

      下層ページcommon          

-----------------------*/
  .w-mv .ttl-area .sub {
    font-size: 4rem;
  }
}