@charset "UTF-8";

/*--------------------------------
全体レイアウト
--------------------------------*/
body {
  background-color: #fff;
  color: #333;
  font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic",
  "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo,
  "MS Pゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-weight: normal;
  height: 100%;
  letter-spacing: normal;
  letter-spacing: .1em;
  line-height: 1;
  line-height: 28px;
  overflow-x: hidden;
  position: relative;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  width: 100%;
}
*,
*:before,
*:after {
  background-repeat: no-repeat;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
ul,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}
li > ul,
li > ol {
  margin: 0;
  padding: 0;
}
a {
  color: inherit;
  display: inline-block;
  text-decoration: none;
  transition: all .3s;
}
a:hover {
  cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal;
  letter-spacing: normal;
  line-height: 1;
  margin: 0;
  padding: 0;
}
img {
  display: block;
  height: auto;
  max-height: 100%;
  max-width: 100%;
  vertical-align: top;
  width: 100%;
}

#wrapper {
  margin: 0 auto;
  overflow-x: hidden;
  width: 100%;
}

.sec_header {
  margin: 0 auto;
  position: fixed;
  z-index: 10;
}

.page-template-reserve_complete .sec_header,
.page-template-contact_complete .sec_header {
  display: none;
}

.sec_header-flex {
  align-items: center;
  display: flex;
  height: 66px;
  justify-content: space-between;
  position: relative;
  position: fixed;
  width: 100%;
}

.sec_header-flex2 {
  align-items: center;
  display: flex;
  gap: 20px;
  height: 66px;
}

.hamburger-menu {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: none;
  cursor: pointer;
  height: 50px;
  padding: 0;
  position: relative;
  width: 50px;
}
.hamburger-menu img {
  margin-top: 14px;
}
.hamburger-menu__bar {
  background: #242424;
  display: inline-block;
  height: 2px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  transition: .5s;
  width: 44%;
}
.hamburger-menu__bar:first-child {
  top: 16px;
}
.hamburger-menu__bar:nth-child(2) {
  top: 24px;
}
.hamburger-menu__bar:last-child {
  top: 32px;
}
.hamburger-menu--open .hamburger-menu__bar {
  top: 53%;
}
.hamburger-menu--open .hamburger-menu__bar:nth-child(3) {
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.hamburger-menu--open .hamburger-menu__bar:last-child {
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}
.hamburger-menu--open .hamburger-menu__bar:nth-child(4) {
  display: none;
}
.sec_header-flexleft {
  margin-left: 0;
  margin-top: 8px;
  width: 81px;
}
.navigation {
  display: none;
  font-family: "Shippori Mincho B1", "游ゴシック体", "游ゴシック", "YuGothic",
  "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ",
  Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  position: fixed;
  top: 68px;
  width: 100%;
  z-index: 9999;
}
.navigation__list {
  display: flex;
  flex-wrap: wrap;
  gap: 1px;
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
}
.navigation__list .navigation__list-item:nth-child(1) {
  width: 100%;
}
.navigation__list-item {
  width: calc((100% - 1px) / 2);
}
.navigation__list-item:first-child {
  border-top: solid 1px #474747;
}
.navigation__link {
  background-color: rgba(255, 255, 255, .8);
  color: #000;
  display: block;
  font-weight: 700;
  height: 59px;
  padding: 15px 0;
  text-decoration: none;
  transition: .5s;
}
.navigation__list .navigation__list-item:nth-child(1) .navigation__link {
  background-color: rgba(0, 0, 0, .6);
  color: #fff;
}
.hamburger-menu--open img {
  opacity: 0;
}
.hamburger-menu span {
  opacity: 0;
}
.hamburger-menu.hamburger-menu--open span {
  opacity: 1;
}

.sec_top {
  position: relative;
}

.sec_top .a-box {
  bottom: -20px;
  bottom: -20px;
  left: 50%;
  position: absolute;
  transform: translateY(-50%) translateX(-50%);
}

.a-box span {
  display: block;
  margin-left: 10px;
  padding-left: 10px;
  position: relative;
}

.a-box span:before {
  background-image: url(../img/icon.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 16px;
  left: -24px;
  position: absolute;
  top: 6px;
  width: 23px;
}

.top_title {
  color: #fff;
  font-family: "Shippori Mincho B1", sans-serif;
  left: 15%;
  position: absolute;
  top: 11%;
}

.top_title.black {
  color: #333;
}

.top_title h1 {
  font-size: 20px;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 25.96px;
}

.top_title h1 span {
  font-size: 36px;
  letter-spacing: .2em;
  line-height: 42.13px;
}

.top_title .text_translation {
  font-size: 9px;
  margin-top: 0;
}

.normal_p {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 30px;
  text-align: center;
}

.sec_aoba {
  margin-top: 19px;
}

.sec_aoba .normal_p {
  margin-bottom: 30px;
  padding: 0 18px;
}

.sec_aoba h3 {
  background-color: #f4efea;
  color: #333;
  font-family: "Shippori Mincho B1", sans-serif;
  font-size: 19px;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 27.51px;
  margin-bottom: 24px;
  padding: 18px 0;
  text-align: center;
}

.sec_aoba-img {
  margin: 24px auto 19px;
  width: 95%;
}

.sec_aoba .normal_p {
  text-align: center;
}

.sec_youtube iframe {
  aspect-ratio: 16 / 9;
  display: block;
  height: 100%;
  margin: 24px auto;
  width: 95%;
}

.sec_we h2 {
  font-family: "Shippori Mincho B1", sans-serif;
  font-size: 20px;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 28.96px;
  margin: 56px auto 30px;
  text-align: center;
}

.we_block {
  height: 300px;
  margin-bottom: 42px;
  position: relative;
}

.we_img1 {
  left: 0;
  position: absolute;
  top: 0;
  width: 30%;
}

.we_img2 {
  bottom: 0;
  position: absolute;
  right: 0;
  width: 30%;
}

.we_text-box {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
}

.we_text-inner {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 30px;
  text-align: center;
  width: 100%;
}
.we_block2 {
  margin: 0 auto;
  width: 95%;
}

.we_block2 .we_block2-box h3 {
  font-family: "Shippori Mincho B1", sans-serif;
  font-size: 21px;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 30.41px;
  text-align: right;
}

.we_block2 .we_block2-box h3 span {
  display: block;
  font-family: "EB Garamond";
  font-size: 26px;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 33.93px;
  margin-bottom: 14px;
  padding-right: 100px;
  position: relative;
  text-align: right;
}

.we_block2 .we_block2-box h3 span:after {
  background-color: #000;
  content: "";
  height: 1px;
  position: absolute;
  right: 0;
  top: 16px;
  width: 100px;
}

.we_block2 .we_block2-box:nth-child(even) h3 span {
  padding-left: 100px;
  padding-right: 0;
  text-align: left;
}

.we_block2 .we_block2-box:nth-child(even) h3 span:after {
  left: 0;
  right: auto;
}

.we_block2 .we_block2-box:nth-child(even) h3 {
  text-align: left;
}

.we_block2 .we_block2-box:nth-child(even) .we_block2-flex {
  flex-direction: row-reverse;
}

.we_block2-flex {
  display: flex;
  gap: 10px;
  margin-bottom: 51px;
  margin-top: 30px;
}

.we_block2-flexbox {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: calc(50% - 5px);
}

.we_block2-flexbox .normal_p {
  font-size: 9px;
  line-height: 12px;
  text-align: left;
}

.title_back {
  color: #fff;
  font-family: "Share", sans-serif;
  font-size: 109px;
  font-weight: 400;
  letter-spacing: -.01em;
  line-height: 88px;
  position: relative;
  text-align: center;
  -webkit-text-stroke: 1px rgba(0, 0, 0, .1);
          text-stroke: 1px rgba(0, 0, 0, .1);
}

.sec_plan .title_back_plan {
  letter-spacing: .04em;
  line-height: 80px;
}

.title_back h2 {
  color: #333;
  font-family: "Shippori Mincho B1", sans-serif;
  font-size: 23px;
  font-weight: 400;
  left: 50%;
  letter-spacing: -.02em;
  line-height: 33.3px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  width: 100%;
}

.sec_aoba .a-box a {
  margin: 0 auto;
}

.a-box a {
  -moz-align-items: center;
   -ms-align-items: center;
       align-items: center;
  background: #fff;
  border: solid 1px #333;
  color: #333;
  display: flex;
  font-family: "Shippori Mincho B1", "游ゴシック体", "游ゴシック", "YuGothic",
  "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ",
  Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  height: 56px;
  -moz-justify-content: center;
   -ms-justify-content: center;
       justify-content: center;
  letter-spacing: .1em;
  line-height: 22px;
  position: relative;
  text-align: center;
  width: 280px;
}

.a-box a:before {
  background: #333;
  content: "";
  height: 1px;
  position: absolute;
  right: 0;
  top: 50%;
  transition: all .3s;
  width: 30px;
}

.a-box2 a {
  -moz-align-items: center;
   -ms-align-items: center;
       align-items: center;
  background: #333;
  border: solid 1px #333;
  color: #fff;
  display: flex;
  font-family: "Shippori Mincho B1", "游ゴシック体", "游ゴシック", "YuGothic",
  "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ",
  Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  height: 56px;
  -moz-justify-content: center;
   -ms-justify-content: center;
       justify-content: center;
  letter-spacing: .1em;
  line-height: 22px;
  margin: 0 auto;
  position: relative;
  text-align: center;
  width: 280px;
}

.a-box2 a:before {
  background: #fff;
  content: "";
  height: 1px;
  position: absolute;
  right: 0;
  top: 50%;
  transition: all .3s;
  width: 30px;
}

.sec_header .a-box2 a {
  height: 44px;
  width: 163px;
}

.link_flex {
  display: flex;
  gap: 20px;
  justify-content: center;
  margin: 20px auto 80px;
}

.sec_gal-img_block {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  justify-content: center;
  margin: 0 auto 20px;
  width: 95%;
}
.sec_gal-img {
  width: calc((100% - 5px) / 2);
}
.sec_gal-img img {
  aspect-ratio: 4 / 3;
  -o-object-fit: cover;
     object-fit: cover;
}
.gal_img img {
  aspect-ratio: 4 / 3;
  -o-object-fit: cover;
     object-fit: cover;
}

.mb1 {
  margin-bottom: 68px;
}

.mb2 {
  margin-bottom: 67px;
}

.mb3 {
  margin-bottom: 104px;
}

.mb4 {
  margin-bottom: 36px;
}

.sec_plan-block {
  margin-bottom: 4px;
  position: relative;
}
.sec_plan-block img {
  margin: 0 auto;
  width: 92%;
}
.sec_plan-block_inner {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  width: 100%;
}
.sec_plan-block_inner p {
  background-color: rgba(255, 255, 255, .7);
  border: 1px solid rgba(0, 0, 0, .1);
  font-size: 12px;
  letter-spacing: .1em;
  line-height: 20px;
  margin: 0 auto;
  padding: 10px;
  text-align: center;
  width: -webkit-fit-content;
  width:    -moz-fit-content;
  width:         fit-content;
}
.sec_pro {
  overflow-x: hidden;
}
.sec_pro .title_back {
  margin-left: -2%;
}
.sec_pro .title_back h2 {
  margin-left: 2%;
}
.sec_pro-block_img {
  margin: 0 auto 10px;
  width: 95%;
}
.sec_pro-block_text .normal_p {
  font-size: 12px;
  line-height: 20px;
  margin: 0 auto 20px;
  text-align: left;
  width: 95%;
}
.sec_acc-map {
  height: 198px;
  margin: 0 auto 20px;
  width: 95%;
}
.sec_acc-map iframe {
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
  height: 100%;
  width: 100%;
}
.ec_acc-text .normal_p {
  font-size: 12px;
  line-height: 20px;
  margin-bottom: 26px;
}
.title_js {
  color: #8e8e8e;
  display: inline-block;
  font-size: 16px;
  font-weight: normal;
  letter-spacing: .1em;
  line-height: 20px;
  overflow: hidden;
  padding: 25px 10px 10px 10px;
  position: relative;
}
.title_js:before {
  background-color: #8e8e8e;
  bottom: 0;
  content: "";
  height: 1px;
  left: -100%;
  position: absolute;
  transition: .4s;
  width: 100%;
}
.title_js span {
  display: inline-block;
  margin-left: -100%;
  transition: .4s;
  transition-delay: .4s;
}
.title_js.scroll-in::before {
  left: 0;
}
.title_js.scroll-in span {
  margin-left: 0;
}
.sec_contact .title_back {
  letter-spacing: .03em;
}
.sec_contact-stepblock {
  align-items: center;
  display: flex;
  gap: 20px;
  justify-content: center;
  margin: 8px auto;
  position: relative;
}
.sec_contact-stepblock:after {
  background-color: #e5e5e5;
  content: "";
  height: 1px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  width: 135px;
  z-index: -1;
}
.sec_contact-stepbox {
  background-color: #e5e5e5;
  color: #fff;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 10px;
  line-height: 16px;
  padding: 10px;
  text-align: center;
}

.sec_contact-stepbox span {
  font-size: 9px;
}

.sec_contact-stepbox.black {
  background-color: #000;
}

.contact_label {
  background-color: #e5e5e5;
  border-top: 1px solid #c7c7c7;
  font-size: 14px;
  line-height: 20px;
  padding: 15px;
}
.contact_label {
  font-size: 16px;
}
.contact_label .contact_required {
  background-color: #000;
  color: #fff;
  display: inline-block;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 10px;
  margin-bottom: 0;
  margin-right: 10px;
  padding: 5px 8px;
}
.contact_label .contact_required.contact_required2 {
  background-color: #fff;
  color: #000;
}
.contact_label2 span {
  font-size: 16px;
  letter-spacing: .1em;
  line-height: 28px;
}
.txt-note {
  color: #a2a2a2;
  font-size: 12px;
}
.contact_box label {
  align-items: center;
  display: flex;
  line-height: 30px;
}
.contact_box label span {
  display: block;
  font-size: 12px;
  margin-left: 10px;
}
.contact_box {
  margin: 0 auto;
  padding: 20px 0;
  width: 95%;
}

.contact_box input {
  border: 1px solid #ccc;
  font-size: 16px;
  line-height: 19px;
  padding: 4px;
  width: 100%;
}

.contact_box label input {
  width: auto;
}

.contact_box textarea {
  border: 1px solid #ccc;
  height: 180px;
  padding: 10px;
  width: 100%;
}
.contact_text {
  color: #666;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 10px;
  margin-bottom: 15px;
}
.contact_text span {
  color: #b4b4b4;
  font-size: 10px;
}
.contact_inner .text-small {
  display: block;
  font-size: 10px;
  margin-left: 51px;
  margin-top: 0;
}
.contact_notice {
  border-top: 1px solid #ccc;
  padding-top: 20px;
}
.contact_notice p,
.contact_notice2 p {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 18px;
  margin: 0 auto;
  width: 95%;
}
.contact_inner p a {
  color: #979797;
  text-decoration: underline;
}
p.text_fwb {
  font-weight: normal;
}
.contact_label2 {
  align-items: center;
  background-color: #fff;
  border-bottom: 1px solid #b9b9b9;
  border-top: 0;
  display: flex;
  font-size: 14px;
  justify-content: center;
  margin: 20px auto;
  text-align: center;
  width: 80%;
}

.contact_label2 input {
  border-radius: 0;
  height: 20px;
  margin-right: 10px;
  width: 20px;
}

.contact_submit {
  -moz-align-items: center;
   -ms-align-items: center;
       align-items: center;
  background: #333;
  border: solid 1px #333;
  color: #fff;
  display: flex;
  font-family: "Shippori Mincho B1", "游ゴシック体", "游ゴシック", "YuGothic",
  "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ",
  Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  height: 56px;
  -moz-justify-content: center;
   -ms-justify-content: center;
       justify-content: center;
  letter-spacing: .1em;
  line-height: 22px;
  margin: 0 auto 40px;
  position: relative;
  text-align: center;
  transition: all .3s;
  width: 280px;
}

.contact_submit:before {
  background: #fff;
  content: "";
  height: 1px;
  position: absolute;
  right: 0;
  top: 50%;
  transition: all .3s;
  width: 30px;
}

.contact_label2 .contact_required {
  margin-left: 5px;
  margin-right: 0;
}

.contact_notice2 p {
  margin-bottom: 80px;
}

.sec_tel {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: .1em;
  margin-bottom: 60px;
  text-align: center;
}
.sec_tel p {
  font-size: 20px;
  margin-bottom: 20px;
}
.sec_footer {
  text-align: center;
}
.sec_footer p {
  font-size: 10px;
  font-weight: 400;
  letter-spacing: .18em;
  line-height: 14.48px;
  margin-bottom: 10px;
}
.top_title_box {
  border: 1px solid #fff;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 500;
  padding: 10px;
  text-align: center;
}
.top_title.black .top_title_box {
  background-color: rgba(255, 255, 255, .7);
  border: 1px solid #333;
}
.top_title_box p {
  letter-spacing: 0;
  line-height: 1rem;
}
.contact_submit button {
  height: 59px;
  width: 100%;
}
.other_page #wrapper {
  padding-top: 67px;
}
.other_page .title_back {
  font-size: 72px;
  line-height: 81.14px;
  margin-bottom: 45px;
  padding-bottom: 30px;
  padding-top: 30px;
}
.other_page .title_back h2 {
  top: 57%;
}
.gal_block {
  margin: 0 auto;
  width: 90%;
}
.gal_subtitle {
  display: none;
  font-size: 18px;
  font-weight: 400;
  line-height: 26.06px;
  margin-bottom: 20px;
}
.gal_com {
  border-bottom: 1px solid #d8d8d8;
  color: #d8d8d8;
  font-size: 15px;
  line-height: 16.91px;
}
.gal_text {
  color: #333;
  font-size: 12px;
  line-height: 17.38px;
  margin-bottom: 43px;
}
.title_back h2 {
  font-size: 20px;
  line-height: 28.96px;
}

.footer_block {
  background-image: url(../img/gallery/gallery04.jpg);
  background-position: center center;
  background-size: cover;
  padding: 24px 0;
  position: relative;
  z-index: -2;
}

.footer_block::before {
  background-color: rgba(0, 0, 0, .4);
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}

.footer_block .a-box2 a {
  background: #fff;
  color: #333;
}

.footer_block .a-box2 a:before {
  background: #333;
}

.footer_block .sec_tel_img {
  margin: 0 auto;
  width: 67%;
}

.acc_block {
  margin: 0 auto;
  width: 90%;
}

.acc_subtitle {
  font-family: "Shippori Mincho B1", "游ゴシック体", "游ゴシック", "YuGothic",
  "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ",
  Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 26.06px;
  margin-bottom: 26px;
}
.acc_img {
  margin-bottom: 39px;
}

.other_page .sec_acc-map {
  margin: 0 auto 30px;
  width: 100%;
}
.acc_text_1 {
  font-size: 13px;
  font-weight: 400;
  line-height: 18.82px;
  margin-bottom: 33px;
}
.acc_text_2 {
  color: #8e8e8e;
  font-size: 10px;
  font-weight: 400;
  line-height: 14.48px;
}
.acc_text_3 {
  font-size: 12px;
  font-weight: 400;
  line-height: 17.38px;
}
.acc_text_3 span {
  font-size: 10px;
  line-height: 14.48px;
}
.acc_text_4 {
  font-size: 9px;
  line-height: 13.03px;
  padding-bottom: 46px;
}
.hr_grey {
  border: 1px solid #d8d8d8;
  margin: 8px auto;
}
.hr_grey2 {
  border: 1px dotted #d8d8d8;
  margin: 8px auto;
}
.footer_block p {
  color: #fff;
  font-size: 18px;
  line-height: 26.06px;
  margin-bottom: 8px;
  text-align: center;
}
.footer_block .a-box {
  margin-bottom: 40px;
}
.other_page .sec_footer {
  margin-top: 40px;
}
.other_page .sec_header-flex {
  background-color: #fff;
  box-shadow: 0 0 12px rgb(103 103 103 / 40%);
}
.other_page .sec_propetry .acc_block {
  margin: 0 auto 0;
  padding-bottom: 60px;
}
.title_border-block {
  align-items: center;
  display: flex;
  margin-bottom: 20px;
  margin-top: 60px;
}
.title_boeder-text {
  font-size: 26px;
  min-width: 100px;
  width: -webkit-fit-content;
  width:    -moz-fit-content;
  width:         fit-content;
}
.title_boeder-text2 {
  font-size: 26px;
  min-width: 240px;
  width: -webkit-fit-content;
  width:    -moz-fit-content;
  width:         fit-content;
}
.title_boeder-width {
  background-color: #333;
  height: 1px;
  width: 100%;
}
.plan_img {
  margin: 0 auto;
  max-width: 480px;
  width: 90%;
}
.other_page .sec_plan {
  padding-bottom: 60px;
}

.contact_complite .sec_contact-stepblock {
  margin-bottom: 20px;
  margin-top: 40px;
}
.contact_complite p {
  line-height: 1.8rem;
  text-align: center;
}
.contact_complite p a {
  text-decoration: underline;
}
.contact_complite .sec_footer {
  margin-top: 40px;
}
.contact_page .sec_contact {
  padding-top: 60px;
}
.contact_flex {
  display: flex;
  font-size: 16px;
  justify-content: center;
}
.visitors_flex {
  font-size: 16px;
}
.contact_flex_text {
  margin-right: 10px;
}
.check_form textarea,
.check_form select {
  padding: 8px 32px 8px 14px;
}
.desired__item input[type="text"],
.desired__item select {
  background: transparent;
  background-image: url(../img/icon_day.svg);
  background-position: right 14px center;
  background-repeat: no-repeat;
  background-size: 5px auto;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #333;
  letter-spacing: .08em;
  line-height: 19px;
  margin: 0;
  padding: 8px 32px 8px 14px;
}
.visitors_flex select {
  background: transparent;
  background-image: url(../img/icon_day.svg);
  background-position: right 14px center;
  background-repeat: no-repeat;
  background-size: 5px auto;
  border-radius: 4px;
  color: #747474;
  letter-spacing: .08em;
  padding: 8px 24px 8px 14px;
}
.check_form textarea,
.check_form select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #cbcbcb;
  border-radius: 0;
  font-size: 12px;
  letter-spacing: .08em;
}
.desired__item {
  display: flex;
}
.desired__item span {
  width: 54px;
}
.formError .formErrorContent {
  background: #252525;
  border-radius: 3px;
  -ms-box-shadow: 0 0 6px #888;
   -o-box-shadow: 0 0 6px #888;
      box-shadow: 0 0 6px #888;
  color: #fff;
  font-family: "Lucida Sans Unicode", "Lucida Grande", Arial, Helvetica,
  "ヒラギノ丸ゴ Pro W4", HiraMaruPro-W4, "ヒラギノ角ゴ Pro W3", "メイリオ",
  Meiryo, Osaka, sans-serif;
  font-size: 11px;
  font-size: 1.1rem;
  margin: 0 0;
  padding: 6px 10px;
  position: relative;
  width: 240px;
  z-index: 1;
}
.check_form .desired__item input[type="text"],
.check_form .desired__item select {
  width: 500px;
}
.check_form .desired__item input {
  margin-bottom: 10px;
}
.check_form .desired__item select {
  margin-bottom: 20px;
}
.desired__item input {
  font-size: 12px;
}
.ui-widget.ui-widget-content {
  font-size: 14px;
}
.formError .formErrorArrow {
  bottom: 0;
  height: 15px;
  left: 20px;
  margin: 0 0 0 30px;
  position: absolute;
  width: 15px;
  z-index: 0;
}
.formError .formErrorContent {
  font-size: 11px;
}
.contact_box .visitors_flex:nth-child(1) {
  margin-bottom: 10px;
}
#visitors_time_1 {
  margin-left: 10px;
  width: 500px;
}
#visitors_time_2 {
  margin-left: 10px;
  width: 500px;
}
.visitors_flex {
  align-items: center;
  display: flex;
  justify-content: center;
}
.check_form input.pnone {
  padding: 0;
}
.contact_confilm #formWrap {
  font-size: 16px;
}

.other_page .sec_plan,
.other_page .sec_acc,
.other_page .sec_gal,
.other_page .sec_propetry {
  position: relative;
}

.other_page .sec_plan:before,
.other_page .sec_acc:before,
.other_page .sec_gal:before,
.other_page .sec_propetry:before {
  background: url(../img/bg/bg_01.png) 0 0 repeat;
  background-size: 57px auto;
  bottom: 0;
  content: "";
  height: 300px;
  position: absolute;
  right: 0;
  top: 250px;
  width: calc(100% - 18px);
  width: calc(50% + 150px);
  z-index: -1;
}

.other_page .sec_plan:after {
  background: url(../img/bg/bg_01.png) 0 0 repeat;
  background-size: 57px auto;
  bottom: 0;
  content: "";
  height: 500px;
  left: 0;
  position: absolute;
  top: auto;
  width: calc(100% - 150px);
  z-index: -1;
}

.other_page .sec_acc:after,
.other_page .sec_propetry:after {
  background: url(../img/bg/bg_01.png) 0 0 repeat;
  background-size: 57px auto;
  bottom: 0;
  content: "";
  height: 500px;
  position: absolute;
  right: 0;
  top: auto;
  width: calc(100% - 150px);
  z-index: -1;
}

.bg_event {
  position: relative;
}

.bg_event:before {
  background: #e8e8e8;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transition: all 1s ease;
  width: 0;
}
.bg_event.scroll-in:before {
  width: calc(100% - 90px);
}

.top-aboutus {
  padding: 53px 0 88px;
  position: relative;
}

.top-aboutus .container {
  margin: 0 auto;
  padding: 0 18px;
  position: relative;
  z-index: 2;
}

.top-aboutus__img {
  bottom: 8px;
  position: absolute;
  right: -106px;
  width: 366px;
}

.top-aboutus__deco {
  display: none;
}

.top-aboutus__content .ttl {
  font-family: "Shippori Mincho B1", "游ゴシック体", "游ゴシック", "YuGothic",
  "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ",
  Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-size: 36px;
  letter-spacing: .14em;
  line-height: 58px;
  margin-bottom: 23px;
}

.contact_complite .a-box2.mt4 {
  margin-bottom: 60px;
  margin-top: 20px;
}

.contact_complite .normal_p {
  font-size: 16px;
}

.top-aboutus__content .text {
  margin-bottom: 34px;
}
.top-aboutus__content .text .clip-text {
  text-align: left;
}

.top-aboutus__content .text p {
  font-size: 14px;
  letter-spacing: .1em;
  line-height: 30px;
  margin-bottom: 30px;
  overflow: hidden;
}

.clip-text {
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-background-image: linear-gradient(
  to right,
  #333 40%,
  rgba(0, 0, 0, 0) 60%
  );
          background-image: linear-gradient(to right, #333 40%, rgba(0, 0, 0, 0) 60%);
  background-position: right bottom;
  background-size: 250% 100%;
  color: transparent;
  text-shadow: none;
  transition: all 1.4s;
}

.clip-text.scroll-in {
  background-position: left 0 top -2px;
}

.top-aboutus__content .ttl .number {
  letter-spacing: .1em;
}

.top-aboutus__content .text.scroll-in .clip-text {
  background-position: left 0 top 0;
  font-size: 14px;
  line-height: 30px;
}

.text_day {
  left: 65vw;
  position: absolute;
  top: 16%;
  width: 21%;
}

.sec_contact-banner {
  font-size: 12px;
  margin-bottom: 40px;
  margin-top: 20px;
  text-align: center;
}

.sec_tel_bnr {
  border: 1px solid #000;
  margin: 10px auto;
  width: 90%;
}

.sec_tel_bnr a {
  display: block;
}

.sec_header-flexpc {
  display: flex;
}

.other_page #contact_include .title_back {
  border-top: 1px solid #f4f4f4;
  margin-bottom: 0;
  padding-bottom: 40px;
}
.other_page #contact_include .title_back h2 {
  top: 65%;
}
.other_page #contact_include .sec_contact-banner {
  margin-top: 0;
}
.contact_page .title_back {
  font-size: 85px;
}
@media (hover: hover) and (pointer: fine) {
  .navigation__link:hover {
    background: rgba(0, 0, 0, .6);
    color: #fff;
  }
}

@media screen and (max-width: 768px) {
  #wrapper {
    max-width: 100%;
  }
}
/*--------------------------------
animation
--------------------------------*/
.fade-in,
.fade-in-load,
.fade-in-load2,
.fade-in-load3,
.fade-in-load4,
.fade-in-load5,
.fade-in-load6,
.fade-in-load7 {
  opacity: 0;
  transition-duration: 1000ms;
  transition-property: opacity, transform;
}
.fade-in-up {
  opacity: 0;
  transform: translate(0, 50px);
  transition: all .5s;
}
.fade-in-down {
  opacity: 0;
  transform: translate(0, -50px);
  transition: all .5s;
}
.fade-in-left {
  transform: translate(-50px, 0);
}
.fade-in-right {
  transform: translate(50px, 0);
}
.scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}
.poyoyon {
  -webkit-animation: poyoyon 2s infinite ease-out;
          animation: poyoyon 2s infinite ease-out;
}
@-webkit-keyframes poyoyon {
  0%,
  40%,
  60%,
  80% {
    transform: scale(1);
  }
  50%,
  70% {
    transform: scale(.95);
  }
}
@keyframes poyoyon {
  0%,
  40%,
  60%,
  80% {
    transform: scale(1);
  }
  50%,
  70% {
    transform: scale(.95);
  }
}
@media screen and (max-width: 768px) {
  .sp-display {
    display: block;
  }
  .pc-display {
    display: none;
  }
  .other_page #contact_include .title_back {
    padding-bottom: 20px;
  }
  .other_page #contact_include .title_back h2 {
    top: 58%;
  }
  .sec_header-flex {
    height: 66px;
  }
  .sec_header-flex2 {
    align-items: flex-start;
    gap: 1px;
    margin-right: 14px;
  }
  .sec_header .a-box2 a {
    font-size: 12px;
    height: 43px;
    width: 113px;
  }
  .hamburger-menu {
    margin-right: 5px;
    margin-top: 9px;
  }
  .sec_header .a-box2 a:before {
    display: none;
  }
  .text_day {
    bottom: -9%;
    left: 50%;
    position: absolute;
    top: auto;
    transform: translateY(-50%) translateX(-50%);
    width: 67%;
  }
  .title_js {
    font-size: 14px;
    line-height: 16px;
    padding: 25px 10px 6px 10px;
  }
  .gal_subtitle {
    margin-bottom: 10px;
  }
  .gal_img {
    margin-bottom: 13px;
  }
  .top_title_block {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-top: 6px;
  }
  .top_title_box {
    border-radius: 9px;
    max-width: 151px;
    padding: 4px;
  }
  .top_title .text_translation {
    line-height: 20px;
  }
  .link_flex {
    flex-direction: column;
  }
  .sec_tel_img {
    margin: 0 auto;
    width: 90%;
  }
  .sec_tel p {
    font-size: 14px;
    line-height: 30px;
    margin-bottom: 10px;
  }
  .other_page .sec_header-flexleft {
    margin-top: 7px;
  }
  .other_page .sec_plan:after,
  .other_page .sec_acc:after,
  .other_page .sec_propetry:after {
    height: 400px;
    width: calc(100% - 90px);
  }
  .bg_event.scroll-in:before {
    width: calc(100% - 40px);
  }
  .other_page .sec_plan:before,
  .other_page .sec_acc:before,
  .other_page .sec_gal:before,
  .other_page .sec_propetry:before {
    top: 140px;
  }
  .top-aboutus {
    overflow: hidden;
  }
  .top-aboutus__content .text.scroll-in .clip-text {
    font-size: 14px;
    line-height: 30px;
  }
  .other_page .navigation {
    top: 68px;
  }
  .check_form .desired__item input[type="text"],
  .check_form .desired__item select {
    width: 240px;
  }
  #visitors_time_1 {
    margin-left: 10px;
    width: 240px;
  }
  #visitors_time_2 {
    margin-left: 10px;
    width: 240px;
  }
  .contact_flex {
    align-items: center;
    flex-direction: column;
    font-size: 14px;
  }
  .contact_flex_text {
    margin-bottom: 5px;
    text-align: left;
    width: 275px;
  }
  .desired__item span {
    width: 47px;
  }
  .visitors_flex {
    font-size: 14px;
  }
  .contact_text {
    font-size: 12px;
    margin-bottom: 5px;
  }
  .contact_label2 span {
    font-size: 12px;
  }
  .contact_complite .a-box2.mt4 {
    margin-bottom: 0;
  }
  .footer_block {
    z-index: 2;
  }
}
@media screen and (min-width: 768px) {
  .sp-display {
    display: none;
  }
  .pc-display {
    display: block;
  }
  .sec_header-flexleft {
    margin-left: 0;
    margin-top: 7px;
    width: 202px;
  }
  .top_title h1 {
    font-size: 47px;
    line-height: 68.06px;
  }
  .top_title h1 span {
    font-size: 74px;
    line-height: 107.15px;
  }
  .top_title_block {
    display: flex;
    gap: 13px;
    justify-content: space-between;
    max-width: 494px;
  }
  .top_title_box {
    width: calc((100% - 26px) / 3);
  }
  .hamburger-menu {
    height: 38px;
    right: 10px;
    top: 14px;
    width: 75px;
  }
  .sec_header-flex2 {
    margin-right: 40px;
  }
  .hamburger-menu img {
    margin-top: 2px;
  }
  .sec_header-flex {
    height: 90px;
  }
  .navigation {
    font-size: 16px;
    top: 90px;
  }
  .sec_top .a-box {
    margin: 15px 0;
    position: static;
    transform: none;
  }
  .sec_aoba h3 {
    font-size: 38px;
    font-weight: 400;
    line-height: 63.02px;
  }
  .sec_aoba-img {
    margin: 32px auto 31px;
    max-width: 600px;
  }
  .normal_p {
    font-size: 12px;
    line-height: 24px;
  }
  .sec_aoba .normal_p {
    font-size: 16px;
    line-height: 37px;
    margin-bottom: 32px;
  }
  .sec_youtube iframe {
    margin: 40px auto;
    width: 700px;
  }
  .top_title {
    left: 13vw;
    top: 10vw;
  }
  .top_title .text_translation {
    font-size: 14px;
    margin-top: 10px;
  }
  .sec_we {
    margin-top: 166px;
  }
  .we_block {
    height: 57vw;
    margin-bottom: 102px;
  }
  .sec_we h2 {
    font-size: 50px;
    line-height: 72.4px;
    margin: 56px auto 57px;
  }
  .we_text-inner {
    font-size: 20px;
    letter-spacing: .1em;
    line-height: 53px;
  }
  .we_block2-flexbox .normal_p {
    font-size: 16px;
    line-height: 3.12vw;
  }
  .we_block2-flex {
    gap: 12px;
  }
  .we_block2-flexbox {
    gap: 37px;
  }
  .we_block2 .we_block2-box h3 {
    font-size: 37px;
    line-height: 72.4px;
  }
  .we_block2 .we_block2-box h3 span {
    font-size: 47px;
    line-height: 63.3px;
    margin-bottom: 5px;
    padding-right: 291px;
  }
  .we_block2 .we_block2-box h3 span:after {
    height: 2px;
    top: 35px;
    width: 271px;
  }
  .we_block2 .we_block2-box:nth-child(even) h3 span {
    padding-left: 291px;
  }
  .we_block2-flex {
    margin-bottom: 125px;
  }
  .we_block2 {
    max-width: 1198px;
  }
  .title_back {
    font-size: 160px;
    letter-spacing: .01em;
    line-height: 180.32px;
  }
  .title_back h2 {
    font-size: 50px;
    letter-spacing: .02em;
    line-height: 72.4px;
  }
  .sec_gal-img_block {
    margin: 40px auto 40px;
    max-width: 1020.86px;
  }
  .a-box2:after {
    right: -28px;
    width: 57.7px;
  }
  .sec_pro-block {
    margin-top: 30px;
  }
  .sec_pro {
    margin-top: 160px;
  }
  .sec_pro-block_img {
    max-width: 1023px;
  }
  .sec_pro-block_text .normal_p {
    font-size: 16px;
    line-height: 37px;
    margin: 0 auto 30px;
    width: 100%;
  }
  .sec_acc-map {
    height: 575.42px;
    margin: 20px auto 34px;
    max-width: 1023px;
  }
  .sec_acc-block .normal_p {
    font-size: 16px;
    line-height: 37px;
    margin-bottom: 36px;
  }
  .sec_contact {
    margin-top: 80px;
  }
  .sec_contact-stepbox {
    font-size: 15px;
    line-height: 23px;
    padding: 10px 20px;
  }
  .sec_contact-stepbox span {
    font-size: 13px;
  }
  .sec_contact-stepblock {
    gap: 40px;
    margin: 8px auto;
  }
  .sec_contact-stepblock:after {
    width: 190px;
  }
  .contact_inner {
    margin: 0 auto;
    max-width: 776px;
  }
  .contact_label {
    font-size: 20px;
  }
  .contact_label .contact_required {
    font-size: 15px;
  }
  .contact_box label span {
    font-size: 16px;
  }
  .contact_text {
    font-size: 16px;
  }
  .contact_label {
    padding: 20px;
  }
  .contact_text span {
    font-size: 12px;
  }
  .contact_inner .text-small {
    font-size: 14px;
    margin-left: 58px;
  }
  .contact_notice p,
  .contact_notice2 p {
    font-size: 16px;
    line-height: 32px;
  }
  .contact_label2,
  .contact_submit {
    max-width: 412px;
  }
  .contact_submit:after {
    right: -24px;
    width: 48px;
  }
  .contact_submit button {
    height: 59px;
  }
  .contact_notice2 p {
    margin-bottom: 120px;
  }
  .sec_tel {
    font-size: 27px;
  }
  .sec_footer p {
    font-size: 16px;
  }
  .sec_pro-block_text {
    margin: 0 auto;
    max-width: 1023px;
  }
  .a-box span:before {
    background-image: url(../img/icon_pc.png);
  }
  .sec_plan-block_inner p {
    font-size: 16px;
    line-height: 37px;
  }
  .sec_plan-block img {
    max-width: 1149.09px;
  }
  .sec_tel_img {
    margin: 0 auto;
    width: 400px;
  }
  .a-box a:hover {
    background: #333;
    color: #fff !important;
    opacity: 1;
  }
  .a-box a:hover:before {
    background: #fff;
    right: -15px;
  }
  .a-box2 a:hover {
    background: transparent;
    color: #333 !important;
    opacity: 1;
  }
  .a-box2 a:hover:before {
    background: #333;
    right: -15px;
  }
  .other_page #wrapper {
    padding-top: 90px;
  }
  .other_page .title_back {
    font-size: 125px;
    margin-bottom: 90px;
    padding-bottom: 110px;
    padding-top: 90px;
  }
  .gal_subtitle {
    font-size: 28px;
  }
  .gal_block {
    max-width: 1024px;
  }
  .gal_com {
    font-size: 22px;
    line-height: 44.91px;
  }
  .gal_text {
    font-size: 18px;
    line-height: 30.38px;
    margin-bottom: 110px;
    margin-top: 10px;
  }
  .acc_block {
    max-width: 1024px;
  }
  .acc_subtitle {
    font-size: 26px;
    line-height: 42px;
  }
  .acc_text_1 {
    font-size: 20px;
    line-height: 33px;
  }
  .acc_text_2 {
    font-size: 16px;
    line-height: 24px;
  }
  .acc_text_3 {
    font-size: 16px;
    line-height: 30px;
  }
  .acc_text_3 span {
    font-size: 14px;
  }
  .acc_text_4 {
    font-size: 12px;
    margin-top: 12px;
  }
  .hr_grey,
  .hr_grey2 {
    margin: 12px auto;
  }
  .footer_block {
    padding: 60px 0;
    z-index: 1;
  }
  .footer_block p {
    font-size: 23px;
    line-height: 46.06px;
  }
  .footer_block .a-box {
    margin-bottom: 60px;
  }
  .footer_block .sec_tel_img {
    max-width: 337px;
  }
  .contact_page .sec_contact {
    margin-top: 0;
    padding-top: 82px;
  }
  .contact_page .contact_label2 span {
    font-size: 14px;
  }
  .contact_box input {
    padding: 10px;
  }
  .footer_block .a-box2 a:hover {
    background: #333;
    color: #fff !important;
  }
  .footer_block .a-box2 a:hover:before {
    background: #fff;
  }
  .contact_submit:hover {
    background: #fff;
    color: #333 !important;
    opacity: 1;
  }
  .contact_submit:hover:before {
    background: #333;
    right: -15px;
  }

  .top-aboutus__deco {
    display: block;
    left: -4px;
    position: absolute;
    top: 34px;
    width: 8%;
  }

  .top-aboutus {
    padding: 103px 0 147px;
  }

  .top-aboutus .container {
    max-width: 1000px;
    width: 85%;
  }

  .top-aboutus__img {
    bottom: auto;
    margin-top: -51px;
    right: -89px;
    top: 50%;
    transform: translateY(-50%);
    width: 56%;
    z-index: -1;
  }

  .top-aboutus__content {
    max-width: 520px;
  }

  .top-aboutus__content .ttl {
    font-size: 50px;
    line-height: 84px;
    margin-bottom: 35px;
  }

  .top-aboutus__content .text {
    margin-bottom: 49px;
  }

  .top-aboutus__content .text.scroll-in .clip-text {
    font-size: 16px;
    line-height: 37px;
  }

  .top-aboutus__content .text p {
    font-size: 16px;
    line-height: 37px;
    margin-bottom: 37px;
  }

  .gal_flex {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 auto;
    max-width: 1240px;
    width: 95%;
  }
  .gal_flex .gal_block {
    margin: 0;
    width: calc((100% - 20px) / 3);
  }
  .sec_tel_bnr {
    margin: 40px auto;
    max-width: 768px;
    transition: all .3s;
  }
  .sec_tel_bnr:hover {
    opacity: .8;
  }
  .sec_contact-banner {
    font-size: 14px;
    margin-bottom: 60px;
  }
}

/*デフォルトのサンクスメッセージを非表示*/
.wpcf7-response-output{ display: none; }
#systmttl{ display: none;}
/*確認画面と完了画面を非表示*/
.confirm_area, .thanks_area { display: none; }

.form-Box select {
  -moz-appearance: menulist;
  -webkit-appearance: menulist;
  appearance: menulist;
}



@media screen and (min-width: 768px),print {



.thanks-mt{
margin-top: 120px;
        margin-bottom: 48px;
        font-size: 18px;
        line-height: 1.85;
}
.thanks-mt2{
margin-top: 48px;
margin-bottom: 48px;
}



   .required::after {
        content: "必須";
        background: #C4791F;
        color: #fff;
        font-size: 13px;
        padding: 8px 0 0;
        display: block;
        position: absolute;
        top: 38px;
        right: 0px;
        width: 50px;
        height: 29px;
        text-align: center;
        line-height: 1;
    }


    .foin-Box .fmtt1 {
        background: #ECEAE3;
        font-size: 20px;
        padding: 20px;
        margin-bottom: 20px;
        font-family: "Shippori Mincho", serif;
    }

    .priv-title {
        text-align: center;
        margin-bottom: 20px;
    }

    .priv-text {
        padding: 20px;
        overflow-y: scroll;
        height: 250px;
        border: #ccc solid 1px;
        margin-bottom: 30px;
        background: #fff;
    }

    .priv-text .priv-ttl {
        margin-bottom: 10px;
        font-size: 16px;
        font-weight: bold;
    }

    .priv-text p {
        margin-bottom: 20px;
        font-size: 13px;
        margin-bottom: 20px;
        padding-bottom: 20px;
        border-bottom: #ccc solid 1px;
    }

    .priv {
        text-align: center;
        margin-bottom: 30px;
    }

    .priv-text{
      text-align: left;
    }

    .priv-text .tt {
        margin-bottom: 10px;
        font-size: 20px;
        color: #333;
        font-weight: bold;
    }


    /* form -------------------------------------*/

 .form-Box .tyu{
        display: block;
        font-size: 13px;
        margin-top: 8px;
 }

    .form-Box {
        line-height: 1.6;
        padding: 0px 0 10px 0;
        z-index: 3;
        position: relative;
        max-width: 1600px;
        margin: 0 auto;
        border: 1px solid #C9C7BA;
        margin-bottom: 104px;
    }

    .form-Box .form-in-Box {
        padding: 92px 0px 40px;
        width: 100%;
        margin: 0 auto;
        max-width: 1280px;
        position: relative;
        z-index: 3;
    }

    .foin-Box {
        margin: 0 auto;
    }

    .form-Box .form-list {
        font-size: 16px;
        margin-bottom: 30px;
    }

    .form-Box .error {
        margin-bottom: 16px;
    }

    .form-Box .fgb-Box {
        background: #fff;
        padding: 2px 140px 56px;
    }

    .form-Box .formttl {
        text-align: center;
        margin-bottom: -21px;
        position: relative;
        z-index: 4;
        font-size: 24px;
        letter-spacing: 1.2px;
    }

    .form-Box .formttl span {
        position: relative;
        top: -9px;
        left: -2px;
    }

    .form-Box .eigyo {
        width: 735px;
        margin: 0 auto;
        color: #C4791F;
        font-size: 16px;
        letter-spacing: 0.8px;
        font-weight: 400;
        margin-bottom: 60px;
    }

    .form-Box .eigyo span {
        display: inline-block;
        background: #fff;
        padding: 6px 14px;
    }

    .form-Box .list {
        margin: 0px auto 40px;
        font-size: 14px;
        letter-spacing: 0.7px;
        width: 647px;
        font-weight: 400;
    }

    .form-Box .list li {
        margin-bottom: 4px;
    }

    .form-Box .attention-color {
        color: #f00;
    }

    .form-Box .form-list li {
        padding-left: 16px;
        text-indent: -16px;
        margin-bottom: 3px;
    }

    .form-Box table {
        border-top: #DDDDDD 1px solid;
        margin-bottom: 50px;
        font-size: 18px;
        line-height: 1.6;
        letter-spacing: 0.9px;
        width: 100%;
        border-collapse: collapse;
    }

    .form-Box th {
        border-bottom: #DDDDDD 1px solid;
        text-align: left;
        width: 27.4%;
        padding: 39px 65px 39px 35px;
        vertical-align: top;
        font-weight: 400;
        position: relative;
    }

    .form-Box th p {
        display: inline;
    }

    .form-Box td {
        border-bottom: #DDDDDD 1px solid;
        text-align: left;
        width: 70%;
        padding: 35px 60px 35px 20px;
        vertical-align: top;
    }

    .form-Box td img {
        max-width: 100%;
        height: auto;
    }

    .form-Box .from-btn-01 {
        text-align: center;
    }

    .form-Box .from-btn-02 {
        margin-top: 24px;
        width: 900px;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }

    .form-Box .button {
        border: 0;
        padding: 0;
        margin: 0;
        text-align: center;
    }

    .form-Box .button:hover {
        cursor: pointer;
        cursor: hand;
        opacity: 0.8;
    }

    .form-Box input[type="text"], .form-Box input[type="email"], .form-Box input[type="tel"], .form-Box input[type="date"], .form-Box input[type="datetime-local"], .form-Box select, .form-Box textarea {
        font-size: 15px;
        padding: 1%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        margin-bottom: 5px;
border: 1px solid #767676;
    }

    .form-Box textarea {
        width: 100%;
        min-height: 120px;
    }

    .form-Box .subtxt {
        font-size: 14px;
    }

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

    .btn-item {
        display: inline-block;
        margin: 0 10px;
    }

    #priv {
        text-align: left;
    }

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

    .sendbaclal {
        margin: 30px auto 30px!important;
        width: 800px;
    }

    .confirm_button:disabled,.confirm_button:disabled:hover {
        filter: alpha(opacity=50);
        -moz-opacity: 0.5;
        opacity: 0.5;
        cursor: default !important;
    }

    .confirm_button,.confirm_button:disabled:hover {
        overflow: hidden;
        display: block;
        width: 640px;
        height: 80px;
        background: #EBE8DD;
        border: #C9C7BA 1px solid;
        position: relative;
        font-weight: 400;
        font-size: 16px;
        letter-spacing: 0;
        padding: 4px 0 0 0px;
        transition: background 0.3s ease-in-out;
        text-align: center;
        margin: 30px auto 0 auto;
        font-style: normal;
    }

    .confirm_button span.arr,.confirm_button:disabled:hover span.arr {
        position: absolute;
        top: 39px;
        right: 30px;
        line-height: 0;
        transition: right 0.3s;
        /* black */
    }

    .confirm_button span.arr img,.confirm_button:disabled:hover span.arr img {
        width: 22px;
        height: auto;
        transition: filter 0.3s;
        -webkit-filter: brightness(0) invert(1);
        filter: brightness(0) invert(1);
    }

    .confirm_button:hover {
        opacity: 0.9;
    }

    .confirm_button:hover span.arr {
        right: 22px;
    }

    .confirm_area {
        /* width: 660px; */
        margin: 0 auto;
    }

    .agtext {
        text-align: center;
        font-size: 16px;
        font-weight: bold;
    }

    .back_button {
        overflow: hidden;
        display: block;
        width: 440px;
        height: 80px;
        position: relative;
        font-size: 20px;
        font-weight: 500;
        transition: background 0.3s ease-in-out;
        text-align: center;
        font-style: normal;
        margin: 0 auto;
        border-radius: 10px;
        background: none;
        border: none;
        text-decoration: underline;
    }

    .back_button span.arr {
        position: absolute;
        top: 33px;
        right: 30px;
        line-height: 0;
        transition: all 0.3s ease-in-out;
        -webkit-filter: brightness(0) invert(1);
        filter: brightness(0) invert(1);
    }

    .back_button span.arr img {
        width: 16px;
        height: auto;
        transition: filter 0.3s;
    }

    .back_button:hover {
        opacity: 0.9;
    }

    .back_button:hover span.arr {
        right: 22px;
    }

    .back_button:hover span.arr img {
        filter: invert(1);
    }

    #send_area {
        width: 640px;
        margin: 0 auto;
        position: relative;
    }

    #send_button {
        cursor: pointer !important;
        overflow: hidden;
        display: block;
        width: 640px;
        height: 80px;
        background: #AE7A46;
        border: 1px solid #693400;
        position: relative;
        font-weight: 400;
        font-size: 20px;
        padding: 0px 0 0 0px;
        transition: all 0.3s ease-in-out;
        text-align: center;
        margin: 0 auto;
        font-style: normal;
        margin: 0 auto;
        box-shadow: 0px 3px 2px #0000001C;
    }

    #send_area::before {
        content: "→";
        display: block;
        background-size: 100% auto;
        position: absolute;
        top: 28px;
        right: 41px;
        font-size: 16px;
        z-index: 3;
        transition: right 0.3s;
        width: 22px;
        height: 21px;
        /* -webkit-filter: brightness(0) invert(1); */
        /* filter: brightness(0) invert(1); */
    }

    #send_area:hover::before {
        right: 22px;
    }

    #send_button:hover {
        opacity: 0.9;
    }

    .confirm_area {
        /* width: 730px; */
        margin: 0 auto;
    }

    #back_area {
        width: 640px;
        position: relative;
        margin: 0 auto;
    }

    .confirm_area {
        /* text-align: center; */
        padding-top: 6px;
    }

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

 .form-Box .tyu{
  display: block;
  font-size: 2.899vw;
  letter-spacing: normal;
 }


  .thanks-mt{
        margin-top: 15.459vw;
        margin-bottom: 11.594vw;
}

.thanks-mt2{
margin-top: 11.594vw;
margin-bottom: 11.594vw;
}


    .required::after {
        content: "必須";
        color: #333;
        background: #AE7A46;
        font-size: 3vw;
        padding: 1.4vw 3vw 0.5vw;
        position: absolute;
        top: 2.5vw;
        right: 3.8vw;
        color: #fff;
    }

    /* form -------------------------------------*/
    .form-Box {
        padding: 0vw 1.8vw 7vw;
        margin: 0 3vw;
        margin-bottom: 12vw;
        line-height: 1.6;
        position: relative;
        z-index: 3;
        background: url(../images/contact/form-back.png) no-repeat #fff;
        border: 1px solid #C9C7BA;
    }

    .form-Box .form-in-Box {
        padding: 8.8vw 0.2vw 1vw;
    }

    .form-Box .form-list {
        font-size: 3.2vw;
        margin-bottom: 10vw;
    }

    .form-Box .error {
        margin-bottom: 3.6vw;
    }

    .form-Box .attention-color {
        color: #f00;
    }

    .form-Box .form-list li {
        padding-left: 3.6vw;
        text-indent: -3.6vw;
        margin-bottom: 0.4vw;
    }

    .form-Box table {
        margin-bottom: 10vw;
        font-size: 3.4vw;
        line-height: 1.6;
        width: 100%;
        border-top: #DDDDDD 1px solid;
    }

    .form-Box tr {
        margin-bottom: 0 !important
    }

    .form-Box th {
        text-align: left;
        width: 100%;
        padding: 3vw 16vw 3vw 3vw;
        vertical-align: top;
        display: block;
        position: relative;
    }

    .form-Box th p {
        display: inline;
    }

    .form-Box td {
        border-bottom: #DDDDDD 1px solid;
        text-align: left;
        width: 100%;
        padding: 1vw 3.5vw 3vw;
        vertical-align: top;
        display: block;
    }

    .form-Box .from-btn-01 {
        text-align: center;
    }

    .form-Box .from-btn-02 {
        margin-top: 10vw;
    }

    .form-Box .button {
        border: 0;
        padding: 0;
        margin: 0;
        background: none;
    }

    .form-Box .from-btn-02 p {
        margin-bottom: 3vw;
    }

    .form-Box input[type="text"], .form-Box input[type="email"], .form-Box input[type="tel"], .form-Box input[type="date"], .form-Box input[type="datetime-local"], .form-Box select, .form-Box textarea {
        width: 80vw;
        margin-bottom: 2vw;
        font-size: 16px !important;
        padding: 2vw;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        border: 1px solid #767676;
    }

    .form-Box input.input-txt1 {
        width: 25vw;
    }

    .form-Box textarea {
        font-size: 4.3vw;
        line-height: 1.6;
        min-height: 20vw;
    }

    .form-Box select {
        font-size: 4.3vw;
        padding: 3vw 2vw 4vw;
        width: 60vw;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    .foin-Box .fmtt1 {
        background: #ECEAE3;
        font-size: 4.83vw;
        padding: 4.83vw;
        margin-bottom: 4.83vw;
        font-family: "Shippori Mincho", serif;
    }

    input[type="checkbox"] {
        margin: 0 2vw 0 1vw;
    }

    .form-Box .list {
        margin: 0 1.1vw -1.48vw;
        font-size: 3.14vw;
        letter-spacing: 0.16vw;
    }

    .form-Box .list li {
        margin-bottom: 0.97vw;
    }

    .form-Box .subtxt {
        font-size: 3vw;
    }

    .priv-title {
        text-align: center;
        margin-bottom: 4vw;
    }

    .priv-text {
        padding: 3vw;
        overflow-y: scroll;
        height: 40vw;
        border: #ccc solid 0.2vw;
        margin-bottom: 5vw;
        background: #fff;
    }

    .priv-text .priv-ttl {
        margin-bottom: 2vw;
        font-size: 3.9vw;
        font-weight: bold;
    }

    .priv-text p {
        margin-bottom: 4vw;
        font-size: 3.2vw;
        margin-bottom: 4vw;
        padding-bottom: 4vw;
        border-bottom: #ccc solid 0.2vw;
    }

    .priv {
        text-align: left;
        margin-bottom: 5vw;
    }

    .priv-text .tt {
        margin-bottom: 3vw;
        font-size: 4.8vw;
        font-weight: bold;
    }

    .wpcf7-list-item {
        margin-right: 2vw!important;
        margin-bottom: 1.5vw!important;
    }

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

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

    .btn-item {
        display: inline-block;
        margin: 0 1.3vw;
    }

    .form-Box .eigyo {
        color: #C4791F;
        font-size: 3.86vw;
        letter-spacing: 0.19vw;
        font-weight: 400;
        margin-bottom: 4.49vw;
    }

    .form-Box .eigyo span {
        display: block;
        background: #fff;
        padding: 1.45vw 3.38vw;
    }

    .fgb-Box {
        background: #fff;
        padding: 8vw 1vw 0vw;
    }

    .form-Box .formttl {
        text-align: center;
        margin-bottom: 1.7vw;
        position: relative;
        z-index: 4;
        font-size: 4.83vw;
        letter-spacing: 0.48vw;
    }

    .form-Box .formttl span {
        display: inline-block;
        width: 6.2vw;
        position: relative;
        top: -1.5vw;
    }

    .sendbaclal {
        margin: 8.0vw auto 8.0vw!important;
    }

    .confirm_button:disabled {
        filter: alpha(opacity=50);
        -moz-opacity: 0.5;
        opacity: 0.5;
        cursor: default !important;
    }

    .confirm_button {
        overflow: hidden;
        display: block;
        width: 84.54vw;
        height: 17.32vw;
        background: #EAE8DD;
        position: relative;
        font-weight: 400;
        font-size: 4.33vw;
        letter-spacing: 0;
        padding: 1.07vw 0 0 0.0vw;
        transition: background 0.3s ease-in-out;
        text-align: center;
        border: 1px solid #C9C7BA;
        margin: 8.0vw auto 0 auto;
        font-style: normal;
        border-radius: 0;
    }

    .confirm_button span.arr {
        position: absolute;
        top: 8.5vw;
        right: 8.0vw;
        line-height: 0;
        transition: right 0.3s;
        /* black */
    }

    .confirm_button span.arr img {
        width: 4.0vw;
        height: auto;
        transition: filter 0.3s;
        -webkit-filter: brightness(0) invert(1);
        filter: brightness(0) invert(1);
    }

    .confirm_area {
        /*  */
        margin: 0 4vw;
    }

    .agtext {
        text-align: center;
    }

    .back_button {
        overflow: hidden;
        display: block;
        width: 84.54vw;
        height: 21.33vw;
        position: relative;
        font-size: 4.33vw;
        font-weight: 400;
        transition: background 0.3s ease-in-out;
        text-align: center;
        font-style: normal;
        margin: 0 auto;
        border-radius: 2.67vw;
        background: none;
        border: none;
        text-decoration: underline;
    }

    .back_button span.arr {
        position: absolute;
        top: 8.8vw;
        right: 8.0vw;
        line-height: 0;
        transition: all 0.3s ease-in-out;
        -webkit-filter: brightness(0) invert(1);
        filter: brightness(0) invert(1);
    }

    .back_button span.arr img {
        width: 4.27vw;
        height: auto;
        transition: filter 0.3s;
    }

    #send_area {
        width: auto;
        margin: 0;
        position: relative;
    }

    #send_button {
        cursor: pointer !important;
        overflow: hidden;
        display: block;
        width: 84.54vw;
        height: 17.32vw;
        background: #AE7A46;
        position: relative;
        font-weight: 400;
        font-size: 4.33vw;
        padding: 0.0vw 0 0 0.0vw;
        transition: all 0.3s ease-in-out;
        text-align: center;
        border: 1px solid #693400;
        margin: 0 auto;
        font-style: normal;
        box-shadow: 0.0vw 0.8vw 0.53vw #0000001C;
        border-radius: 0;
    }

    #send_area::before {
        content: "→";
        display: block;
        background-size: 100% auto;
        position: absolute;
        top: 4.9vw;
        right: 10.93vw;
        z-index: 3;
        transition: right 0.3s;
        width: 3.93vw;
        height: 5.6vw;
    }

    .confirm_area {
        /*  */
        margin: 0 4vw;
    }

    #back_area {
        position: relative;
        margin: 0 4vw;
    }

    .confirm_area {
        /* text-align: center; */
        padding-top: 1.6vw;
    }

    .confirm_area {
        /*  */
        margin: 0 4vw;
    }

    #back_area {
        position: relative;
    }

    .confirm_area {
        /* text-align: center; */
        padding-top: 1.45vw;
    }

    #your-date-picker,#your-date-picker2,#your-date-picker3 {
        padding: 2vw!important;
        height: 14vw!important;
    }

    #your-date-picker::before,#your-date-picker2::before,#your-date-picker3::before {
        content: "日付を選択してください";
        font-size: 3vw;
    }

    #back_area {
        position: relative;
        margin: 0;
    }

    .confirm_area {
        /* text-align: center; */
        padding-top: 1.4vw;
        font-size: 4.266vw;
        margin: 0;
        padding-bottom: 4vw;
    }

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

    .btn-item {
        display: inline-block;
        margin: 0 2.4vw;
    }

    .wp-block-table table {
        border-collapse: unset!important;
        width: 100%;
    }

.agtext{
  font-size: 3.6vw;
          letter-spacing: normal;
}

}

