@charset "UTF-8";
/*main*/
.fw__normal {
  font-weight: 400;
}

.fw__bold {
  font-weight: 600;
}

.ff__hw {
  font-family: "Kiwi Maru", "Poppins", sans-serif;
  font-weight: 500;
}

.color__txt__brown {
  color: #A27963;
}

* {
  margin: 0;
  padding: 0;
  text-align: left;
}

hr {
  display: none;
  line-height: 0;
  font-size: 0;
  padding: 0;
  margin: 0;
  border: none;
}

a {
  color: inherit;
  text-decoration: none;
}

ul, ol {
  list-style: none;
}

address {
  font-style: normal;
}

img {
  border: none;
  width: auto;
  max-width: 100%;
  font-size: 0;
  line-height: 0;
}

table, tbody, tr, th, td {
  padding: 0;
  margin: 0;
  border: none;
  border-collapse: collapse;
}

html, body {
  width: 100%;
  height: auto;
}

html {
  font-size: 62.5%;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

small {
  font-size: 100%;
}

.clear:after, .clear:before {
  content: "";
  display: block;
  overflow: hidden;
  height: 0;
}

.clear:after {
  clear: both;
}

.clear {
  zoom: 1;
}

html {
  font-family: "Shippori Mincho", "Noto Serif JP", "游明朝", Hiragino Mincho ProN, "HGS明朝E", "メイリオ", Meiryo, serif;
}

body {
  background: #fff;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.04em;
  color: #333;
  overflow-x: hidden;
  position: relative;
}
body .fs__txt__35 {
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 1.514;
  letter-spacing: 0.04em;
}
body .fs__txt__32 {
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.04em;
}
body .fs__txt__24 {
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.04em;
}
body .fs__txt__20 {
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.04em;
}
body .fs__txt__16 {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.04em;
}
body .fs__txt__14 {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.1428571429;
  letter-spacing: 0.04em;
}
body .fs__txt__14__wide {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.8571428571;
  letter-spacing: 0.04em;
}
body .fs__txt__12 {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.008em;
}
@media (max-width: 750px) {
  body .fs__txt__32 {
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.7;
    letter-spacing: 0.04em;
  }
  body .fs__txt__24 {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0.04em;
  }
  body .fs__txt__20 {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0.04em;
  }
  body .fs__txt__16 {
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.8571428571;
    letter-spacing: 0.04em;
  }
  body .fs__txt__14 {
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.1428571429;
    letter-spacing: 0.04em;
  }
  body .fs__txt__14__wide {
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.8571428571;
    letter-spacing: 0.04em;
  }
}
body .fs__txt__en__80 {
  font-size: 8rem;
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: 0.1em;
}
body .fs__txt__en__60 {
  font-size: 6rem;
  font-weight: 400;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
}
body .fs__txt__en__50 {
  font-size: 5rem;
  font-weight: 400;
  line-height: 1.65625;
  letter-spacing: 0.1em;
}
body .fs__txt__en__32 {
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1.06;
  letter-spacing: 0.1em;
}
body .fs__txt__en__24 {
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
}
body .fs__txt__en__16 {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.01em;
}
@media (max-width: 750px) {
  body .fs__txt__en__80 {
    font-size: 3.2rem;
    font-weight: 400;
    line-height: 1.06;
    letter-spacing: 0.1em;
  }
  body .fs__txt__en__60 {
    font-size: 3.2rem;
    font-weight: 400;
    line-height: 1.06;
    letter-spacing: 0.1em;
  }
  body .fs__txt__en__50 {
    font-size: 3.2rem;
    font-weight: 400;
    line-height: 1.06;
    letter-spacing: 0.1em;
  }
  body .fs__txt__en__32 {
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
  }
  body .fs__txt__en__24 {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0.1em;
  }
}

.pc {
  display: block;
}

.sp {
  display: none;
}

@media (max-width: 750px) {
  body {
    background: #fff;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
img {
  image-rendering: -webkit-optimize-contrast;
}

.flex {
  display: flex;
}

.ff__sans {
  font-family: "Noto Sans JP", "游ゴシック", "メイリオ", Meiryo, -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, sans-serif;
}

.ff__serif {
  font-family: "Shippori Mincho", "Noto Serif JP", "游明朝", Hiragino Mincho ProN, "HGS明朝E", "メイリオ", Meiryo, serif;
}

.ff__eb {
  font-family: "EB Garamond";
}

.sec__in__l {
  width: 100%;
  max-width: 1180px;
  min-width: 0;
  margin: 0 auto;
}

.sec__in__s {
  width: 100%;
  max-width: 960px;
  min-width: 0;
  margin: 0 auto;
}

.capimg {
  position: relative;
  font-size: 0;
  line-height: 0;
}

.captxt {
  position: absolute;
  line-height: 1;
  font-size: 1.2rem;
  color: #fff;
  text-shadow: 1px 1px 3px rgb(51, 51, 51), -1px -1px 3px rgb(51, 51, 51), 1px -1px 3px rgb(51, 51, 51), -1px 1px 3px rgb(51, 51, 51);
  font-family: "Shippori Mincho", "Noto Serif JP", "游明朝", Hiragino Mincho ProN, "HGS明朝E", "メイリオ", Meiryo, serif;
}

.btn-request a {
  display: block;
  background-color: #E5E049;
  color: #000;
  position: relative;
  text-align: center;
}
.btn-request a .fa-angle-right {
  position: absolute;
  right: 0.45em;
  top: 0;
  bottom: 0;
  margin: auto;
}

.btn-reservation a {
  display: block;
  background: #ee1241;
  color: #fff;
  position: relative;
  text-align: center;
}
.btn-reservation a .fa-angle-right {
  position: absolute;
  right: 0.45em;
  top: 0;
  bottom: 0;
  margin: auto;
}

.btn-online a {
  display: block;
  background: #3AA89B;
  color: #fff;
  position: relative;
  text-align: center;
}
.btn-online a .fa-angle-right {
  position: absolute;
  right: 0.45em;
  top: 0;
  bottom: 0;
  margin: auto;
}

.common-tit {
  background-size: cover;
}
.common-tit .anime__slidein {
  text-align: center;
}
.common-tit h2 {
  text-align: center;
  color: #4B4B7C;
  font-weight: normal;
  padding: 36px 0 30px;
}
@media (max-width: 750px) {
  .common-tit h2 {
    padding: 4.8% 0 3.4666666667%;
  }
}

.bg-tit {
  background-color: #E1EDF1;
}

.box-close {
  display: none;
}

.tit {
  font-size: 3.2rem;
  line-height: 1.6;
  font-weight: normal;
}

.mtit {
  font-size: 2.4rem;
  line-height: 1.7;
}

.stit {
  font-size: 2rem;
  line-height: 1.8;
}

.term {
  font-size: 1.2rem;
  line-height: 1.5;
}

.copy {
  font-size: 1.2rem;
  line-height: 1.5;
}

@media (max-width: 750px) {
  .tit {
    font-size: 1.9rem;
    line-height: 1.6;
  }
  .mtit {
    font-size: 1.5rem;
    line-height: 1.7;
  }
  .stit {
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .term {
    font-size: 1rem;
    line-height: 1.5;
  }
  .copy {
    font-size: 0.8rem;
    line-height: 1.5;
  }
}
/*header*/
header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 9999;
  padding: 0;
  box-sizing: border-box;
  background: none;
  transition: background-color 0.2s ease;
}
header .header div.flex {
  justify-content: space-between;
  align-items: center;
}
header .header h1 {
  font-weight: normal;
  font-size: 1.8rem;
}
header .header h1 .flex {
  align-items: center;
}
header .header h1 .desvg {
  width: 48px;
  max-height: 50px;
  margin-right: 20px;
}
header .header h1 path {
  fill: #231815;
}
header .header h1 a span {
  font-size: 0;
  line-height: 0;
}
header .header ul {
  align-items: stretch;
  transform: translateX(52px);
  transition: transform 0.2s 0s ease;
}
header .header.js--ing ul {
  transform: translateX(0);
}
header .header li {
  display: flex;
  font-family: "Shippori Mincho", "Noto Serif JP", "游明朝", Hiragino Mincho ProN, "HGS明朝E", "メイリオ", Meiryo, serif;
  font-weight: 700;
}
header .header li.map,
header .header li.outline {
  margin: 0 32px 0 0;
  position: relative;
}
header .header li.map a,
header .header li.outline a {
  display: flex;
  align-items: center;
  justify-content: center;
}
header .header .fa-angle-right {
  margin-left: 0.5em;
}
header .header li.request,
header .header li.reservation,
header .header li.online {
  color: #000;
  width: 145px;
}
header .header li.request a,
header .header li.reservation a,
header .header li.online a {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 0.2em 0.2em;
  line-height: 1.2;
  font-weight: 400;
  overflow: hidden;
  position: relative;
  z-index: 1;
  transition: transform 0.3s cubic-bezier(0.45, 0, 0.55, 1), color 0.3s;
}
header .header li.request a span,
header .header li.reservation a span,
header .header li.online a span {
  text-align: center;
}
header .header li.request a::after,
header .header li.reservation a::after,
header .header li.online a::after {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.3s cubic-bezier(0.45, 0, 0.55, 1), color;
  z-index: -1;
  background-color: #fff;
}
header .header li.request a small,
header .header li.reservation a small,
header .header li.online a small {
  display: block;
  text-align: center;
  font-size: 1rem;
}
header .header li.reservation a {
  border: 1px solid #ee1241;
}
header .header li.reservation a.js--on {
  color: #ee1241;
}
header .header li.reservation a.js--on::after {
  transform: scale(1, 1);
}
header .header li.online a {
  border: 1px solid #3AA89B;
}
header .header li.online a.js--on {
  color: #3AA89B;
}
header .header li.online a.js--on::after {
  transform: scale(1, 1);
}
header .header li.request a {
  border: 1px solid #E5E049;
}
header .header li.request.pink a {
  background: #DD818C;
  color: #fff;
}
header .header li.request a.js--on {
  color: #272943;
}
header .header li.request a.js--on::after {
  transform: scale(1, 1);
}
header .header aside {
  width: 51px;
  max-width: 60px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s 0s ease;
  border: 1px solid #fff;
}
header .header aside.js--on div span {
  opacity: 0;
  width: 0;
}
header .header aside.js--on div:before {
  bottom: 0;
  transform: rotate(135deg);
}
header .header aside.js--on div:after {
  top: 0;
  transform: rotate(45deg);
}
header .header.js--ing aside {
  opacity: 1;
  pointer-events: auto;
}
header .header aside div {
  padding: 100% 0 0;
  height: 0;
  position: relative;
  z-index: 3;
  background: #fff;
  transition: background-color 0.5s ease 0s;
}
header .header aside div span,
header .header aside div:before,
header .header aside div:after {
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  width: 70%;
  height: 1px;
  background: #000;
}
header .header aside div:before,
header .header aside div:after {
  content: "";
  display: block;
}
header .header aside span {
  font-size: 0;
  line-height: 0;
  top: 0;
  bottom: 0;
  transition: opacity 0.5s ease 0s, width 0.5s ease 0s, background-color 0.5s ease 0s;
}
header .header aside div:before {
  top: 0;
  bottom: 40%;
  transition: transform 0.5s ease 0s, bottom 0.5s ease 0s, background-color 0.5s ease 0s;
}
header .header aside div:after {
  top: 40%;
  bottom: 0;
  transition: transform 0.5s ease 0s, top 0.5s ease 0s, background-color 0.5s ease 0s;
}
header .outer {
  width: 100%;
  max-width: 100%;
  min-width: 960px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 0 0 30px;
}

header.js--ing {
  background-color: rgb(255, 255, 255);
}

@media (max-width: 750px) {
  header {
    position: static;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 100;
    padding: 8px 0 9px;
    box-sizing: border-box;
    background: #3C3D3E;
  }
  header.noheader {
    padding: 0;
  }
  header .header {
    padding: 0;
    position: relative;
    z-index: 11;
  }
  header .header div.flex {
    justify-content: space-between;
    align-items: center;
  }
  header .header h1 {
    width: 75%;
    font-size: 2.6vw;
    padding-left: 10px;
  }
  header .header h1 .flex {
    gap: 4%;
  }
  header .header h1 .desvg {
    width: 20%;
    margin-right: 0;
    margin: 0;
  }
  header .header h1 a span {
    width: 80%;
  }
  header .header ul {
    display: none;
  }
  header .header li {
    margin-right: 2px;
    width: 100%;
  }
  header .header ul.flex li {
    font-size: 1.1rem;
    width: 52%;
  }
  header .header ul.flex li.btn-request {
    width: 45.4054054054%;
  }
  header .header ul.flex li.btn-reservation {
    width: 45.4054054054%;
  }
  header .header li.request {
    margin-right: 2px;
  }
  header .header li:last-child {
    margin-right: 0;
  }
  header .header .fa-angle-right {
    display: none;
  }
  header .header li.request,
  header .header li.reservation {
    color: #fff;
  }
  header .header li.menu {
    cursor: pointer;
  }
  header .header li.menu span,
  header .header li a,
  header .header li.request a,
  header .header li.reservation a {
    padding: 0;
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    justify-content: center;
    height: 100%;
    box-sizing: border-box;
    border: 1px solid #c0c3d0;
    padding: 4px;
    line-height: 1.2;
    font-family: "Noto Sans JP", "游ゴシック", "メイリオ", Meiryo, -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, sans-serif;
  }
  header .header li.request a small,
  header .header li.reservation a small {
    display: none;
  }
  header .header li.tel a {
    background: linear-gradient(to bottom, #ffffff 0%, #fafafa 100%);
  }
  header .header li.menu span {
    background: linear-gradient(to bottom, #f1f2f4 0%, #ecedef 100%);
  }
  header .header li.btn-reservation {
    width: 150%;
  }
  header .header li.menu .fa-bars {
    display: inline;
  }
  header .header li.menu .fa-xmark {
    display: none;
  }
  header .header li.menu.js--on .fa-bars {
    display: none;
  }
  header .header li.menu.js--on .fa-xmark {
    display: inline;
  }
  header .header li .svg-inline--fa {
    font-size: 2em;
    margin: 0 0 0.2em;
  }
  header .header li .fa-file {
    font-size: 1.4em;
    margin: 0 0 0.2em;
  }
  header .header li.request a span {
    font-size: 8px;
  }
  header .outer {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
  }
}
.global__navi nav {
  /*
  li.modelroom a:before,
  li.equipment a:before,
  li.concept a:before{
    content:"NEW";
    position:absolute;
    top:0;
    left:0;
    background:#DDE95C;
    padding:2px 5px;
    font-size: 1.0rem;
    line-height: 1;
    font-family: $font-sans-en;
  }
  */
}
.global__navi nav ul {
  justify-content: center;
  align-items: center;
}
.global__navi nav ul.main__nav {
  margin: 60px 2.380952381% 0;
}
.global__navi nav li {
  width: 100%;
  position: relative;
}
.global__navi nav li span,
.global__navi nav li a {
  display: block;
  text-align: center;
  position: relative;
  line-height: 1.8;
  padding: 0.75em 0;
}
.global__navi nav li a {
  color: #000;
}
.global__navi nav li span {
  color: #e0e0e0;
}
.global__navi nav li span.new {
  display: inline;
  margin: 0 5px 0 0;
  color: #fff;
  padding: 0.1em 0.4em;
  background-color: #a72121;
  border: 1px solid #a72121;
}
.global__navi nav li span.new:after {
  content: none;
}
.global__navi nav li.history,
.global__navi nav li.seasons,
.global__navi nav li.premium,
.global__navi nav li.concept,
.global__navi nav li.location,
.global__navi nav li.plan,
.global__navi nav li.modelroom,
.global__navi nav li.design,
.global__navi nav li.view,
.global__navi nav li.equipment,
.global__navi nav li.dev {
  font-weight: bold;
  overflow: hidden;
  position: relative;
  z-index: 1;
  border-left: 1px solid #929A9F;
}
.global__navi nav li.history::after,
.global__navi nav li.seasons::after,
.global__navi nav li.premium::after,
.global__navi nav li.concept::after,
.global__navi nav li.location::after,
.global__navi nav li.plan::after,
.global__navi nav li.modelroom::after,
.global__navi nav li.design::after,
.global__navi nav li.view::after,
.global__navi nav li.equipment::after,
.global__navi nav li.dev::after {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  transform: scale(0, 1);
  transform-origin: left top;
  transition: 0.3s cubic-bezier(0.45, 0, 0.55, 1);
  z-index: -1;
  background-color: #DD818C;
}
.global__navi nav li.history a,
.global__navi nav li.seasons a,
.global__navi nav li.premium a,
.global__navi nav li.concept a,
.global__navi nav li.location a,
.global__navi nav li.plan a,
.global__navi nav li.modelroom a,
.global__navi nav li.design a,
.global__navi nav li.view a,
.global__navi nav li.equipment a,
.global__navi nav li.dev a {
  color: #000;
  transition: color 0.3s;
}
.global__navi nav li.history a::before,
.global__navi nav li.seasons a::before,
.global__navi nav li.premium a::before,
.global__navi nav li.concept a::before,
.global__navi nav li.location a::before,
.global__navi nav li.plan a::before,
.global__navi nav li.modelroom a::before,
.global__navi nav li.design a::before,
.global__navi nav li.view a::before,
.global__navi nav li.equipment a::before,
.global__navi nav li.dev a::before {
  color: #000;
}
.global__navi nav li.premium.js--on,
.global__navi nav li.concept.js--on,
.global__navi nav li.location.js--on,
.global__navi nav li.plan.js--on,
.global__navi nav li.modelroom.js--on,
.global__navi nav li.design.js--on,
.global__navi nav li.view.js--on,
.global__navi nav li.equipment.js--on,
.global__navi nav li.dev.js--on {
  font-weight: bold;
}
.global__navi nav li.premium.js--on::after,
.global__navi nav li.concept.js--on::after,
.global__navi nav li.location.js--on::after,
.global__navi nav li.plan.js--on::after,
.global__navi nav li.modelroom.js--on::after,
.global__navi nav li.design.js--on::after,
.global__navi nav li.view.js--on::after,
.global__navi nav li.equipment.js--on::after,
.global__navi nav li.dev.js--on::after {
  transform: scale(1, 1);
}
.global__navi nav li.premium.js--on a,
.global__navi nav li.concept.js--on a,
.global__navi nav li.location.js--on a,
.global__navi nav li.plan.js--on a,
.global__navi nav li.modelroom.js--on a,
.global__navi nav li.design.js--on a,
.global__navi nav li.view.js--on a,
.global__navi nav li.equipment.js--on a,
.global__navi nav li.dev.js--on a {
  color: #fff;
}
.global__navi nav li.premium.js--on a::before,
.global__navi nav li.concept.js--on a::before,
.global__navi nav li.location.js--on a::before,
.global__navi nav li.plan.js--on a::before,
.global__navi nav li.modelroom.js--on a::before,
.global__navi nav li.design.js--on a::before,
.global__navi nav li.view.js--on a::before,
.global__navi nav li.equipment.js--on a::before,
.global__navi nav li.dev.js--on a::before {
  color: #000;
  pointer-events: none;
}
.global__navi nav li.off a {
  color: rgba(0, 0, 0, 0.4);
  pointer-events: none;
}
.global__navi nav li.dev {
  border-right: 1px solid #929A9F;
}
.global__navi nav li small {
  display: block;
  text-align: center;
  font-size: 0.8rem;
  font-family: "Poppins", sans-serif;
}
.global__navi nav .map,
.global__navi nav .outline,
.global__navi nav .request {
  display: none;
}
.global__navi nav ul.sub {
  justify-content: right;
  margin: 0 40px 0 0;
}
.global__navi nav ul.sub li {
  width: max-content;
}
.global__navi nav ul.sub li:after {
  content: none;
}
.global__navi nav ul.sub li.map {
  margin: 0 20px 0 0;
}
.global__navi nav ul.sub li.map,
.global__navi nav ul.sub li.outline {
  display: block;
}
.global__navi nav ul.sub li a {
  padding: 0.2em 0;
}
.global__navi nav li.underline {
  position: relative;
}
.global__navi nav li.underline::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 5px;
  background: #929A9F;
  z-index: 1;
  bottom: 0;
  left: 0;
}
@media (max-width: 750px) {
  .global__navi nav {
    display: none;
    background: #fff;
    border-top: none;
    border-bottom: none;
    position: absolute;
    top: 100%;
    width: 100%;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.2s 0s ease, opacity 0.1s 0s ease;
  }
  .global__navi nav.js--on {
    opacity: 1;
  }
  .global__navi nav ul {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .global__navi nav li {
    width: 50%;
  }
  .global__navi nav li span,
  .global__navi nav li a {
    background: #0f1a39;
    font-family: "Noto Sans JP", "游ゴシック", "メイリオ", Meiryo, -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, sans-serif;
    border: 1px solid #fff;
  }
  .global__navi nav li a {
    color: #fff;
  }
  .global__navi nav li span {
    color: #79808e;
  }
  .global__navi nav li span.new {
    margin: 0 3% 0 0;
    padding: 0em 0.3em;
  }
  .global__navi nav li.concept span:before,
  .global__navi nav li.concept a:before,
  .global__navi nav li span:after,
  .global__navi nav li a:after {
    display: none;
  }
  .global__navi nav li small {
    display: none;
  }
  .global__navi nav li.premium,
  .global__navi nav li.location,
  .global__navi nav li.plan,
  .global__navi nav li.design,
  .global__navi nav li.view,
  .global__navi nav li.equipment,
  .global__navi nav li.modelroom,
  .global__navi nav li.dev {
    font-weight: normal;
  }
  .global__navi nav .map,
  .global__navi nav .outline,
  .global__navi nav .request {
    display: block;
  }
  .global__navi nav ul.sub {
    display: none;
  }
}

.sticky__navi {
  width: 100%;
  background: rgb(255, 255, 255);
  padding: 40px 0;
  position: absolute;
  top: -610%;
  transition: top 0.2s 0s ease;
  z-index: -1;
}
.sticky__navi.js--on {
  top: 100%;
}
.sticky__navi.js--start {
  top: -610%;
}
.sticky__navi ul.flex {
  flex-wrap: wrap;
  gap: 10px 2.8%;
}
.sticky__navi li {
  width: 22.8813559322%;
  padding: 0 0 10px;
  margin: 0 0 10px;
  border-bottom: 1px solid #333;
}
.sticky__navi li a {
  color: #333;
}
.sticky__navi a.flex {
  align-items: center;
}
.sticky__navi span.new {
  width: 30px;
  margin: 0 5% 0 0;
  font-size: 1rem;
  color: #fff;
  background-color: #a72121;
  text-align: center;
}
.sticky__navi span.wrapper {
  width: max-content;
}
.sticky__navi small {
  display: block;
}

@media (max-width: 750px) {
  .sticky__navi {
    background: rgba(60, 61, 62, 0.83);
    padding: 20% 3.125% 8%;
    box-sizing: border-box;
    width: 100%;
    position: absolute;
    top: -100%;
    transition: top 0.2s 0s ease;
    z-index: 10;
  }
  .sticky__navi.js--start {
    top: -100%;
  }
  .sticky__navi.js--on {
    position: fixed;
    top: 0;
  }
  .sticky__navi ul.flex {
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px 1.9%;
  }
  .sticky__navi li {
    width: 47%;
    padding: 0 0 10px;
    margin: 0 0 10px;
    border-bottom: 1px solid #c9c4c4;
  }
  .sticky__navi li a {
    color: #fff;
    font-size: 1.3rem;
  }
  .sticky__navi a.flex {
    align-items: center;
  }
  .sticky__navi span.new {
    width: 30px;
    margin: 0 5% 0 0;
    font-size: 1rem;
    color: #fff;
    background-color: #a72121;
    text-align: center;
  }
  .sticky__navi span.wrapper {
    width: max-content;
  }
  .sticky__navi small {
    display: block;
  }
}
@media (max-width: 750px) {
  .header__sp__btn {
    width: 44px;
    position: fixed;
    top: 0.6%;
    right: 1%;
    z-index: 9999;
  }
  .header__sp__btn li.menu {
    background-color: #3C3D3E;
    cursor: pointer;
    font-size: 1rem;
  }
  .header__sp__btn li.menu span {
    padding: 0;
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    justify-content: center;
    height: 100%;
    box-sizing: border-box;
    padding: 6px 0 0;
    line-height: 1.2;
    font-family: "Noto Sans JP", "游ゴシック", "メイリオ", Meiryo, -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, sans-serif;
    border: 1px solid #fff;
    height: 44px;
  }
  .header__sp__btn li.menu .fa-bars {
    display: inline;
    color: #fff;
  }
  .header__sp__btn li.menu .fa-xmark {
    display: none;
  }
  .header__sp__btn li.menu.js--on .fa-bars {
    display: none;
  }
  .header__sp__btn li.menu.js--on .fa-xmark {
    display: inline;
    color: #fff;
  }
  .header__sp__btn li .svg-inline--fa {
    font-size: 3em;
    margin: 0 0 0.2em;
  }
}
@media (max-width: 750px) {
  .float__sp__btn {
    width: 100%;
    height: 100%;
    top: 0.6%;
    right: 1%;
    z-index: 9999;
  }
  .float__sp__btn li.menu {
    cursor: pointer;
    width: 20vw;
  }
  .float__sp__btn li.menu span {
    padding: 0;
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    justify-content: center;
    height: 100%;
    box-sizing: border-box;
    border: 1px solid #fff;
    padding: 4px;
    line-height: 1.2;
    font-family: "Noto Sans JP", "游ゴシック", "メイリオ", Meiryo, -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, sans-serif;
    width: 100%;
  }
  .float__sp__btn li.menu span {
    background: #fff;
  }
  .float__sp__btn li.menu .fa-bars {
    display: inline;
    color: #2697C8;
  }
  .float__sp__btn li.menu .fa-xmark {
    display: none;
    color: #2697C8;
  }
  .float__sp__btn li.menu.js--on .fa-bars {
    display: none;
  }
  .float__sp__btn li.menu.js--on .fa-xmark {
    display: inline;
  }
  .float__sp__btn li .svg-inline--fa {
    font-size: 2em;
    margin: 0;
    padding: 0.2em 0;
  }
}
footer {
  background-color: #fff;
  padding: 30px 0 50px;
  font-family: "Shippori Mincho", "Noto Serif JP", "游明朝", Hiragino Mincho ProN, "HGS明朝E", "メイリオ", Meiryo, serif;
}
footer .contact {
  margin: 0 auto 30px;
  padding: 12px;
}
footer .contact .inner {
  padding: 20px 100px;
}
footer .contact p {
  text-align: center;
}
footer .contact p .tellink {
  letter-spacing: 0.05em;
}
footer .contact .pc__none {
  display: none;
}
footer .cool-biz {
  margin: 0 0 56px;
}
footer .dev {
  margin: 0 0 50px;
}
footer .dev small {
  font-size: 1.2rem;
  display: block;
  margin: 0 0 10px;
}
footer .dev > ul {
  justify-content: center;
  gap: 40px;
}
footer .dev > ul > li dl {
  align-items: center;
}
footer .dev > ul > li dd li a {
  color: #2b88bd;
  text-decoration: underline;
}
footer .dev > ul > li dd li a .fa-angle-right {
  margin-right: 0.5em;
}
footer .dev img {
  max-width: 210px;
}
footer .dev li:nth-child(2) img {
  max-width: 162px;
}
footer .bnr {
  margin: 0 0 50px;
}
footer .bnr ul {
  display: flex;
  gap: 9px;
  justify-content: center;
}
footer .bnr ul li {
  width: 30%;
}
footer .bnr ul li img {
  width: 100%;
}
footer .copy {
  text-align: center;
}

@media (max-width: 750px) {
  footer {
    padding: 8% 4%;
  }
  footer .contact {
    padding: 4.347826087%;
    margin: 0 auto 5%;
  }
  footer .contact .inner {
    padding: 0;
  }
  footer .contact p {
    line-height: 2;
  }
  footer .contact .tel {
    margin-top: 10px;
  }
  footer .contact .pc__none {
    display: block;
  }
  footer .cool-biz {
    margin: 0 0 7%;
  }
  footer .dev {
    margin: 0 auto 10%;
    padding: 0 20.2898550725%;
    box-sizing: border-box;
  }
  footer .dev small {
    margin: 0 0 3%;
  }
  footer .dev > ul {
    flex-direction: column;
    align-items: flex-start;
    gap: 35px;
    margin: 0;
  }
  footer .dev > ul > li {
    margin: 0 0 6%;
  }
  footer .dev > ul > li:nth-child(1) {
    width: 100%;
    margin: 0;
  }
  footer .dev > ul > li:nth-child(1) dt {
    width: 100%;
    margin: 0;
  }
  footer .dev > ul > li:nth-child(2) {
    width: 100%;
    margin: 0;
  }
  footer .dev > ul > li:nth-child(2) img {
    width: 162px;
  }
  footer .dev > ul > li:nth-child(3) {
    width: 100%;
  }
  footer .dev > ul > li:nth-child(3) img {
    width: 211px;
  }
  footer .dev > ul > li dl {
    display: block;
  }
  footer .dev img {
    width: 100%;
  }
  footer .bnr {
    margin: 0 0 30px;
  }
  footer .bnr ul {
    gap: 2.1333333333%;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
  footer .bnr ul li {
    width: 83.4782608696%;
  }
}
.box-fnav {
  position: relative;
  padding: 22px 0;
  font-family: "Shippori Mincho", "Noto Serif JP", "游明朝", Hiragino Mincho ProN, "HGS明朝E", "メイリオ", Meiryo, serif;
  background: url(../images/f_border_pc.png) no-repeat top center;
  background-size: contain;
}
.box-fnav .gotop {
  position: absolute;
  background: #fff;
  color: #333;
  top: 0;
  bottom: 0;
  right: 5px;
  width: 50px;
  height: 50px;
  margin: auto;
  padding: 14px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.2rem;
  cursor: pointer;
  box-sizing: border-box;
  transition: opacity 0.2s ease 0s, bottom 0.2s ease 0s;
  opacity: 0;
  z-index: 99;
  border-radius: 50%;
}
.box-fnav .gotop.on {
  opacity: 1;
  top: auto;
  bottom: 5px;
  position: fixed;
}
.box-fnav .gotop.off {
  opacity: 0;
  top: auto;
  bottom: -50px;
  position: fixed;
}
.box-fnav .gotop.last {
  opacity: 1;
  top: 0;
  bottom: 0;
  position: absolute;
}
.box-fnav ul.flex {
  justify-content: center;
  position: relative;
}
.box-fnav ul.flex::after {
  position: absolute;
  content: "";
  background-color: #D9D9D9;
  width: 100%;
  max-width: 840px;
  height: 1px;
  left: calc(50% - 420px);
  bottom: -20px;
}
.box-fnav li {
  margin-right: 1em;
  padding-right: 1em;
  line-height: 1;
  font-size: 1.2rem;
}
.box-fnav li:last-child {
  margin-right: 0;
  padding-right: 0;
  border: none;
}
.box-fnav li span.new {
  display: none;
}
.box-fnav li.lp {
  display: none;
}

@media (max-width: 750px) {
  .box-fnav {
    background-image: url(../images/f_border_sp.png);
    position: relative;
    padding: 5px 0 0;
  }
  .box-fnav .gotop {
    position: fixed;
    top: auto;
    bottom: 5px;
    right: 5px;
    width: 30px;
    height: 30px;
    font-size: 2.6rem;
  }
  .box-fnav .gotop.on {
    opacity: 1;
    top: auto;
    bottom: 5px;
    position: fixed;
  }
  .box-fnav .gotop.off {
    opacity: 0;
    top: auto;
    bottom: -50px;
    position: fixed;
  }
  .box-fnav .gotop.last {
    opacity: 1;
    top: auto;
    bottom: 5px;
    position: fixed;
  }
  .box-fnav ul.flex {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .box-fnav ul.flex::after {
    content: none;
  }
  .box-fnav li:last-child,
  .box-fnav li {
    position: relative;
    border: none;
    margin: 0;
    line-height: 1.8;
    width: 50%;
    font-size: 1.3rem;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: center;
  }
  .box-fnav li a {
    width: 100%;
    border: 1px solid #939282;
    text-decoration: none;
    background: #fff;
    display: block;
    text-align: center;
    padding: 0.5em;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.box-notice {
  padding: 20px 0;
}
.box-notice dl {
  max-width: 1020px;
  margin: 0 auto;
  align-items: center;
}
.box-notice dt {
  background: #fff;
  text-align: center;
  width: 120px;
  box-sizing: border-box;
  border: 1px solid #333;
  margin-right: 20px;
  padding: 0.6em 0;
  line-height: 1.4;
  font-size: 1.2rem;
}
.box-notice dd {
  width: 875px;
}
.box-notice dd a {
  color: #2b88bd;
  text-decoration: underline;
}
@media (max-width: 750px) {
  .box-notice {
    padding: 2.6666666667% 2.6666666667% 5.3333333333%;
  }
  .box-notice dl {
    align-items: flex-start !important;
    flex-direction: column;
    max-width: 100% !important;
  }
  .box-notice dt {
    width: max-content;
    font-size: 1.2rem;
    padding: 3.4666666667% 9.8550724638% 2.6666666667%;
    margin: 0 0 1.7391304348%;
  }
  .box-notice dd {
    width: 100%;
    font-size: 1.2rem;
    line-height: 1.5;
    letter-spacing: 0.08em;
  }
}

#box-contact {
  padding: 68px 0 62px;
  background: url(../images/cv_bg.jpg);
}
#box-contact ul {
  justify-content: center;
  gap: 0 20px;
}
#box-contact ul .cv__btn a {
  display: block;
  padding: 23px 0;
  text-align: center;
  position: relative;
  width: min(30.793vw, 388px);
  font-weight: 400;
  margin: 0 auto;
}
#box-contact ul .cv__btn svg {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 750px) {
  #box-contact ul {
    flex-direction: column;
    gap: 12px 0;
  }
  #box-contact ul .cv__btn a {
    width: 100%;
    font-size: 2rem;
  }
}

.staff {
  margin: 0 0 33px;
}
.staff .staff__inner {
  border-radius: 11px;
  background: var(--Style, #EDECE1);
  text-align: center;
  padding: 28px;
  box-sizing: border-box;
}
.staff .staff__inner .staff__tit {
  text-align: center;
  display: inline-block;
  margin: 0 0 31px;
  font-weight: 500;
}
.staff .staff__inner .staff__tit span {
  position: relative;
  z-index: 2;
  display: inline-block;
}
.staff .staff__inner .staff__tit span::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 14px;
  background: var(--DDE95C, #DDE95C);
  z-index: -1;
  bottom: 0;
  left: 0;
}
.staff .staff__inner ul {
  flex-direction: row;
  gap: 30px;
  justify-content: center;
  height: auto !important;
}
.staff .staff__inner ul li {
  width: 300px;
}
.staff .staff__inner ul li figure {
  width: 136px;
  margin: 0 auto 14px;
}
.staff .staff__inner ul li figure img {
  vertical-align: middle;
}
.staff .staff__inner ul li dt {
  background: var(--Linear, linear-gradient(180deg, #C85E6B 0%, #DD818C 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
  margin: 0 0 8px;
}
.staff .staff__inner ul li dd {
  line-height: 1.857;
}
@media (max-width: 750px) {
  .staff {
    overflow: hidden;
  }
  .staff .staff__inner {
    border-radius: 0;
    padding: 19px 0 0;
    overflow: hidden;
    position: relative;
  }
  .staff .staff__inner .staff__tit span {
    display: block;
    text-align: center;
  }
  .staff .staff__inner .staff__tit span:first-child::before {
    width: 120%;
    height: 7px;
    left: 50%;
    transform: translateX(-50%);
  }
  .staff .staff__inner .staff__tit span:last-child::before {
    width: 110%;
    height: 7px;
    left: 50%;
    transform: translateX(-50%);
  }
  .staff .staff__inner .swiper-container {
    overflow: visible !important;
  }
  .staff .staff__inner ul {
    gap: 0;
    padding: 0 !important;
    margin: 0 0 48px;
  }
  .staff .staff__inner #staff-swiper-container {
    overflow: hidden;
  }
  .staff .staff__inner #staff-swiper-wrapper.flex {
    display: block !important;
  }
  .staff .staff__inner #staff-swiper-wrapper .slick-track {
    display: flex !important;
  }
  .staff .staff__inner #staff-swiper-wrapper .slick-slide {
    flex: 0 0 auto !important;
    width: 51%;
    margin: 0 10px;
    box-sizing: border-box;
  }
  .staff .staff__inner #staff-swiper-container .slick-dots {
    position: relative;
    bottom: -35px;
    left: 50%;
    transform: translateX(-50%);
    display: flex !important;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
    list-style: none;
    z-index: 10;
  }
  .staff .staff__inner #staff-swiper-container .slick-dots li {
    margin: 0;
    width: max-content;
  }
  .staff .staff__inner #staff-swiper-container .slick-dots li button:before {
    font-size: 30px;
    color: #fff;
    opacity: 1;
  }
  .staff .staff__inner #staff-swiper-container .slick-dots li.slick-active button:before {
    color: #DD818C;
  }
  .staff .staff__inner .slick-prev, .staff .staff__inner .slick-next {
    display: block !important;
    z-index: 10;
  }
  .staff .staff__inner .slick-prev svg, .staff .staff__inner .slick-next svg {
    color: #333;
    width: 16px;
    height: 31px;
  }
  .staff .staff__inner .slick-prev::before, .staff .staff__inner .slick-next::before {
    color: rgba(0, 0, 0, 0);
  }
  .staff .staff__inner .slick-next {
    right: min(17.866vw, 67px);
  }
  .staff .staff__inner .slick-prev {
    left: 67px;
  }
  .staff .staff__inner .slick-track {
    display: flex;
  }
}

#contact .staff {
  padding: 43px 0 0;
}
@media (max-width: 750px) {
  #contact .staff {
    padding: 32px 0 0;
  }
}

.box-caution {
  padding: 40px 0;
}
.box-caution li {
  font-family: "Noto Sans JP", "游ゴシック", "メイリオ", Meiryo, -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, sans-serif;
}

@media (max-width: 750px) {
  .box-caution {
    padding: 8% 5.3333333333%;
  }
}
/*sec__gotop*/
.sec__gotop {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 70px;
  background: #000;
  z-index: 2;
}
.sec__gotop > div {
  padding: 100% 0 0;
  height: 0;
}
.sec__gotop div.flex {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  color: #fff;
  line-height: 1;
  font-size: 4rem;
}

@media (max-width: 750px) {
  .sec__gotop {
    bottom: 8rem;
    right: 1rem;
    width: 17.3333333333%;
    max-width: 65px;
  }
  .sec__gotop div.flex {
    font-size: 3rem;
  }
}
#bnr-area {
  background-color: #fff;
}

#contact .header ul {
  transform: translateX(0);
}
#contact .header ul a {
  padding: 1em;
}
#contact .form-tit {
  padding: 60px 0 10px;
}
#contact .form-tit h3 {
  text-align: center;
  margin: 0 0 20px;
  font-size: 2.4rem;
}
#contact .form-tit p {
  text-align: center;
  font-size: 1.6rem;
  margin: 0 0 20px;
  color: #da2a3a;
}
#contact .form-tit p.time__caution {
  pointer-events: none;
}
#contact .form-tit p.font-gc {
  color: #000;
}
#contact .form {
  padding: 0 0 1px;
}
#contact .form h4 {
  padding: 0.5em 1em;
  font-size: 1.4rem;
  font-weight: normal;
  color: #fff;
  background: #4B4B7C;
}
#contact .form table {
  width: 100%;
  box-sizing: border-box;
  font-size: 1.4rem;
  border-top: 1px solid #d6d5d1;
  border-left: 1px solid #d6d5d1;
  margin: 0 0 20px;
}
#contact .form th, #contact .form td {
  padding: 1em;
  border-bottom: 1px solid #d6d5d1;
  border-right: 1px solid #d6d5d1;
}
#contact .form th {
  font-weight: normal;
  background: #E1EDF1;
  width: 20%;
}
#contact .form th span {
  color: #da2a3a;
  font-weight: normal;
  font-size: 1.2rem;
}
#contact .form ul {
  color: #da2a3a;
  margin: 0 0 40px;
}
#contact .form .color {
  color: #000;
}
#contact .form ul li:before {
  content: "・";
}
#contact .form td {
  background: #fff;
}
#contact .form input {
  padding: 0.5em 1em;
  font-size: 1.4rem;
  box-sizing: border-box;
  width: 180px;
}
#contact .form .cal-table ul.date li {
  display: flex;
  gap: 14px;
}
#contact .form .cal-table label[for=data01_1],
#contact .form .cal-table label[for=data01_2] {
  display: block;
  width: max-content;
  padding: 5px 43px 5px 13px;
  box-sizing: border-box;
  border: 1px solid #D8D8D8;
}
#contact .form .cal-table label input {
  width: auto;
}
#contact .form .mid input {
  width: 290px;
}
#contact .form .lag input {
  width: 600px;
}
#contact .form .res input {
  width: 20px;
}
#contact .form textarea {
  width: 600px;
}
#contact .form .res p {
  margin: 10px 0 0 0;
}
#contact .form .res label {
  margin: 0 10px 0 0;
}
#contact .form .res label:last-child {
  margin: 0;
}
#contact .form .cal-table label {
  margin-right: 1em;
}
#contact .form .ui-datepicker table {
  display: table;
  width: 100%;
  font-size: 0.9em;
  border-collapse: collapse;
  margin: 0 0 0.4em;
}
#contact .form .ui-datepicker tbody {
  display: table-row-group;
}
#contact .form .ui-datepicker th {
  width: auto;
  display: table-cell;
  padding: 0.7em 0.3em;
  text-align: center;
  font-weight: bold;
  border: 0;
  background: #fff;
}
#contact .form .ui-datepicker th span {
  font-size: inherit;
  color: inherit;
}
#contact .form .ui-datepicker tr {
  display: table-row;
}
#contact .form .ui-datepicker td {
  display: table-cell;
  width: auto;
  border: 0;
  padding: 1px;
}
#contact .form tr.guidance input {
  width: 20px;
}
#contact .form tr.guidance td.flex {
  align-items: baseline;
}
#contact .form tr.guidance label {
  margin: 0 10px 0 0;
}
#contact .form tr.guidance textarea {
  width: 290px;
  height: 42px;
  padding: 10px;
  box-sizing: border-box;
  font-family: "メイリオ", Meiryo, serif;
}
#contact .cal-table p.time__caution {
  color: #da2a3a;
  border: none;
  font-size: 1.4rem;
  pointer-events: none;
}
#contact .request02 .form-tit {
  background: #fff;
}
#contact .request02 .form {
  background: #fff;
}
#contact .request02 .form h4 {
  color: #000;
  background: #ecd6d4;
  border-top: 1px solid #868278;
  border-left: 1px solid #868278;
  border-right: 1px solid #868278;
}
#contact .request02 .form table {
  border-top: 1px solid #868278;
  border-left: 1px solid #868278;
}
#contact .request02 .form th, #contact .request02 .form td {
  border-bottom: 1px solid #868278;
  border-right: 1px solid #868278;
}
#contact .request02 .form th {
  background: #faf8f2;
}
#contact .request02 .form th span {
  color: #da2a3a;
}
#contact .request02 .form ul {
  color: #da2a3a;
}
#contact .request02 .form .color {
  color: #000;
}
#contact .request02 .form td {
  background: red;
}
#contact .request02 .form-remarks {
  background: #fff;
}
#contact #reservation-box {
  display: none;
}
#contact #reservation-box .information {
  padding: 0;
}
#contact #reservation-box .information p {
  margin: 0;
}
#contact #reservation-box .form-info {
  padding: 0 0 40px;
}
#contact #reservation-box .cal-table li {
  color: #000;
  list-style: none;
}
#contact #reservation-box .cal-table li:before {
  content: "";
  display: none;
}
#contact #reservation-box .cal-table .cal-list {
  font-size: 1rem;
  line-height: 1.4;
  display: inline-block;
}
#contact #reservation-box .cal-table .cal-list span {
  margin-left: 0;
}
#contact #reservation-box .cal-table .cal-list .ui-datepicker .ui-datepicker-prev span,
#contact #reservation-box .cal-table .cal-list .ui-datepicker .ui-datepicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px;
}
#contact #reservation-box .cal-table .cal-list .ui-datepicker-calendar {
  margin: 0 0 0.4em;
}
#contact #reservation-box .cal-table .cal-list .ui-datepicker-calendar th {
  padding: 0.7em 0.3em;
  border: none;
}
#contact #reservation-box .cal-table .cal-list .ui-datepicker-calendar td {
  padding: 1px;
  border: none;
}
#contact #reservation-box .cal-table .cal-data {
  margin: 0 auto 10px;
}
#contact #reservation-box .cal-table .cal-data li {
  float: left;
  width: 36%;
  vertical-align: top;
}
#contact #reservation-box .cal-table .cal-data > li:first-child {
  margin-right: 20px;
}
#contact #reservation-box .cal-table .cal-data li input[type=text] {
  margin-bottom: 10px;
  display: none;
}
#contact #reservation-box .cal-table .cal-data li:nth-child(1) p {
  margin: 0 0 0 59px;
  padding: 5px 0;
  border: 1px solid #ccc;
  display: inline-block;
}
#contact #reservation-box .cal-table .cal-data li:nth-child(2) div {
  vertical-align: top;
  display: inline-block;
  width: 70%;
}
#contact #reservation-box .cal-table .cal-data li:nth-child(2) p {
  /*margin:0 0 0 33px;*/
  padding: 5px 0;
  border: 1px solid #ccc;
}
#contact #reservation-box .cal-table .cal-data li p label {
  display: block;
  padding-left: 1rem;
}
#contact #reservation-box .cal-table .cal-data input {
  width: auto;
}
#contact #reservation-box .cal-table .days > td > div {
  margin: 0 0 30px;
  border-bottom: 1px solid #ccc;
  padding: 0 0 30px;
}
#contact #reservation-box .cal-table .days > td > div + div {
  margin: 0;
  border: none;
}
#contact #reservation-box .cal-table .days .term {
  margin: 0;
}
#contact #reservation-box .cal-table .days .term li {
  color: #da2a3a;
  list-style: none;
  font-size: 1.4rem;
  line-height: 2;
}
#contact #reservation-box .cal-table .days .term .time__caution a {
  pointer-events: none;
}
#contact #reservation-box .cal-table label {
  margin-right: 1em;
}
#contact #reservation-box .cal-table label input {
  width: auto;
}
#contact #reservation-box .cal-table table {
  border: none;
}
#contact #reservation-box .cal-table table th {
  background: transparent;
  width: auto;
}
#contact #reservation-box .cal-table table th span {
  color: inherit;
  font-size: 0.9rem;
}
#contact #reservation-box .cal-table .cal-data li:nth-child(2) p.time__caution {
  color: #da2a3a;
  border: none;
  font-size: 1.2rem;
}
#contact #confirm .cal-table .days > td > div {
  border-bottom: none;
}
#contact .form-remarks {
  font-size: 1.6rem;
  padding: 0 0 40px;
}
#contact .form-remarks dl {
  margin: 0 0 40px;
}
#contact .form-remarks dt {
  text-align: center;
  margin: 0 0 40px;
}
#contact .form-remarks dd ul {
  margin: 0 auto 40px;
}
#contact .form-remarks dd li {
  text-align: center;
}
#contact .form-remarks dd p {
  text-align: center;
}
#contact .form-remarks dd p a {
  color: #279bc9;
  text-decoration: underline;
  font-size: 1.3rem;
}
#contact .form-remarks .submit {
  justify-content: center;
}
#contact .form-remarks .submit li {
  position: relative;
  color: red;
  width: 290px;
  margin-right: 20px;
}
#contact .form-remarks .submit li:last-child {
  margin: 0;
}
#contact .form-remarks .submit li .fa-angle-right {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0.5em;
  margin: auto;
  color: #fff;
}
#contact .form-remarks .submit input {
  background: #E60039;
  border: none;
  width: 100%;
  box-sizing: border-box;
  padding: 0.75em 1em;
  font-size: 1.8rem;
  color: #fff;
  cursor: pointer;
  text-align: center;
  border-radius: 0;
  -webkit-appearance: none;
}
#contact .form-remarks .submit .return input {
  background: #000;
}
@media (max-width: 750px) {
  #contact .header ul {
    display: block;
  }
  #contact .header ul li {
    width: 100%;
  }
  #contact .header ul a {
    padding: 0.5em;
  }
  #contact .form-tit {
    padding: 8% 2.6666666667% 2%;
    font-size: 2rem;
  }
  #contact .form-tit h3 {
    margin: 0 0 4%;
  }
  #contact .form-tit p {
    margin: 0 0 4%;
    text-align: left;
  }
  #contact .form-tit p.time__caution {
    pointer-events: auto;
  }
  #contact .form {
    padding: 0 2.6666666667%;
  }
  #contact .form table, #contact .form tbody, #contact .form tr, #contact .form th, #contact .form td {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }
  #contact .form table {
    margin: 0 0 6%;
  }
  #contact .form th {
    width: 100%;
  }
  #contact .form ul {
    margin: 0 0 6%;
    font-size: 1.6rem;
  }
  #contact .form input {
    width: 100%;
  }
  #contact .form textarea {
    width: 100%;
  }
  #contact .form .mid input {
    width: 100%;
  }
  #contact .form .lag input {
    width: 100%;
  }
  #contact .form .res input {
    width: 5%;
  }
  #contact .form .res p {
    margin: 2% 0 0 0;
  }
  #contact .form .res label {
    margin: 0 3% 0 0;
  }
  #contact .form .res label:last-child {
    margin: 0;
  }
  #contact .form tr.guidance input {
    width: 10%;
  }
  #contact .form tr.guidance td.flex {
    align-items: flex-start;
  }
  #contact .form tr.guidance label {
    display: block;
    margin: 0;
  }
  #contact .form tr.guidance textarea {
    width: 100%;
    padding: 3%;
  }
  #contact .form .cal-table label[for=data01_1],
  #contact .form .cal-table label[for=data01_2] {
    padding: 5px 13px;
    margin: 0;
  }
  #contact .cal-table p.time__caution {
    pointer-events: auto;
  }
  #contact #reservation-box .information {
    padding: 0;
  }
  #contact #reservation-box .information p {
    margin: 0;
  }
  #contact #reservation-box .form-info {
    padding: 0 0 40px;
  }
  #contact #reservation-box .cal-table .days div table {
    display: table;
  }
  #contact #reservation-box .cal-table .days div tbody {
    display: table-row-group;
  }
  #contact #reservation-box .cal-table .days div tr {
    display: table-row;
  }
  #contact #reservation-box .cal-table .days div th, #contact #reservation-box .cal-table .days div td {
    display: table-cell;
    width: auto;
  }
  #contact #reservation-box .cal-table .cal-list {
    padding: 0 0 4%;
    display: block;
  }
  #contact #reservation-box .cal-table .cal-list tr {
    display: table-row;
  }
  #contact #reservation-box .cal-table .cal-list thead {
    display: table-header-group;
  }
  #contact #reservation-box .cal-table .cal-list tbody {
    display: table-row-group;
  }
  #contact #reservation-box .cal-table .cal-data li {
    float: none;
    width: auto;
  }
  #contact #reservation-box .cal-table .cal-list .ui-datepicker {
    width: 98%;
  }
  #contact #reservation-box .cal-table .cal-list .ui-datepicker a,
  #contact #reservation-box .cal-table .cal-list .ui-datepicker span {
    line-height: 2;
    text-align: center;
  }
  #contact #reservation-box .cal-table .cal-data li:nth-child(1) p,
  #contact #reservation-box .cal-table .cal-data li:nth-child(2) p {
    margin: 0 auto;
    line-height: 2;
  }
  #contact #reservation-box .cal-table .cal-data li:nth-child(2) div {
    display: block;
    width: auto;
  }
  #contact #reservation-box .cal-table .days .term .time__caution a {
    pointer-events: auto;
  }
  #contact .form-remarks {
    font-size: 1.6rem;
    padding: 0 2.6666666667% 6%;
  }
  #contact .form-remarks dl {
    margin: 0 0 4%;
  }
  #contact .form-remarks dt {
    margin: 0 0 4%;
    text-align: left;
  }
  #contact .form-remarks dd ul {
    margin: 0 auto 4%;
  }
  #contact .form-remarks dd li {
    text-align: left;
  }
  #contact .form-remarks dd p {
    text-align: left;
  }
  #contact .form-remarks .submit li {
    width: 49%;
    margin-right: 2%;
  }
  #contact .form-remarks .submit li:last-child {
    margin-right: 0;
  }
}

section.intro {
  padding: 60px 0 0;
}

.intro p {
  text-align: center;
  margin: 0 0 20px;
}

.intro p b {
  color: #da2a3a;
  font-weight: normal;
}

.cal-table li {
  color: #000;
  list-style: none;
}

.cal-table li:before {
  content: "";
  display: none;
}

.cal-table .cal-list {
  font-size: 1rem;
  line-height: 1.4;
  /*padding:0 0 0 59px;*/
  display: inline-block;
}

.cal-table .cal-list span {
  margin-left: 0;
}

.cal-table .cal-list .ui-datepicker .ui-datepicker-prev span,
.cal-table .cal-list .ui-datepicker .ui-datepicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px;
}

.cal-table .cal-list .ui-datepicker {
  width: 18em;
}

.cal-table .cal-data {
  margin: 0 auto 10px;
}

.cal-table .cal-data li {
  float: left;
  width: 36%;
  vertical-align: top;
}

.cal-table .cal-data > li:first-child {
  margin-right: 20px;
}

.cal-table .cal-data li input[type=text] {
  margin-bottom: 10px;
  display: none;
}

.cal-table .cal-data li:nth-child(1) p {
  margin: 0 0 0 59px;
  padding: 5px 0;
  border: 1px solid #ccc;
  display: inline-block;
}

.cal-table .cal-data li:nth-child(2) div {
  vertical-align: top;
  display: inline-block;
  width: 70%;
}

.cal-table .cal-data li:nth-child(2) p {
  /*margin:0 0 0 33px;*/
  padding: 5px 0;
  border: 1px solid #ccc;
}

.cal-table .cal-data li p label {
  display: block;
  padding-left: 1rem;
}

.cal-table .cal-data input {
  width: auto;
}

.cal-table .days > td > div + div {
  margin: 0;
  border: none;
}

.cal-table .days .term {
  margin: 0;
}

.cal-table .days .term li {
  color: #da2a3a;
  list-style: none;
}

.cal-table tr:nth-of-type(3) .term {
  margin: 30px 0 0;
}

.cal-table tr:nth-of-type(3) .term li {
  color: #da2a3a;
  list-style: none;
}

.cal-table label {
  margin-right: 1em;
}

.cal-table label input {
  width: auto;
}

.cal-table table {
  border: none;
}

.cal-table table th {
  background: transparent;
  width: auto;
}

.cal-table table th span {
  color: inherit;
  font-size: 0.9rem;
}

.cal-table .cal-data li:nth-child(2) p.time__caution {
  color: #da2a3a;
  border: none;
  font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
  section.intro {
    padding: 10% 0 0;
  }
  .cal-table .days div table {
    display: table;
  }
  .cal-table .days div tbody {
    display: table-row-group;
  }
  .cal-table .days div tr {
    display: table-row;
  }
  .cal-table .days div th, .cal-table .days div td {
    display: table-cell;
    width: auto;
  }
  .cal-table .cal-list {
    padding: 0 0 4%;
    display: block;
  }
  .cal-table .cal-list tr {
    display: table-row;
  }
  .cal-table .cal-list thead {
    display: table-header-group;
  }
  .cal-table .cal-list tbody {
    display: table-row-group;
  }
  .cal-table .cal-data li {
    float: none;
    width: auto;
  }
  .cal-table .cal-list .ui-datepicker {
    width: 98%;
  }
  .cal-table .cal-list .ui-datepicker a,
  .cal-table .cal-list .ui-datepicker span {
    line-height: 2;
    text-align: center;
  }
  .cal-table .cal-data li:nth-child(1) p,
  .cal-table .cal-data li:nth-child(2) p {
    margin: 0 auto;
    line-height: 2;
  }
  .cal-table .cal-data li:nth-child(2) div {
    display: block;
    width: auto;
  }
  .cal-table .cal-data li:nth-child(2) p.time__caution {
    font-size: 1.6rem;
  }
}
.form-remarks dd ul {
  margin: 0;
}

/*******************************************
  reservation__bnr
*******************************************/
.reservation__bnr {
  padding: 71px 0 0;
}
@media (max-width: 750px) {
  .reservation__bnr {
    padding: 8% 2.6666666667% 2%;
  }
}

/*******************************************
  enquete
*******************************************/
#contact.enquete .box01 {
  margin: 50px 0 30px;
  padding: 0;
}
#contact.enquete .box01 .sec__in__s {
  padding: 0;
  background-color: transparent;
  border: none;
}
#contact.enquete .box01 p {
  font-size: 2.4rem;
  text-align: center;
}
@media (max-width: 750px) {
  #contact.enquete .box01 {
    margin: 8% 0 4%;
  }
}
#contact.enquete .form tr td.flex {
  flex-wrap: wrap;
}
#contact.enquete .form tr:nth-of-type(3) label {
  margin: 0 16px 0 0;
}
#contact.enquete .form tr:nth-of-type(3) label:nth-of-type(8) {
  margin: 0 10px 0 0;
}
#contact.enquete .form tr:nth-of-type(7) label,
#contact.enquete .form tr:nth-of-type(8) label,
#contact.enquete .form tr:nth-of-type(11) label,
#contact.enquete .form tr:nth-of-type(12) label {
  margin: 0 36px 0 0;
}
#contact.enquete .form tr:nth-of-type(9) td {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#contact.enquete .form tr:nth-of-type(9) label {
  margin: 0 45px 5px 0;
}
#contact.enquete .form tr:nth-of-type(9) label:nth-of-type(13) {
  margin: 0 10px 5px 0;
}
#contact.enquete .form tr:nth-of-type(9) textarea {
  width: 260px;
}
#contact.enquete .form tr:nth-of-type(12) label {
  margin: 0 45px 5px 0;
}
#contact.enquete .form tr:nth-of-type(12) label:nth-of-type(8) {
  margin: 0 10px 5px 0;
}
#contact.enquete .form tr:nth-of-type(12) textarea {
  width: 260px;
}
#contact.enquete .form tr input[type=radio] {
  width: 20px;
}
#contact.enquete .form tr input[type=text][name=place-area],
#contact.enquete .form tr input[type=text][name=place-station] {
  margin: 0 0 0 5px;
}
#contact.enquete .form tr.check ul {
  display: flex;
  flex-wrap: wrap;
  color: inherit;
  margin: 0;
}
#contact.enquete .form tr.check ul li:before {
  content: none;
}
#contact.enquete .form tr input[type=checkbox] {
  width: 20px;
}
@media (max-width: 750px) {
  #contact.enquete .form tr:nth-of-type(3) label {
    margin: 0 4% 0 0;
  }
  #contact.enquete .form tr:nth-of-type(3) input[type=text] {
    width: 260px;
  }
  #contact.enquete .form tr:nth-of-type(7) label,
  #contact.enquete .form tr:nth-of-type(8) label,
  #contact.enquete .form tr:nth-of-type(11) label,
  #contact.enquete .form tr:nth-of-type(12) label {
    margin: 0 2% 0 0;
  }
  #contact.enquete .form tr:nth-of-type(9) td {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  #contact.enquete .form tr:nth-of-type(9) label {
    margin: 0 7% 3% 0;
  }
  #contact.enquete .form tr:nth-of-type(9) label:nth-of-type(13) {
    margin: 0 3% 1% 0;
  }
  #contact.enquete .form tr:nth-of-type(9) textarea {
    width: 260px;
  }
  #contact.enquete .form tr:nth-of-type(11) td {
    display: flex;
    flex-wrap: wrap;
  }
  #contact.enquete .form tr:nth-of-type(11) label {
    margin: 0 7% 3% 0;
  }
  #contact.enquete .form tr:nth-of-type(11) label:nth-of-type(4) {
    margin: 0 0 3% 0;
  }
  #contact.enquete .form tr:nth-of-type(12) td {
    display: flex;
  }
  #contact.enquete .form tr:nth-of-type(12) label {
    margin: 0 7% 3% 0;
  }
  #contact.enquete .form tr:nth-of-type(12) label:nth-of-type(8) {
    margin: 0 7% 3% 0;
  }
}

.f__float {
  display: none;
}

@media (max-width: 750px) {
  .f__float {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 99999;
  }
  .f__float ul.flex {
    align-items: stretch;
  }
  .f__float li {
    width: auto;
    display: flex;
    flex-grow: 1;
    font-family: "Noto Sans JP", "游ゴシック", "メイリオ", Meiryo, -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, sans-serif;
    font-weight: 700;
    width: 50%;
  }
  .f__float li.btn-tel {
    display: flex;
    color: #000;
    position: relative;
    text-align: center;
    flex-grow: 2;
  }
  .f__float a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    line-height: 1.5;
    padding: 16px 0;
    font-size: 1.4rem;
  }
  .f__float li.btn-tel a {
    background-color: #A27963;
    background-image: url(../images/footer_tel.png);
    background-position: right 10px bottom;
    background-repeat: no-repeat;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #fff;
    line-height: 1.5;
  }
  .f__float li.btn-tel svg {
    font-size: 2rem;
  }
  .f__float li.btn-online a {
    font-size: 1.2rem;
  }
  .f__float li.btn-request a {
    background-color: #E5E049;
  }
}
/*mod*/
.fw__normal {
  font-weight: 400;
}

.fw__bold {
  font-weight: 600;
}

.ff__hw {
  font-family: "Kiwi Maru", "Poppins", sans-serif;
  font-weight: 500;
}

.color__txt__brown {
  color: #A27963;
}

@keyframes anime__btn__ptn01 {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
.anime__btn__ptn01 {
  overflow: hidden;
  position: relative;
}
.anime__btn__ptn01:before {
  position: absolute;
  content: "";
  display: inline-block;
  top: -180px;
  left: 0;
  width: 30px;
  height: 100%;
  background-color: #fff;
  animation: anime__btn__ptn01 3s ease-in-out infinite;
}
.anime__btn__ptn02 {
  transition: opacity 0.5s ease 0s;
}
.anime__btn__ptn02.js--on {
  opacity: 0.5;
}

.anime__scl__ptn01 {
  filter: blur(100px);
  opacity: 0;
  transform: translateY(100px);
  transition: filter 1s ease 0s, opacity 1s ease 0s, transform 1s ease 0s;
}

.js--ing.anime__scl__ptn01 {
  filter: blur(0);
  opacity: 1;
  transform: translateY(0);
}

.anime__up {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 1s ease, transform 1s ease;
}

.anime__up__2 {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 1s ease 0.3s, transform 1s ease 0.3s;
}

.anime__up__3 {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 1s ease 0.6s, transform 1s ease 0.6s;
}

.anime__up.js--ing {
  opacity: 1;
  transform: translateY(0);
}

.anime__up__2.js--ing {
  opacity: 1;
  transform: translateY(0);
}

.anime__up__3.js--ing {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 750px) {
  .anime__up__2 {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 1s ease, transform 1s ease;
  }
  .anime__up__3 {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 1s ease, transform 1s ease;
  }
}
.anime__fadein {
  opacity: 0;
  transition: opacity 1s ease, transform 1s ease;
}

.anime__fadein.js--ing {
  opacity: 1;
}

.anime__slidein {
  overflow: hidden;
}
.anime__slidein .slidein__wrapper {
  overflow: hidden;
  display: inline-block;
  opacity: 0; /*事前に透過0にして消しておく*/
}
.anime__slidein .slidein__inner {
  display: inline-block;
  opacity: 0; /*事前に透過0にして消しておく*/
}
.anime__slidein.js--ing .slidein__wrapper {
  animation-name: slideTextX100;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
  opacity: 0;
}
.anime__slidein.js--ing .slidein__inner {
  animation-name: slideTextX-100;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes slideTextX100 {
  from {
    transform: translateX(-100%); /*要素を左の枠外に移動*/
    opacity: 0;
  }
  to {
    transform: translateX(0); /*要素を元の位置に移動*/
    opacity: 1;
  }
}
@keyframes slideTextX-100 {
  from {
    transform: translateX(100%); /*要素を右の枠外に移動*/
    opacity: 0;
  }
  to {
    transform: translateX(0); /*要素を元の位置に移動*/
    opacity: 1;
  }
}

.anime__fadein__left {
  opacity: 0;
  transform: translateX(-30%);
  transition: opacity 1s ease, transform 1s ease;
}
.anime__fadein__left.js--ing {
  opacity: 1;
  transform: translateX(0);
}

.anime__fadein__right {
  opacity: 0;
  transform: translateX(30%);
  transition: opacity 1s ease, transform 1s ease;
}
.anime__fadein__right.js--ing {
  opacity: 1;
  transform: translateX(0);
}

/*page*/
.fw__normal {
  font-weight: 400;
}

.fw__bold {
  font-weight: 600;
}

.ff__hw {
  font-family: "Kiwi Maru", "Poppins", sans-serif;
  font-weight: 500;
}

.color__txt__brown {
  color: #A27963;
}

#index {
  background-color: #fff;
}
#index .keyVisual {
  position: relative;
}
#index .keyVisual img {
  margin-top: -140px;
  width: 100%;
  vertical-align: middle;
}
#index .keyVisual a {
  color: #fff;
  display: block;
  background-color: rgb(229, 224, 73);
  color: #333;
  width: 100%;
  max-width: 240px;
  text-align: center;
  padding: 6px 0;
  margin: 2px auto 20px;
}
#index .keyVisual a span {
  font-size: 20px;
}
#index .keyVisual__link {
  background-color: rgba(57, 118, 94, 0.66);
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
}
#index .keyVisual__link p {
  color: #fff;
  font-size: 42px;
  text-align: center;
  letter-spacing: 0.3em;
}
@media (max-width: 750px) {
  #index .keyVisual {
    position: relative;
  }
  #index .keyVisual img {
    margin-top: 0;
  }
  #index .keyVisual a {
    max-width: 80%;
  }
  #index .keyVisual a span {
    font-size: 16px;
  }
  #index .keyVisual__link {
    background-color: rgba(57, 118, 94, 0.66);
    padding: 0;
    height: auto;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
  }
  #index .keyVisual__link p {
    font-size: 28px;
  }
}
#index .visual {
  background-color: #C4A79D;
  padding-bottom: 120px;
}
#index .visual h2 {
  font-size: 0;
  line-height: 0;
  width: 100% !important;
}
#index .visual img {
  width: 100%;
}
#index .visual .captxt {
  right: 10px;
  bottom: 10px;
}
#index .visual__content {
  color: #fff;
  width: 700px;
  margin: 70px auto 0;
}
@media (max-width: 750px) {
  #index .visual {
    padding-bottom: 60px;
  }
  #index .visual .captxt {
    right: auto;
    left: 10px;
    bottom: 10px;
  }
  #index .visual__content {
    width: 100%;
    margin: 0 auto;
    padding: 0 4%;
    box-sizing: border-box;
  }
  #index .visual__content p {
    font-size: 12px;
  }
}
#index .sec01 {
  padding: 28px 0 21px;
}
#index .sec01 .sec__in__s {
  text-align: center;
}
#index .sec01 img {
  width: 100%;
  max-width: 700px;
}
@media (max-width: 750px) {
  #index .sec01 {
    padding: 20px 4% 18px;
  }
  #index .sec01 img {
    max-width: 100%;
    width: 86.9565217391%;
  }
}
#index .sec02 {
  padding: 95px 0 76px;
  background: #E5DFD6;
}
#index .sec02 h2 {
  justify-content: center;
  align-items: center;
  gap: 21px;
  position: relative;
  z-index: 2;
  margin: 0 0 66px;
}
#index .sec02 h2::before {
  content: "";
  background: url(../images/index/flower_bg.png) no-repeat center/contain;
  position: absolute;
  width: 109px;
  aspect-ratio: 109/115;
}
#index .sec02 h3 {
  padding: 0.5em 1em;
  color: #fff;
  background: #39765E;
  line-height: 1.8571428571;
}
#index .sec02 table {
  width: 100%;
  box-sizing: border-box;
  border-top: 1px solid #D9D9D9;
  border-left: 1px solid #D9D9D9;
  margin: 0 0 40px;
  line-height: 1.8571428571;
}
#index .sec02 table:last-of-type {
  margin: 0 0 22px;
}
#index .sec02 th, #index .sec02 td {
  padding: 0.5em 1em;
  border-bottom: 1px solid #D9D9D9;
  border-right: 1px solid #D9D9D9;
}
#index .sec02 th {
  font-weight: normal;
  background: #D7CEC1;
  width: 20%;
}
#index .sec02 td {
  background: #fff;
}
@media (max-width: 750px) {
  #index .sec02 {
    padding: 79px 2% 49px;
    box-sizing: border-box;
  }
  #index .sec02 h2 {
    font-size: 2rem;
  }
  #index .sec02 h2 span {
    font-size: 1.4rem;
  }
  #index .sec02 table, #index .sec02 tbody, #index .sec02 tr, #index .sec02 th, #index .sec02 td {
    width: 100%;
    box-sizing: border-box;
    display: block;
  }
  #index .sec02 table {
    margin: 0 0 8%;
  }
}
#index .access {
  padding: 50px 0 50px;
}
#index .access div {
  text-align: center;
}
#index .mainContent__bg {
  position: absolute;
  top: 0;
  width: 60%;
  height: 100%;
}
#index .mainContent__lead {
  position: absolute;
  top: 25%;
  max-width: 420px;
  width: 33%;
  z-index: 2;
}
#index .mainContent__copy {
  text-align: center;
}
#index .mainContent__copy img {
  max-width: 190px;
}
#index .mainContent__title {
  margin-top: 58px;
  font-size: 24px;
  font-weight: normal;
}
#index .mainContent__txt {
  margin-top: 24px;
}
#index .mainContent__img {
  position: absolute;
  top: 125px;
  width: 50%;
}
#index .mainContent__img figure {
  position: relative;
  overflow: hidden;
  max-height: 500px;
}
#index .mainContent__img figure img {
  width: 100%;
}
#index .mainContent__img figcaption {
  color: #fff;
  font-size: 12px;
  position: absolute;
  right: 10px;
  bottom: 4px;
  z-index: 2;
}
#index .mainContent__img figcaption br {
  display: none;
}
#index .mainContent__img p {
  font-size: 32px;
  line-height: 1.5;
  font-family: "Roboto", sans-serif;
  color: #A27963;
}
#index .mainContent__more {
  margin-top: 20px;
  display: block;
}
#index .mainContent__more::after {
  content: "";
  display: block;
  height: 25px;
  width: 100%;
  max-width: 330px;
  margin-top: -20px;
  background-repeat: no-repeat;
  background-position: bottom;
}
#index .mainContent__item {
  position: relative;
  height: 771px;
  margin-bottom: 120px;
}
#index .mainContent__item--ocher {
  height: 837px;
}
#index .mainContent__item--beige .mainContent__lead {
  color: #333;
}
#index .mainContent__item--beige .mainContent__bg {
  background-color: #E5DFD6;
  right: 0;
}
#index .mainContent__item--beige .mainContent__more {
  opacity: 0.3;
}
#index .mainContent__item--beige .mainContent__more::after {
  background-image: url(../images/index/bg_mainContent__arrow_bk.png);
}
#index .mainContent__item--green .mainContent__lead {
  color: #fff;
}
#index .mainContent__item--green .mainContent__bg {
  background-color: #39765E;
  left: 0;
}
#index .mainContent__item--green .mainContent__more {
  opacity: 0.3;
}
#index .mainContent__item--green .mainContent__more::after {
  background-image: url(../images/index/bg_mainContent__arrow_wh.png);
}
#index .mainContent__item--green .mainContent__img p {
  text-align: right;
}
#index .mainContent__item--gray .mainContent__lead {
  color: #fff;
}
#index .mainContent__item--gray .mainContent__bg {
  background-color: #3C3D3E;
  right: 0;
}
#index .mainContent__item--gray .mainContent__more {
  opacity: 0.3;
}
#index .mainContent__item--gray .mainContent__more::after {
  background-image: url(../images/index/bg_mainContent__arrow_wh.png);
}
#index .mainContent__item--gray .mainContent__more {
  opacity: 1;
}
#index .mainContent__item--ocher .mainContent__lead {
  color: #333;
}
#index .mainContent__item--ocher .mainContent__bg {
  background-color: #D9C196;
  left: 0;
}
#index .mainContent__item--ocher .mainContent__more {
  opacity: 0.3;
}
#index .mainContent__item--ocher .mainContent__more::after {
  background-image: url(../images/index/bg_mainContent__arrow_bk.png);
}
#index .mainContent__item--ocher .mainContent__img p {
  text-align: right;
}
#index .mainContent__item--ocher .mainContent__more {
  opacity: 1;
}
#index .mainContent__item--white .mainContent__lead {
  color: #333;
}
#index .mainContent__item--white .mainContent__bg {
  background-color: #F6F4F3;
  right: 0;
}
#index .mainContent__item--white .mainContent__more {
  opacity: 0.3;
}
#index .mainContent__item--white .mainContent__more::after {
  background-image: url(../images/index/bg_mainContent__arrow_bk.png);
}
#index .mainContent__item:nth-child(even) .mainContent__lead {
  left: calc(50% - 560px);
}
#index .mainContent__item:nth-child(even) .mainContent__img {
  right: 40px;
}
#index .mainContent__item:nth-child(odd) .mainContent__lead {
  left: calc(50% + 120px);
}
#index .mainContent__item:nth-child(odd) .mainContent__img {
  left: 40px;
}
@media (max-width: 750px) {
  #index .mainContent__bg {
    position: absolute;
    top: 30px;
    width: 73%;
    height: 100%;
  }
  #index .mainContent__title {
    margin-top: 20px;
    font-size: 16px;
    white-space: nowrap;
  }
  #index .mainContent__txt {
    display: none;
  }
  #index .mainContent__img {
    width: 44%;
  }
  #index .mainContent__img p {
    font-size: 16px;
  }
  #index .mainContent__img figcaption {
    font-size: 12px;
    right: 6px;
    bottom: 8px;
    text-align: right;
  }
  #index .mainContent__img figcaption br {
    display: block;
  }
  #index .mainContent__more {
    margin-top: 20px;
    font-size: 12px;
  }
  #index .mainContent__more::after {
    display: block;
    height: 25px;
    width: 160px;
    margin-top: -20px;
    background-size: contain;
  }
  #index .mainContent__item {
    position: relative;
    height: 465px;
    margin-bottom: 60px;
  }
  #index .mainContent__item:nth-child(even) .mainContent__lead {
    left: calc(50% - 180px);
  }
  #index .mainContent__item:nth-child(even) .mainContent__img {
    right: 4%;
  }
  #index .mainContent__item:nth-child(odd) .mainContent__lead {
    left: calc(50% + 20px);
  }
  #index .mainContent__item:nth-child(odd) .mainContent__img {
    left: 4%;
  }
}
#index .information {
  max-width: 960px;
  display: grid;
  grid-template-columns: 260px 1fr;
  margin: 0 auto 180px;
}
#index .information__title {
  color: #A27963;
  padding-top: 12px;
}
#index .information__list li {
  border-bottom: 1px solid #d9d9d9;
  padding: 12px 0px;
}
#index .information__date {
  display: inline-block;
  margin-right: 25px;
}
@media (max-width: 750px) {
  #index .information {
    display: block;
    margin: 0 4% 90px;
  }
  #index .information__title {
    font-size: 24px;
    padding-top: 0;
  }
  #index .information__date {
    display: block;
    margin-right: 0;
    margin-bottom: 6px;
  }
}
#index .notice {
  font-size: 12px;
  margin-bottom: 12px;
}

.fw__normal {
  font-weight: 400;
}

.fw__bold {
  font-weight: 600;
}

.ff__hw {
  font-family: "Kiwi Maru", "Poppins", sans-serif;
  font-weight: 500;
}

.color__txt__brown {
  color: #A27963;
}

.common_layout .ff__serif {
  font-family: "Shippori Mincho", "Noto Serif JP", "游明朝", Hiragino Mincho ProN, "HGS明朝E", "メイリオ", Meiryo, serif;
}
.common_layout .pc__none {
  display: none;
}
.common_layout .sp__none {
  display: block;
}

figure {
  position: relative;
}

@media (max-width: 750px) {
  .common_layout .pc__none {
    display: block;
  }
  .common_layout .sp__none {
    display: none;
  }
  .common_layout .req__btn {
    width: 80%;
  }
  .common_layout .req__btn a {
    padding: 0.7em;
    font-size: 1.6rem;
  }
}
.pageTitle {
  background-image: url(../images/bg_title.png);
}
.pageTitle__txt {
  color: #fff;
  text-align: center;
  font-size: 24px;
  padding: 30px 0 30px;
  font-family: "Roboto", sans-serif;
  font-weight: normal;
  letter-spacing: 6px;
}

.memo {
  padding: 20px 40px;
  font-size: 12px;
}
@media (max-width: 750px) {
  .memo {
    padding: 20px 4%;
  }
}

.fw__normal {
  font-weight: 400;
}

.fw__bold {
  font-weight: 600;
}

.ff__hw {
  font-family: "Kiwi Maru", "Poppins", sans-serif;
  font-weight: 500;
}

.color__txt__brown {
  color: #A27963;
}

#outline {
  background-color: #fff;
}
#outline .sec01 {
  padding: 95px 0 76px;
  background: #F6F4F3;
}
#outline .sec01 h2 {
  padding: 0.5em 1em;
  color: #fff;
  background: #39765E;
  line-height: 1.8571428571;
}
#outline .sec01 table {
  width: 100%;
  box-sizing: border-box;
  border-top: 1px solid #D9D9D9;
  border-left: 1px solid #D9D9D9;
  margin: 0 0 40px;
  line-height: 1.8571428571;
}
#outline .sec01 table:last-of-type {
  margin: 0 0 22px;
}
#outline .sec01 th, #outline .sec01 td {
  padding: 0.5em 1em;
  border-bottom: 1px solid #D9D9D9;
  border-right: 1px solid #D9D9D9;
}
#outline .sec01 th {
  font-weight: normal;
  background: #D7CEC1;
  width: 20%;
}
#outline .sec01 td {
  background: #fff;
}
@media (max-width: 750px) {
  #outline .sec01 {
    padding: 79px 2% 49px;
    box-sizing: border-box;
  }
  #outline .sec01 h2 {
    font-size: 2rem;
  }
  #outline .sec01 h2 span {
    font-size: 1.4rem;
  }
  #outline .sec01 table, #outline .sec01 tbody, #outline .sec01 tr, #outline .sec01 th, #outline .sec01 td {
    width: 100%;
    box-sizing: border-box;
    display: block;
  }
  #outline .sec01 table {
    margin: 0 0 8%;
  }
}

.fw__normal {
  font-weight: 400;
}

.fw__bold {
  font-weight: 600;
}

.ff__hw {
  font-family: "Kiwi Maru", "Poppins", sans-serif;
  font-weight: 500;
}

.color__txt__brown {
  color: #A27963;
}

#information .sec01 {
  padding: 95px 0 76px;
  background: #F6F4F3;
}
@media (max-width: 750px) {
  #information .sec01 {
    padding: 30px 2% 49px;
    box-sizing: border-box;
  }
}
#information .sec01 .informationList {
  margin: 0 auto;
}
#information .sec01 .informationList li {
  border-bottom: 1px solid rgba(51, 51, 51, 0.26);
  padding: 16px 0 16px;
}
#information .sec01 .informationList__date {
  display: inline-block;
  margin-right: 25px;
}
#information .sec01 .informationList__img {
  margin: 30px 0;
}
#information .sec01 .informationList__img figure {
  text-align: center;
}
@media (max-width: 750px) {
  #information .sec01 .informationList {
    margin: 0 4%;
  }
  #information .sec01 .informationList__date {
    display: block;
    margin-right: 0;
    margin-bottom: 6px;
  }
}
#information .sec01 .informationContent {
  padding-top: 20px;
}
#information .sec01 .informationContent h2 {
  margin: 36px 0 12px;
}
#information .sec01 .informationContent ul {
  list-style-type: disc;
  margin-left: 1em;
}
@media (max-width: 750px) {
  #information .sec01 .informationContent {
    padding: 0 4%;
  }
}
#information .sec01 .navigation {
  margin-top: 40px;
}
#information .sec01 .navigation .nav-links {
  display: flex;
  gap: 60px;
  justify-content: center;
}
#information .sec01 .navigation .nav-links div::before,
#information .sec01 .navigation .nav-links div::after {
  content: "";
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 6px;
  vertical-align: text-bottom;
}
#information .sec01 .navigation .nav-links .nav-previous::before {
  background-image: url(../images/information/icon_arrow_left.png);
  margin-right: 6px;
}
#information .sec01 .navigation .nav-links .nav-next::after {
  background-image: url(../images/information/icon_arrow_right.png);
  margin-left: 6px;
}
#information .sec01 .pagination {
  margin-top: 40px;
}
#information .sec01 .pagination .page-numbers.current {
  color: rgb(237, 115, 115);
}
#information .sec01 .pagination .prev {
  background: url(../images/information/icon_arrow_left.png) no-repeat;
  background-size: contain;
  margin-top: -4px;
  display: inline-block;
  width: 42px;
  height: 42px;
}
#information .sec01 .pagination .next {
  background: url(../images/information/icon_arrow_right.png) no-repeat;
  background-size: contain;
  margin-top: -4px;
  display: inline-block;
  width: 42px;
  height: 42px;
}
#information .sec01 .pagination__link {
  text-align: center;
  margin-top: 40px;
}
#information .sec01 .pagination__link a {
  background-color: rgb(60, 61, 62);
  color: #fff;
  text-align: center;
  display: inline-block;
  padding: 10px 0;
  margin: 0 auto;
  width: 100%;
  max-width: 260px;
}

.fw__normal {
  font-weight: 400;
}

.fw__bold {
  font-weight: 600;
}

.ff__hw {
  font-family: "Kiwi Maru", "Poppins", sans-serif;
  font-weight: 500;
}

.color__txt__brown {
  color: #A27963;
}

#request {
  background-color: #fff;
  /*******************************************
      cal
  *******************************************/
}
#request .header ul {
  transform: translateX(0);
  width: 70%;
  justify-content: flex-end;
}
#request .header ul a {
  padding: 1em;
  border: 1px solid #DD818C;
}
#request .form-tit {
  padding: 60px 0 10px;
}
#request .form-tit h3 {
  text-align: center;
  margin: 0 0 20px;
}
#request .form-tit p {
  text-align: center;
  font-size: 1.6rem;
  margin: 0 0 20px;
}
#request .form {
  padding: 0 0 1px;
}
#request .form h4 {
  padding: 0.5em 1em;
  font-weight: normal;
  color: #fff;
  background: rgb(57, 118, 94);
}
#request .form table {
  width: 100%;
  box-sizing: border-box;
  border-top: 1px solid #D9D9D9;
  border-left: 1px solid #D9D9D9;
  margin: 0 0 20px;
}
#request .form th, #request .form td {
  padding: 1em;
  border-bottom: 1px solid #D9D9D9;
  border-right: 1px solid #D9D9D9;
}
#request .form th {
  font-weight: normal;
  background: rgb(215, 206, 193);
  width: 20%;
}
#request .form th span {
  color: #da2a3a;
}
#request .form ul {
  color: #da2a3a;
  margin: 0 0 40px;
}
#request .form .color {
  color: #333;
}
#request .form ul li:before {
  content: "・";
}
#request .form td {
  background: #fff;
}
#request .form input {
  padding: 0.5em 1em;
  font-size: 1.4rem;
  box-sizing: border-box;
  width: 180px;
  font-family: "Noto Serif JP", "游明朝", Hiragino Mincho ProN, "HGS明朝E", "メイリオ", Meiryo, serif;
}
#request .form .cal-table label input {
  width: auto;
}
#request .form .mid input {
  width: 290px;
}
#request .form .age input {
  width: 160px;
}
#request .form .lag input {
  width: 600px;
}
#request .form .res input,
#request .form .radio input {
  width: 20px;
}
#request .form textarea {
  width: 600px;
}
#request .form .res p {
  margin: 10px 0 0 0;
}
#request .form .res label,
#request .form .radio label {
  margin: 0 10px 0 0;
}
#request .form .res label:last-child,
#request .form .radio label:last-child {
  margin: 0;
}
#request .form .cal-table label {
  margin-right: 1em;
}
@media (max-width: 750px) {
  #request .form-tit {
    padding: 8% 2.6666666667% 2%;
    font-size: 2rem;
    box-sizing: border-box;
  }
  #request .form-tit h3 {
    margin: 0 0 4%;
  }
  #request .form-tit p {
    margin: 0 0 4%;
    text-align: left;
  }
  #request .form {
    padding: 0 2.6666666667%;
  }
  #request .form table, #request .form tbody, #request .form tr, #request .form th, #request .form td {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }
  #request .form table {
    margin: 0 0 6%;
  }
  #request .form th {
    width: 100%;
  }
  #request .form ul {
    margin: 0 0 6%;
    font-size: 1.6rem;
  }
  #request .form input {
    width: 100%;
  }
  #request .form textarea {
    width: 100%;
  }
  #request .form .mid input {
    width: 100%;
  }
  #request .form .lag input {
    width: 100%;
  }
  #request .form .radio label {
    display: block;
  }
  #request .form .res input {
    width: 5%;
  }
  #request .form .res p {
    margin: 2% 0 0 0;
  }
  #request .form .res label {
    margin: 0 3% 0 0;
  }
  #request .form .res label:last-child {
    margin: 0;
  }
}
#request .form-remarks {
  padding: 0 0 40px;
}
#request .form-remarks dl {
  margin: 0 0 40px;
}
#request .form-remarks dt {
  text-align: center;
  margin: 0 0 40px;
}
#request .form-remarks dd ul {
  margin: 0 auto 40px;
}
#request .form-remarks dd li {
  text-align: center;
}
#request .form-remarks dd p {
  text-align: center;
}
#request .form-remarks dd p a {
  color: #279bc9;
  text-decoration: underline;
  font-size: 1.3rem;
}
#request .form-remarks .submit {
  justify-content: center;
}
#request .form-remarks .submit li {
  position: relative;
  color: #fff;
  width: 290px;
  margin-right: 20px;
}
#request .form-remarks .submit li:last-child {
  margin: 0;
}
#request .form-remarks .submit li .fa-angle-right {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0.5em;
  margin: auto;
}
#request .form-remarks .submit input {
  background: #E60039;
  border: none;
  width: 100%;
  box-sizing: border-box;
  padding: 0.75em 1em;
  font-size: 1.8rem;
  color: #fff;
  cursor: pointer;
  text-align: center;
  border-radius: 0;
  -webkit-appearance: none;
  font-family: "Shippori Mincho", "Noto Serif JP", "游明朝", Hiragino Mincho ProN, "HGS明朝E", "メイリオ", Meiryo, serif;
}
#request .form-remarks .submit .return input {
  background: #333333;
}
@media (max-width: 750px) {
  #request .header ul {
    display: block;
    align-items: stretch;
    width: auto;
  }
  #request .header ul li {
    width: 100%;
  }
  #request .header ul li a {
    padding: 0.5em;
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    justify-content: center;
    height: 100%;
    box-sizing: border-box;
    border: 1px solid #c0c3d0;
    line-height: 1.2;
    font-family: "Noto Sans JP", "游ゴシック", "メイリオ", Meiryo, -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, sans-serif;
  }
  #request .form-remarks {
    font-size: 1.6rem;
    padding: 0 2.6666666667% 16%;
  }
  #request .form-remarks dl {
    margin: 0 0 4%;
  }
  #request .form-remarks dt {
    margin: 0 0 4%;
    text-align: left;
  }
  #request .form-remarks dd ul {
    margin: 0 auto 4%;
  }
  #request .form-remarks dd li {
    text-align: left;
  }
  #request .form-remarks dd p {
    text-align: left;
  }
  #request .form-remarks .submit li {
    width: 49%;
    margin-right: 2%;
  }
  #request .form-remarks .submit li:last-child {
    margin-right: 0;
  }
}
#request #reservation-box {
  display: none;
}
#request .cal {
  padding: 0 0 60px;
}
#request .cal table {
  margin: 0;
}
#request .cal .gray {
  background-color: #e2e2e2;
}
#request .cal .gray-out {
  background-color: #e2e2e2;
  opacity: 0.5;
}
#request .cal dt {
  font-size: 1.8rem;
  line-height: 1;
  color: #fff;
  padding: 1rem;
  margin: 0 auto 10px;
  background: #4B4B7C;
  text-align: center;
}
#request .cal table {
  border-top: 1px solid #8a8989;
  border-left: 1px solid #8a8989;
  font-size: 1.6rem;
  width: 100%;
  background: #fff;
  border-collapse: collapse;
  padding: 0;
  margin: 0;
}
#request .cal th,
#request .cal td {
  border-bottom: 1px solid #8a8989;
  border-right: 1px solid #8a8989;
  padding: 1rem;
  text-align: center;
  font-weight: normal;
}
#request .cal table thead th {
  background: #f1f1f1;
}
#request .cal tbody th {
  width: 25%;
  background: #fff;
}
#request .cal tbody th.blue {
  background: #E1EDF1;
}
#request .cal tbody th.red {
  background: #E3CFD1;
}
#request .cal tbody th .priority {
  display: block;
  width: 120px;
  margin: 5px auto 0;
  background-color: #E60039;
  color: #fff;
  text-align: center;
  padding: 0.2em;
  font-size: 1.2rem;
  box-sizing: border-box;
}
#request .cal p.about {
  text-align: center;
  font-size: 1.6rem;
  color: #ff004e;
  padding: 10px 0;
}
#request .cal p.reload {
  color: #000;
  font-size: 1.6rem;
  text-align: right;
}
@media screen and (max-width: 768px) {
  #request .cal {
    padding: 0 3.125% 14%;
  }
  #request .cal dt {
    margin: 0 auto 3%;
  }
  #request .cal table {
    font-size: 1.4rem;
    display: table;
  }
  #request .cal table thead tr {
    display: table-row;
  }
  #request .cal table thead th {
    width: auto;
    display: table-cell;
  }
  #request .cal tbody {
    display: table-row-group;
  }
  #request .cal tr {
    display: table-row;
  }
  #request .cal th,
  #request .cal td {
    padding: 1rem;
    display: table-cell;
    width: auto;
  }
  #request .cal p {
    padding: 2% 0 0;
  }
  #request .cal p.about {
    font-size: 1.4rem;
    padding: 3% 0;
  }
  #request .cal p.reload {
    padding: 0.5em 0 0;
  }
  #request .cal tbody th .priority {
    width: 100%;
  }
}

.fw__normal {
  font-weight: 400;
}

.fw__bold {
  font-weight: 600;
}

.ff__hw {
  font-family: "Kiwi Maru", "Poppins", sans-serif;
  font-weight: 500;
}

.color__txt__brown {
  color: #A27963;
}

#plan .sec01 {
  padding: 95px 0 76px;
  background-color: #F6F4F3;
}
#plan .sec01 .planList {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
#plan .sec01 .planContent {
  background-color: #fff;
  background: url(../images/plan/bg_line.png) no-repeat top center, url(../images/plan/bg_line.png) no-repeat bottom center;
  background-size: 100% 10px, 100% 10px;
  margin-top: 80px;
  padding: 10px 0;
}
#plan .sec01 .planContent + .planList {
  margin-top: 90px;
}
#plan .sec01 .planContent__head {
  display: flex;
  background-color: rgb(229, 223, 214);
  padding: 10px 0;
}
#plan .sec01 .planContent__title {
  color: rgb(57, 118, 94);
  padding: 0 60px;
  position: relative;
  font-family: "Poppins", sans-serif;
  letter-spacing: 4px;
}
#plan .sec01 .planContent__title::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 60%;
  background-color: rgb(60, 61, 62);
  position: absolute;
  right: 0;
  top: 20%;
}
#plan .sec01 .planContent__title strong {
  font-size: 80px;
}
#plan .sec01 .planContent__title span {
  font-size: 32px;
  text-indent: 1em;
  color: #333;
}
#plan .sec01 .planContent__detail {
  padding: 0 60px;
}
#plan .sec01 .planContent__detail span {
  font-size: 32px;
}
#plan .sec01 .planContent__inner {
  background-color: #fff;
  padding: 50px 110px;
  text-align: center;
}
#plan .sec01 .planContent__inner figure {
  margin-top: 30px;
  text-align: center;
}
#plan .sec01 .planContent__inner h3 {
  text-align: center;
  font-weight: normal;
}
#plan .sec01 .planContent__inner p {
  margin-top: 30px;
}
#plan .sec01 .planContent__memo {
  display: flex;
  gap: 16px;
  max-width: 960px;
  flex-wrap: wrap;
  margin-top: 20px;
}
#plan .sec01 .planContent__memo li {
  background-color: rgb(229, 223, 214);
  font-size: 16px;
  width: calc(50% - 15px);
  text-align: center;
  padding: 18px 0;
}
@media (max-width: 750px) {
  #plan .sec01 {
    padding: 79px 2% 49px;
    box-sizing: border-box;
  }
  #plan .sec01 .planList {
    display: block;
  }
  #plan .sec01 .planList img {
    width: 100%;
  }
  #plan .sec01 .planContent {
    background-color: #fff;
    background: url(../images/plan/bg_line_sp.png) no-repeat top center, url(../images/plan/bg_line_sp.png) no-repeat bottom center;
    background-size: 100% 4px, 100% 4px;
    margin-top: 80px;
    padding: 4px 0;
  }
  #plan .sec01 .planContent + .planList {
    margin-top: 90px;
  }
  #plan .sec01 .planContent__head {
    display: block;
    background-color: rgb(229, 223, 214);
    padding: 0 20px 20px;
  }
  #plan .sec01 .planContent__title {
    color: rgb(57, 118, 94);
    padding: 0;
    border-bottom: 1px solid #3C3D3E;
    line-height: 1.75;
  }
  #plan .sec01 .planContent__title::after {
    content: none;
  }
  #plan .sec01 .planContent__title strong {
    font-size: 60px;
  }
  #plan .sec01 .planContent__title span {
    font-size: 24px;
    text-indent: 1em;
    color: #333;
  }
  #plan .sec01 .planContent__detail {
    font-size: 14px;
    padding: 10px 0;
  }
  #plan .sec01 .planContent__detail span {
    font-size: 24px;
  }
  #plan .sec01 .planContent__inner {
    background-color: #fff;
    padding: 50px 12px;
  }
  #plan .sec01 .planContent__inner figure {
    margin-top: 30px;
    text-align: center;
  }
  #plan .sec01 .planContent__inner h3 {
    text-align: left;
    font-weight: normal;
    font-size: 20px;
  }
  #plan .sec01 .planContent__inner p {
    margin-top: 30px;
  }
  #plan .sec01 .planContent__memo {
    display: block;
  }
  #plan .sec01 .planContent__memo li {
    background-color: rgb(229, 223, 214);
    font-size: 14px;
    width: 100%;
    text-align: center;
    padding: 12px 0;
    margin-top: 7px;
    line-height: 1.5;
  }
}
#plan .caution {
  font-size: 12px;
  margin: 24px 40px;
}
@media (max-width: 750px) {
  #plan .caution {
    margin: 14px 4%;
  }
}

.fw__normal {
  font-weight: 400;
}

.fw__bold {
  font-weight: 600;
}

.ff__hw {
  font-family: "Kiwi Maru", "Poppins", sans-serif;
  font-weight: 500;
}

.color__txt__brown {
  color: #A27963;
}

#location #main {
  background-color: rgb(246, 244, 243);
}
#location .visual {
  display: flex;
  justify-content: center;
}
#location .visual__img {
  width: 50%;
  max-height: 613px;
  overflow: hidden;
}
#location .visual__img img {
  width: 100%;
  vertical-align: middle;
  min-width: 900px;
  min-height: 550px;
}
#location .visual__txt {
  background-color: rgba(60, 61, 62, 0.8);
  box-sizing: border-box;
  color: #fff;
  width: 50%;
  padding: 60px 10px 45px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}
#location .visual__txt h2 {
  font-size: 36px;
  font-weight: normal;
  margin-top: 50px;
}
#location .visual__txt p {
  font-size: 14px;
}
#location .visual__copy {
  text-align: center;
  width: 100%;
}
@media (max-width: 750px) {
  #location .visual {
    display: block;
  }
  #location .visual__img {
    width: 100%;
    display: none;
  }
  #location .visual__img img {
    width: 100%;
    vertical-align: middle;
  }
  #location .visual__txt {
    display: block;
    width: 100%;
    padding: 50px 4% 28px;
  }
  #location .visual__txt h2 {
    font-size: 20px;
    margin-top: 20px;
  }
  #location .visual__txt p {
    margin-top: 10px;
    font-size: 14px;
  }
  #location .visual__copy {
    text-align: center;
  }
}
#location .area {
  margin-top: 110px;
}
#location .area__container {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  padding-bottom: 40px;
}
#location .area__container div {
  width: 50%;
}
#location .area__container:nth-child(2) {
  border-top: 1px solid rgb(174, 174, 174);
  padding-top: 40px;
  flex-direction: row-reverse;
}
#location .area h3 {
  font-weight: normal;
  text-align: center;
}
#location .area h3 span {
  font-family: "Roboto", sans-serif;
  font-size: 16px;
  color: rgb(217, 193, 150);
  display: block;
  text-align: center;
  line-height: 1;
  margin-bottom: 6px;
}
#location .area p {
  margin-top: 16px;
}
@media (max-width: 750px) {
  #location .area {
    margin-top: 50px;
  }
  #location .area__container {
    display: block;
    padding: 0 4% 40px;
  }
  #location .area__container div {
    width: 100%;
  }
  #location .area__container:nth-child(2) {
    border: none;
    padding-top: 20px;
  }
}
#location .accessMap {
  margin: 30px auto 0;
  width: 100%;
  max-width: 1180px;
}
#location .accessMap img {
  width: 100%;
}
#location .access {
  margin-top: 70px;
}
#location .access h3 {
  font-weight: normal;
  text-align: center;
}
#location .access h3 span {
  font-family: "Roboto", sans-serif;
  font-size: 16px;
  color: rgb(217, 193, 150);
  display: block;
  text-align: center;
  line-height: 1;
  margin-bottom: 6px;
}
#location .access__img {
  margin-top: 30px;
  padding-bottom: 70px;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
#location .access__img p {
  line-height: 1.5;
}
@media (max-width: 750px) {
  #location .access {
    margin-top: 60px;
    padding: 0 4%;
  }
  #location .access__img {
    margin-top: 30px;
    padding-bottom: 60px;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
  }
  #location .access__img div {
    width: 48%;
  }
}

.fw__normal {
  font-weight: 400;
}

.fw__bold {
  font-weight: 600;
}

.ff__hw {
  font-family: "Kiwi Maru", "Poppins", sans-serif;
  font-weight: 500;
}

.color__txt__brown {
  color: #A27963;
}

#map #main {
  background-color: rgb(246, 244, 243);
  padding-bottom: 210px;
}
@media (max-width: 750px) {
  #map #main {
    padding-bottom: 80px;
  }
}
#map h2 {
  font-weight: normal;
  font-size: 20px;
  text-align: center;
  margin-top: 60px;
  margin-bottom: 24px;
}
@media (max-width: 750px) {
  #map h2 {
    margin-top: 40px;
  }
}
#map .imgMap__address dl {
  width: 960px;
  margin: 40px auto 0;
}
#map .imgMap__address dl dt {
  background-color: rgb(57, 118, 94);
  color: #fff;
  text-align: center;
}
#map .imgMap__address dl dd {
  border: 1px solid rgb(217, 217, 217);
  background-color: #fff;
  text-align: center;
}
#map .imgMap__list {
  margin-top: 44px;
}
#map .imgMap__list ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 15px;
}
#map .imgMap__list ul li a {
  display: block;
  color: #fff;
  padding: 9px 0;
  width: 310px;
  text-align: center;
}
#map .imgMap__list ul li a img {
  vertical-align: middle;
  margin-right: 10px;
}
#map .imgMap__list ul li:first-child a {
  background-color: #8A7444;
}
#map .imgMap__list ul li:last-child a {
  background-color: #3C3D3E;
}
@media (max-width: 750px) {
  #map .imgMap__address {
    padding: 0 4%;
  }
  #map .imgMap__address dl {
    width: 100%;
    margin: 24px auto 0;
  }
  #map .imgMap__list {
    margin-top: 40px;
  }
}

.fw__normal {
  font-weight: 400;
}

.fw__bold {
  font-weight: 600;
}

.ff__hw {
  font-family: "Kiwi Maru", "Poppins", sans-serif;
  font-weight: 500;
}

.color__txt__brown {
  color: #A27963;
}

@media (max-width: 750px) {
  #dev .common-tit01 {
    background-size: 100%;
  }
}
#dev .dev-tit01 {
  font-size: 3rem;
  line-height: 1;
  color: #fff;
  position: relative;
  padding: 40px 0;
  background: #232344;
}
#dev .dev-tit01 h3 {
  text-align: center;
  font-weight: normal;
  position: relative;
  z-index: 2;
  letter-spacing: 5px;
}
#dev .dev-tit01 h3:before,
#dev .dev-tit01 h3:after {
  display: inline-block;
  vertical-align: middle;
  width: 58px;
  height: 39px;
  content: "";
}
#dev .dev-tit01 h3:before {
  background: url(../images/dev/dev_tit_l.png) no-repeat;
}
#dev .dev-tit01 h3:after {
  background: url(../images/dev/dev_tit_r.png) no-repeat;
}
#dev .dev-tit01 span {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  padding: 0 3rem;
}
#dev .dev-tit01 small {
  font-size: 1.4rem;
}
#dev .list {
  margin: 75px auto;
  max-width: 960px;
}
#dev .list ul {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  gap: 20px;
}
#dev .list ul li {
  width: 50%;
}
#dev .list ul li a {
  background-color: #262319;
  color: #fff;
  display: block;
  position: relative;
  font-size: 20px;
  text-align: center;
  padding: 12px 0;
}
#dev .list ul li a:before {
  content: "";
  border: 1px solid #fff;
  position: absolute;
  width: calc(99% - 4px);
  height: calc(94% - 4px);
  top: 4px;
  left: 4px;
}
#dev .list ul li a:after {
  content: "";
  position: absolute;
  width: 12px;
  height: 10px;
  display: block;
  background: url(../images/dev/ico_arrow.png) no-repeat;
  right: 30px;
  top: calc(50% - 4px);
}
#dev .list--after a:after {
  transform: rotate(180deg);
}
@media (max-width: 750px) {
  #dev .list {
    width: calc(97% - 4px);
  }
  #dev .list ul {
    gap: 10px;
  }
  #dev .list ul li {
    width: 50%;
    box-sizing: border-box;
  }
  #dev .list ul li a {
    font-size: 14px;
    text-align: center;
    padding: 12px 20px;
    line-height: 1.25;
    text-align: left;
    height: 60px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
  }
  #dev .list ul li a:before {
    content: "";
    border: 1px solid #fff;
    position: absolute;
    width: calc(97% - 4px);
    height: calc(93% - 4px);
    top: 4px;
    left: 4px;
  }
  #dev .list ul li a:after {
    content: "";
    position: absolute;
    width: 8px;
    height: 6px;
    display: block;
    background: url(../images/dev/ico_arrow.png) no-repeat;
    background-size: cover;
    right: 10px;
    top: calc(50% - 3px);
  }
}
#dev .box01 {
  padding: 0;
}
#dev .box01 .sec__in__s {
  background-color: inherit;
  padding: 0;
}
#dev .box01 dl {
  padding: 50px 0 20px;
}
#dev .box01 dl dt {
  font-size: 2.4rem;
  text-align: center;
  margin: 0 auto 20px;
}
#dev .box01 dl dd {
  font-size: 2rem;
  text-align: center;
}
#dev .box01 figure {
  font-size: 0;
  line-height: 0;
  text-align: center;
}
#dev .box01 figcaption {
  font-size: 1.1rem;
  padding: 3em 0 1em;
  line-height: 1.6;
}
@media (max-width: 750px) {
  #dev .box01 dl {
    padding: 10% 3.125% 2%;
  }
  #dev .box01 dl dt {
    font-size: 2.4rem;
    margin: 0 auto 2%;
  }
  #dev .box01 dl dd {
    font-size: 2rem;
  }
  #dev .box01 figure {
    padding: 0 3.125%;
  }
  #dev .box01 figcaption {
    font-size: 1.1rem;
  }
}
#dev .box02, #dev .box06 {
  background: #f5f5f4;
  padding: 0 0 82px;
}
#dev .box02 .point, #dev .box06 .point {
  background: url(../images/dev/box02_bg.jpg) no-repeat top center;
  background-size: cover;
  margin: 0 auto 30px;
}
#dev .box02 .point h4, #dev .box06 .point h4 {
  color: #fff;
  text-align: center;
  font-size: 2.6rem;
  font-weight: normal;
  padding: 55px 0 30px;
}
#dev .box02 .point li, #dev .box06 .point li {
  width: 100%;
  margin: 0 15px -30px 0;
  font-size: 2rem;
  background: #fff;
}
#dev .box02 .point li > div, #dev .box06 .point li > div {
  padding: 4px;
  background: #fff;
  height: 100%;
}
#dev .box02 .point li > div > div, #dev .box06 .point li > div > div {
  padding: 1px;
  box-sizing: border-box;
  height: 100%;
  border: 1px solid #8c7c57;
  background: #e2ece9;
}
#dev .box02 .point li > div > div > div, #dev .box06 .point li > div > div > div {
  height: 100%;
  background: #fff;
}
#dev .box02 .point li > div > div > div > div, #dev .box06 .point li > div > div > div > div {
  text-align: center;
  padding: 15px;
}
#dev .box02 .point li:nth-child(1) > div > div > div > div:before, #dev .box06 .point li:nth-child(1) > div > div > div > div:before {
  content: "1";
}
#dev .box02 .point li:nth-child(2) > div > div > div > div:before, #dev .box06 .point li:nth-child(2) > div > div > div > div:before {
  content: "2";
}
#dev .box02 .point li:nth-child(3) > div > div > div > div:before, #dev .box06 .point li:nth-child(3) > div > div > div > div:before {
  content: "3";
}
#dev .box02 .point li:nth-child(4) > div > div > div > div:before, #dev .box06 .point li:nth-child(4) > div > div > div > div:before {
  content: "4";
}
#dev .box02 .point li > div > div > div > div:before, #dev .box06 .point li > div > div > div > div:before {
  text-align: center;
  display: block;
  font-size: 4.8rem;
  font-style: italic;
  line-height: 1;
  width: 4rem;
  margin: 0 auto 20px;
  vertical-align: middle;
  color: #8c7c57;
  border-bottom: 1px solid #8c7c57;
}
#dev .box02 .point li b, #dev .box06 .point li b {
  color: #da2a3a;
  font-size: 2.5rem;
  font-weight: normal;
}
#dev .box02 .point li:nth-child(3) > div > div > div > div b:nth-of-type(1), #dev .box06 .point li:nth-child(3) > div > div > div > div b:nth-of-type(1) {
  line-height: 1;
}
#dev .box02 .point li small, #dev .box06 .point li small {
  font-size: 1.4rem;
}
#dev .box02 .map, #dev .box06 .map {
  padding: 20px 0 29px;
}
#dev .box02 .map figure, #dev .box06 .map figure {
  font-size: 0;
  line-height: 0;
  text-align: center;
}
#dev .box02 .map figcaption, #dev .box06 .map figcaption {
  font-size: 1.1rem;
  padding: 3em 0 1em;
  line-height: 1.6;
}
#dev .box02 .img__wrapper ul, #dev .box06 .img__wrapper ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 4px;
  margin: 0 0 16px;
}
#dev .box02 .img__wrapper ul li:nth-of-type(1), #dev .box06 .img__wrapper ul li:nth-of-type(1) {
  width: 49.7916666667%;
}
#dev .box02 .img__wrapper ul li:nth-of-type(2), #dev .box06 .img__wrapper ul li:nth-of-type(2) {
  width: 49.7916666667%;
}
#dev .box02 .img__wrapper ul li:nth-of-type(3), #dev .box06 .img__wrapper ul li:nth-of-type(3) {
  width: 29.7916666667%;
}
#dev .box02 .img__wrapper ul li:nth-of-type(4), #dev .box06 .img__wrapper ul li:nth-of-type(4) {
  width: 39.5833333333%;
}
#dev .box02 .img__wrapper ul li:nth-of-type(5), #dev .box06 .img__wrapper ul li:nth-of-type(5) {
  width: 29.7916666667%;
}
#dev .box02 .img__wrapper ul li img, #dev .box06 .img__wrapper ul li img {
  vertical-align: middle;
  width: 100%;
}
@media (max-width: 750px) {
  #dev .box02 .point p, #dev .box06 .point p {
    padding: 0 3.125% 8%;
    text-align: center;
  }
  #dev .box02 .point ol, #dev .box06 .point ol {
    flex-direction: column;
    justify-content: center;
    flex-wrap: wrap;
    padding: 3.125% 3.125% 5%;
  }
  #dev .box02 .point li, #dev .box06 .point li {
    width: 100%;
    margin: 0 4% 4% 0;
    font-size: 2rem;
  }
  #dev .box02 .point li:nth-child(2n), #dev .box06 .point li:nth-child(2n) {
    margin: 0 0 4%;
  }
  #dev .box02 .point li:nth-child(2n+1), #dev .box06 .point li:nth-child(2n+1) {
    clear: both;
  }
  #dev .box02 .point li:nth-child(n+3), #dev .box06 .point li:nth-child(n+3) {
    margin-bottom: -10%;
  }
  #dev .box02 .point li small, #dev .box06 .point li small {
    font-size: 1.4rem;
  }
  #dev .box02 .point li b, #dev .box06 .point li b {
    font-size: 2.5rem;
  }
  #dev .box02 .point li b small, #dev .box06 .point li b small {
    font-size: 2rem;
  }
  #dev .box02 .point li:last-child, #dev .box06 .point li:last-child {
    margin: 0 0 -10%;
  }
  #dev .box02 .point li > div > div > div > div, #dev .box06 .point li > div > div > div > div {
    padding: 3%;
  }
  #dev .box02 .point li > div > div > div > div:before, #dev .box06 .point li > div > div > div > div:before {
    font-size: 4.8rem;
    margin: 0 auto 3%;
  }
  #dev .box02 .point li:nth-child(4) > div > div > div > div:before, #dev .box06 .point li:nth-child(4) > div > div > div > div:before {
    margin: 0 auto 12%;
  }
  #dev .box02 .map, #dev .box06 .map {
    padding: 6% 3.125%;
  }
  #dev .box02 .img__wrapper, #dev .box06 .img__wrapper {
    padding: 0 2%;
    box-sizing: border-box;
  }
  #dev .box02 .img__wrapper ul, #dev .box06 .img__wrapper ul {
    gap: 1.066vw;
  }
  #dev .box02 .img__wrapper ul li, #dev .box06 .img__wrapper ul li {
    display: inline-block;
  }
  #dev .box02 .img__wrapper ul li:nth-of-type(1), #dev .box06 .img__wrapper ul li:nth-of-type(1) {
    width: 100%;
    grid-column: 1/4;
  }
  #dev .box02 .img__wrapper ul li:nth-of-type(2), #dev .box06 .img__wrapper ul li:nth-of-type(2) {
    width: 55.1388888889%;
    grid-column: 1/3;
  }
  #dev .box02 .img__wrapper ul li:nth-of-type(3), #dev .box06 .img__wrapper ul li:nth-of-type(3) {
    width: 43.6111111111%;
    grid-column: 3/4;
  }
  #dev .box02 .img__wrapper ul li:nth-of-type(4), #dev .box06 .img__wrapper ul li:nth-of-type(4) {
    order: 5;
    width: 55%;
  }
  #dev .box02 .img__wrapper ul li:nth-of-type(5), #dev .box06 .img__wrapper ul li:nth-of-type(5) {
    order: 4;
    width: 43.8888888889%;
  }
}
#dev .box03 {
  background: url(../images/dev/box03_bg.jpg) no-repeat;
  background-size: cover;
  padding: 50px 0;
}
#dev .box03 h4 {
  color: #fff;
  padding: 10px;
  font-size: 1.4rem;
  background: #262319;
  border-top: 1px solid #d6d5d1;
  border-left: 1px solid #d6d5d1;
  border-right: 1px solid #d6d5d1;
}
#dev .box03 ul {
  margin: 0 auto 40px;
}
#dev .box03 dl dt {
  font-size: 1.4rem;
  padding: 10px;
  font-weight: normal;
  background: #f5f4f0;
  border-bottom: 1px solid #d6d5d1;
  border-right: 1px solid #d6d5d1;
  width: 20.8333333333%;
}
#dev .box03 dl dd {
  font-size: 1.4rem;
  padding: 10px;
  background: #ffffff;
  border-bottom: 1px solid #d6d5d1;
  border-right: 1px solid #d6d5d1;
  width: 79.1666666667%;
}
#dev .box03 p {
  width: 72.9166666667%;
  margin: 0 auto;
}
#dev .box03 p a {
  transition: all 0.3s ease-in-out;
}
#dev .box03 p a.hover.ov {
  opacity: 0.5;
}
@media (max-width: 750px) {
  #dev .box03 {
    padding: 10% 3.125%;
  }
  #dev .box03 h4 {
    color: #fff;
    padding: 2%;
    font-size: 1.4rem;
    background: #262319;
    border-top: 1px solid #d6d5d1;
    border-left: 1px solid #d6d5d1;
    border-right: 1px solid #d6d5d1;
  }
  #dev .box03 ul {
    margin: 0 auto 6%;
  }
  #dev .box03 dl {
    display: block;
  }
  #dev .box03 dl dt {
    font-size: 1.4rem;
    padding: 2%;
    border-left: 1px solid #d6d5d1;
    width: auto;
  }
  #dev .box03 dl dd {
    font-size: 1.4rem;
    padding: 2%;
    border-left: 1px solid #d6d5d1;
    width: auto;
  }
  #dev .box03 p {
    width: 100%;
  }
}
#dev .box04 {
  padding: 50px 0;
  background: #f5f5f4;
}
#dev .box04 h4 {
  text-align: center;
  font-size: 2.6rem;
  font-weight: normal;
  margin: 0 auto 45px;
  color: #333;
}
#dev .box04 h4 small {
  font-weight: normal;
  background: #e5004f;
  color: #fff;
  padding: 5px 20px;
  margin-right: 1rem;
}
#dev .box04 ul {
  font-size: 0;
  line-height: 0;
  justify-content: center;
  flex-wrap: wrap;
  width: 900px;
  margin: 0 auto;
}
#dev .box04 li {
  margin: 0 15px 35px 0;
}
#dev .box04 li:nth-child(3),
#dev .box04 li:last-child {
  margin: 0 0 35px;
}
#dev .box04 li p {
  color: #fff;
  width: 150px;
  padding: 10px 0;
  margin: 0 0 10px;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1;
}
#dev .box04 li:nth-child(1) p {
  background-color: #00a298;
}
#dev .box04 li:nth-child(2) p {
  background-color: #f39800;
}
#dev .box04 li:nth-child(3) p {
  background-color: #ee4c90;
}
#dev .box04 li:nth-child(4) p {
  background-color: #e31c1c;
}
#dev .box04 li:nth-child(5) p {
  background-color: #004ea2;
}
#dev .box04 li:nth-child(6) p {
  background-color: #89a200;
}
#dev .box04 dd {
  font-size: 1.4rem;
  padding: 5px 0;
  line-height: 1.6;
  color: #333;
}
#dev .box04 .sec__in__s > p {
  width: 55.2083333333%;
  margin: 0 auto;
}
#dev .box04 p a {
  transition: all 0.3s ease-in-out;
}
#dev .box04 p a.hover.ov {
  opacity: 0.5;
}
@media (max-width: 750px) {
  #dev .box04 {
    padding: 10% 3.125%;
  }
  #dev .box04 h4 {
    font-size: 2rem;
    margin: 0 auto 6%;
  }
  #dev .box04 h5 b {
    color: #fff;
    padding: 1% 2%;
    margin-right: 1rem;
  }
  #dev .box04 ul {
    width: 100%;
    justify-content: flex-start;
    margin: 0 auto;
  }
  #dev .box04 li,
  #dev .box04 li:nth-child(3) {
    width: 48%;
    margin: 0 4% 4% 0;
    vertical-align: top;
  }
  #dev .box04 li:nth-child(2n) {
    margin: 0 0 4%;
  }
  #dev .box04 li:nth-child(2n+1) {
    clear: both;
  }
  #dev .box04 li:last-child {
    margin: 0 0 4%;
  }
  #dev .box04 li p {
    display: inline-block;
    padding: 2% 3%;
    margin: 0 0 2%;
    font-size: 1.4rem;
    width: auto;
  }
  #dev .box04 li dd {
    font-size: 1.4rem;
    padding: 2% 0;
    line-height: 1.6;
  }
  #dev .box04 .sec__in__s > p {
    width: auto;
  }
}
#dev .box05 {
  padding: 50px 0;
  background: #fff;
  margin: 0 auto 60px;
}
#dev .box05 h4 {
  font-size: 2.8rem;
  margin: 0 auto 40px;
  text-align: center;
  font-weight: normal;
  color: #333;
}
#dev .box05 ul {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  width: 715px;
  margin: 0 auto;
}
#dev .box05 li {
  width: 32%;
  padding: 0 0 20px;
  margin-right: 2%;
}
#dev .box05 li:nth-child(3n),
#dev .box05 li:last-child {
  margin: 0;
}
#dev .box05 li dt {
  font-size: 0;
  line-height: 0;
  margin: 0 auto 10px;
}
#dev .box05 li dd {
  font-size: 1.4rem;
  color: #333;
}
#dev .box05 p {
  margin: 35px auto 0;
  width: 55.2083333333%;
}
#dev .box05 p a {
  transition: all 0.3s ease-in-out;
}
#dev .box05 p a.hover.ov {
  opacity: 0.5;
}
@media (max-width: 750px) {
  #dev .box05 {
    padding: 10% 3.125%;
  }
  #dev .box05 h4 {
    font-size: 2.8rem;
    margin: 0 auto 8%;
    text-align: center;
    font-weight: normal;
  }
  #dev .box05 ul {
    display: block;
    width: auto;
  }
  #dev .box05 li,
  #dev .box05 li:nth-child(3n) {
    float: left;
    width: 48%;
    margin: 0 4% 4% 0;
    padding: 0;
  }
  #dev .box05 li:nth-child(2n) {
    margin: 0 0 4%;
  }
  #dev .box05 li:nth-child(2n+1) {
    clear: both;
  }
  #dev .box05 li:last-child {
    margin: 0;
  }
  #dev .box05 li dt {
    margin: 0 auto 2%;
  }
  #dev .box05 li dd {
    font-size: 1.4rem;
  }
  #dev .box05 p {
    margin: 6% auto 0;
    width: auto;
  }
}
#dev .box06 .point {
  background-image: url(../images/dev/box06_bg.jpg);
  margin-bottom: 70px;
}
#dev .box06 .point h4 {
  padding: 55px 0 55px;
}
#dev .box06 h3 {
  font-weight: normal;
  text-align: center;
  margin-top: 20px;
}
#dev .box06 h3 + p {
  margin-top: 40px;
  margin-bottom: 30px;
}
@media (max-width: 750px) {
  #dev .box06 h3 {
    text-align: left;
  }
  #dev .box06 .point {
    margin-bottom: 30px;
  }
}