@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400..800&family=Jost:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&family=Suranna&display=swap");
@import url(./ress.css);
*,
*:after,
*:before {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  border: 0;
  outline: 0;
}
ol,
ul,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}
:focus,
:active {
  outline: 0;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
th,
td {
  padding: 8px;
}
.switch {
  visibility: hidden;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
dt,
dl,
dd {
  font-size: inherit;
  margin: 0;
  padding: 0;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
li {
  margin: 0;
  padding: 0;
}
* {
  margin: 0;
  padding: 0;
}
html {
  font: 62.5%/1.8 ArialMT;
}
_:lang(x)::-ms-backdrop,
.selector {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
}
body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #595757;
  -moz-font-feature-settings: "pkna" 1;
  -webkit-font-feature-settings: "pkna" 1;
  font-feature-settings: "pkna" 1;
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  line-height: 1.8;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
}
b,
strong,
.textB {
  font-weight: 700;
}
@media screen and (min-width: 360px) {
  * {
    -webkit-text-size-adjust: none;
  }
}
a {
  color: #595757;
  text-decoration: none;
}
a:hover {
  opacity: 0.8;
}
a .imgbt:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  cursor: pointer;
}
a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
a.telLink:hover {
  opacity: 1;
  cursor: default;
}
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
footer {
  margin-top: auto;
}
body.active {
  overflow: hidden;
}
.minchyou {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
}
@media only screen and (min-width: 813px) {
  header {
    width: 100%;
    padding: 10px 2%;
    height: 94px;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    background-color: #fff;
    z-index: 10;
  }
  header .wap {
    max-width: 1156px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
  }
  header .h_logo {
    display: block;
    max-width: 127px;
    width: 100%;
  }
  header .h_logo img {
    max-width: 127px;
    width: 100%;
    height: auto;
  }
  header .menuBox {
    margin-left: 40px;
    width: calc(100% - 167px);
  }
  header .menuBox .submenu {
    display: flex;
    margin-bottom: 15px;
    justify-content: flex-end;
    align-items: center;
  }
  header .menuBox .submenu li {
    line-height: 1;
  }
  header .menuBox .submenu li:nth-of-type(-n + 2) {
    padding-right: 30px;
    position: relative;
  }
  header .menuBox .submenu li:nth-of-type(-n + 2):after {
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -8px;
    content: "";
    width: 1px;
    height: 18px;
    display: inline-block;
    background-color: #000;
  }
  header .menuBox .submenu li a {
    color: #000;
    font-size: 1.4rem;
    text-align: center;
  }
  header .menuBox .submenu li.telno {
    margin-left: 20px;
  }
  header .menuBox .submenu li.telno a {
    padding-left: 20px;
    position: relative;
  }
  header .menuBox .submenu li.telno a:before {
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -5px;
    content: "";
    display: block;
    width: 14px;
    height: 10px;
    background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%A1%E3%83%8B%E3%83%A5%E3%83%BC%E3%83%90%E3%83%BC%E3%81%AA%E3%81%A9%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2013.18%209.62%22%3E%3Cpath%20d%3D%22m13.18%2C0v1.11c-1.65.03-3.21%2C1.06-3.21%2C1.06%2C0%2C0-1.65-.92-3.39-.91-1.75%2C0-3.4.91-3.4.91%2C0%2C0-1.56-1.05-3.18-1.06V0h13.18Zm-1.92%2C3.08c.59-.31%2C1.32-.62%2C1.92-.64v7.19H0V2.44c.57.03%2C1.29.34%2C1.9.64-.67.59-1.37%2C1.44-1.37%2C2.37%2C0%2C1.81%2C1.19%2C3.15%2C2.65%2C3.15s2.63-1.34%2C2.63-3.15c0-.92-.69-1.78-1.37-2.37.66-.32%2C1.46-.64%2C2.16-.64s1.47.32%2C2.12.64c-.66.59-1.37%2C1.44-1.37%2C2.37%2C0%2C1.79%2C1.18%2C3.15%2C2.63%2C3.15s2.66-1.36%2C2.66-3.15c0-.92-.71-1.78-1.37-2.37ZM1.72%2C5.66c0-1.02%2C1.46-1.83%2C1.46-1.83%2C0%2C0%2C1.46.81%2C1.46%2C1.83s-.64%2C1.81-1.46%2C1.81-1.46-.81-1.46-1.81Zm6.78-.03c0-.99%2C1.47-1.82%2C1.47-1.82%2C0%2C0%2C1.47.83%2C1.47%2C1.82s-.66%2C1.83-1.47%2C1.83-1.47-.84-1.47-1.83Z%22%2F%3E%3C%2Fsvg%3E");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
  }
  header .menuBox .submenu li.sns a.insta {
    position: relative;
    width: 16px;
    height: 16px;
    display: block;
    margin-left: 10px;
  }
  header .menuBox .submenu li.sns a.insta:before {
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -8px;
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    display: block;
    background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E7%B7%A8%E9%9B%86%E3%83%A2%E3%83%BC%E3%83%89%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2015.82%2015.82%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23333%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22m11.09%2C15.82h-6.36c-2.61%2C0-4.73-2.12-4.73-4.73v-6.36C0%2C2.12%2C2.12%2C0%2C4.73%2C0h6.36c2.61%2C0%2C4.73%2C2.12%2C4.73%2C4.73v6.36c0%2C2.61-2.12%2C4.73-4.73%2C4.73ZM4.73%2C1.47c-1.8%2C0-3.26%2C1.46-3.26%2C3.26v6.36c0%2C1.8%2C1.46%2C3.26%2C3.26%2C3.26h6.36c1.8%2C0%2C3.26-1.46%2C3.26-3.26v-6.36c0-1.8-1.46-3.26-3.26-3.26h-6.36Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22m7.91%2C11.48c-1.97%2C0-3.57-1.6-3.57-3.57s1.6-3.57%2C3.57-3.57%2C3.57%2C1.6%2C3.57%2C3.57-1.6%2C3.57-3.57%2C3.57Zm0-5.67c-1.16%2C0-2.1.94-2.1%2C2.1s.94%2C2.1%2C2.1%2C2.1%2C2.1-.94%2C2.1-2.1-.94-2.1-2.1-2.1Z%22%2F%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22m11.51%2C4.89c-.58%2C0-1.05-.47-1.05-1.05s.47-1.05%2C1.05-1.05%2C1.05.47%2C1.05%2C1.05-.47%2C1.05-1.05%2C1.05Zm0-1.47c-.23%2C0-.42.19-.42.42s.19.42.42.42.42-.19.42-.42-.19-.42-.42-.42Z%22%2F%3E%3C%2Fsvg%3E");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
  }
  #gMenu {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  #gMenu li a:before {
    content: attr(data-entitle);
    font-family: "EB Garamond", serif;
    font-weight: 400;
    text-transform: uppercase;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    line-height: 1;
  }
  #gMenu li a {
    text-align: center;
    font-size: 1.1rem;
    color: #595757;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }
  #navMenu {
    display: none;
  }
  #navMenu .menulogo img {
    max-width: 194px;
    height: auto;
  }
}
@media only screen and (max-width: 812px) {
  header .h_logo {
    display: none;
  }
  header .menuBox .submenu {
    display: none;
  }
}
input[type="checkbox"]#nav_btn {
  display: none;
}
#btn_menu {
  z-index: 100;
  display: block;
  cursor: pointer;
  width: 50px;
  height: 50px;
  position: fixed;
  top: 0;
  right: 0;
}
@media only screen and (min-width: 813px) {
  #btn_menu {
    top: 18px;
    right: 20px;
  }
}
#btn_menu > div {
  width: 30px;
  height: 30px;
  position: relative;
  margin: 0 auto;
}
#btn_menu > div span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  left: 0;
  height: 1px;
  background: #111;
  width: 30px;
}
#btn_menu.bgbk > div span {
  background: #111;
}
#btn_menu > div span:nth-of-type(1) {
  top: 6px;
}
#btn_menu > div span:nth-of-type(2) {
  top: 16px;
}
#btn_menu > div span:nth-of-type(3) {
  top: 26px;
}
body.active #btn_menu span:nth-of-type(1) {
  top: 10px;
  left: 0;
  transform: translateY(6px) rotate(-45deg);
  width: 30px;
  background: #111;
}
body.active #btn_menu span:nth-of-type(2) {
  opacity: 0;
}
body.active #btn_menu span:nth-of-type(3) {
  top: 22px;
  left: 0;
  transform: translateY(-6px) rotate(45deg);
  width: 30px;
  background: #111;
}
body:not(.active) #navMenu {
  display: none;
  height: 0;
}
body.active #navMenu {
  position: fixed;
  z-index: 50;
  background-color: #d8e7ec;
  right: 0;
  top: 0;
  transition-duration: 0.5s;
  width: 100%;
  display: flex;
  flex-flow: column;
  align-items: center;
  height: 100vh;
  overflow-y: scroll;
  padding: 30px 4%;
}
body.active #navMenu nav {
  margin-bottom: 20px;
}
body.active #navMenu ul {
  display: flex;
  flex-wrap: wrap;
}
body.active #navMenu ul li {
  width: 50%;
  padding: 8px 10px;
}
body.active #navMenu ul li a:before {
  content: attr(data-entitle);
  font-family: "EB Garamond", serif;
  font-weight: 400;
  text-transform: uppercase;
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1;
  display: block;
  color: #595757;
}
body.active #navMenu ul li a {
  font-size: 1.1rem;
  color: #000;
  display: flex;
  flex-flow: column;
  justify-content: center;
}
body.active #navMenu .btn_insta figure {
  margin-bottom: 10px;
}
body.active #navMenu .btn_insta {
  text-align: center;
  font-size: 1.4rem;
  font-family: "Jost", sans-serif;
  font-weight: 600;
  margin-bottom: 20px;
}
body.active #navMenu > a.btn_fair {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  background-color: #fff;
  color: #50809e;
  font-size: 2.4rem;
  text-align: center;
  padding: 20px;
  display: inline-block;
  line-height: 1.3;
  width: 100%;
  margin-bottom: 30px;
}
body.active #navMenu > p.h_tel span {
  display: block;
  font-size: 1.4rem;
  text-align: center;
  margin-bottom: 10px;
}
body.active #navMenu > p.h_tel a {
  font-family: "EB Garamond", serif;
  font-weight: 400;
  font-size: 4.9rem;
  line-height: 1;
  color: #595757;
  letter-spacing: 0;
}
body.active #navMenu > p.h_tel a:before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 26px;
  margin-right: 10px;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2031.9%2020.7%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23595757%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22m31.9%2C0v2.38c-4%2C.06-7.76%2C2.29-7.76%2C2.29%2C0%2C0-4-1.99-8.21-1.96-4.24%2C0-8.24%2C1.96-8.24%2C1.96%2C0%2C0-3.76-2.26-7.7-2.29V0h31.9Zm-4.65%2C6.63c1.42-.66%2C3.19-1.33%2C4.65-1.39v15.46H0V5.24c1.39.06%2C3.12.72%2C4.61%2C1.39-1.63%2C1.27-3.32%2C3.1-3.32%2C5.09%2C0%2C3.89%2C2.88%2C6.78%2C6.41%2C6.78s6.37-2.89%2C6.37-6.78c0-1.99-1.66-3.83-3.32-5.09%2C1.59-.69%2C3.53-1.39%2C5.22-1.39s3.56.69%2C5.12%2C1.39c-1.59%2C1.27-3.32%2C3.1-3.32%2C5.09%2C0%2C3.86%2C2.85%2C6.78%2C6.37%2C6.78s6.44-2.92%2C6.44-6.78c0-1.99-1.73-3.83-3.32-5.09ZM4.17%2C12.17c0-2.2%2C3.53-3.95%2C3.53-3.95%2C0%2C0%2C3.53%2C1.75%2C3.53%2C3.95s-1.56%2C3.89-3.53%2C3.89-3.53-1.75-3.53-3.89Zm16.41-.06c0-2.14%2C3.56-3.92%2C3.56-3.92%2C0%2C0%2C3.56%2C1.78%2C3.56%2C3.92s-1.59%2C3.95-3.56%2C3.95-3.56-1.81-3.56-3.95Z%22%2F%3E%3C%2Fsvg%3E");
}
body.active #navMenu .menulogo img {
  max-width: 196px;
  height: 25px;
  display: block;
}
@media only screen and (min-width: 813px) {
  body.active #navMenu .menulogo {
    margin-bottom: 30px;
    width: 100%;
  }
  body.active #navMenu .menulogo img {
    max-width: 300px;
    width: 100%;
    height: auto;
  }
  body.active #navMenu {
    max-width: 600px;
    right: 0;
    top: 0;
  }
  body.active #navMenu .btn_insta figure {
    margin-bottom: 10px;
  }
  body.active #navMenu .btn_insta img {
    height: 29px;
    width: 29px;
  }
  body.active #navMenu > p.h_tel {
    margin-bottom: 20px;
  }
  body.active #navMenu > a.btn_fair {
    max-width: 360px;
  }
  body.active #navMenu ul li:nth-of-type(1) {
    order: 1;
  }
  body.active #navMenu ul li:nth-of-type(2) {
    order: 2;
  }
  body.active #navMenu ul li:nth-of-type(3) {
    order: 3;
  }
  body.active #navMenu ul li:nth-of-type(4) {
    order: 4;
  }
  body.active #navMenu ul li:nth-of-type(5) {
    order: 5;
  }
  body.active #navMenu ul li:nth-of-type(6) {
    order: 6;
  }
  body.active #navMenu ul li:nth-of-type(7) {
    order: 7;
  }
  body.active #navMenu ul li:nth-of-type(8) {
    order: 8;
  }
  body.active #navMenu ul li:nth-of-type(9) {
    order: 9;
  }
  body.active #navMenu ul li:nth-of-type(10) {
    order: 10;
  }
}
@media only screen and (max-width: 812px) {
  body.active #navMenu .menulogo {
    width: 100%;
    height: 20px;
    margin-bottom: 28px;
  }
  #gMenu {
    display: none;
  }
  body.active #navMenu {
    padding: 30px 4% 80px;
    height: 100vh;
  }
  body.active #navMenu .menulogo {
    order: 1;
  }
  body.active #navMenu nav {
    order: 2;
  }
  body.active #navMenu > p.h_tel a {
    font-size: 4rem;
  }
  body.active #navMenu ul li:nth-of-type(7) {
    margin-top: 0px;
  }
  body.active #navMenu ul li:nth-of-type(8) {
    width: 50%;
  }
  body.active #navMenu ul li:nth-of-type(9) {
    width: 50%;
  }
  body.active #navMenu ul li:nth-of-type(10) {
    width: 50%;
  }
  body.active #navMenu .btn_insta {
    text-align: center;
    order: 3;
  }
  body.active #navMenu > a.btn_fair {
    order: 4;
  }
  body.active #navMenu > p.h_tel {
    order: 5;
  }
}
#f_menu {
  position: fixed;
  bottom: 0;
  right: 0;
  max-width: 448px;
  width: 100%;
  display: flex;
  z-index: 10;
  height: 80px;
  background-color: #fff;
}
#f_menu a {
  width: calc((100% - 80px));
  text-align: center;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80px;
}
#f_menu a:first-of-type {
  background-color: #fff;
  color: #5588a8;
  background-image: url(../img/common/btn_reserve.png);
  background-size: contain;
  background-repeat: no-repeat;
}
#f_menu a:nth-of-type(2) {
  background-color: #f0d2b4;
  background-image: url(../img/common/btn_tel.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 80px;
}
@media only screen and (max-width: 812px) {
  #f_menu {
    max-width: 100%;
    height: 68px;
    z-index: 9999999999;
  }
  #f_menu a {
    font-size: 1.2rem;
  }
  #f_menu a {
    width: calc((100% - 60px));
  }
  #f_menu a:first-of-type {
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: top;
  }
  #f_menu a:nth-of-type(2) {
    width: 60px;
    background-size: 80%;
    background-position: top;
  }
  #f_menu a:nth-of-type(2):before {
    display: inline-block;
    content: "";
    width: 20px;
    height: 14px;
  }
  .copy {
    text-align: center;
  }
}
#sns {
  padding: 50px 4%;
  display: flex;
  justify-content: center;
}
#sns a {
  text-align: center;
}
#sns a figure {
  margin-bottom: 10px;
}
#sns a {
  font-size: 1.4rem;
  font-family: "Jost", sans-serif;
  font-weight: 600;
}
f_logo {
  display: block;
  max-width: 240px;
  margin: 0 auto 40px;
}
.f_logo img {
  width: 100%;
  max-width: 240px;
  height: auto;
}
.copyright {
  font-size: 1rem;
  color: #fff;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 1.1px;
}
.footerBox {
  background-color: #5588a8;
}
.footerBox > div {
  max-width: 1126px;
  margin: 0 auto;
  color: #fff;
}
.footerBox .btnBox li a {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  border: 1px solid #fff;
  background-color: #92c4d8;
  font-size: 2.4rem;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
  flex-wrap: wrap;
  line-height: 1.3;
}
.footerBox .btnBox li a span {
  font-size: 1.6rem;
  display: block;
  width: 100%;
  text-align: center;
}
.footerBox .leftBox .adr2 dt {
  margin-bottom: 20px;
}
.footerBox .leftBox .adr2 dt span {
  display: block;
  font-size: 1.4rem;
}
.footerBox .leftBox .adr2 dt a {
  font-family: "EB Garamond", serif;
  font-weight: 400;
  font-size: 4.6rem;
  line-height: 1;
  color: #fff;
  letter-spacing: 0;
}
.footerBox .leftBox .adr2 dt a:before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 26px;
  margin-right: 10px;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2040%2025.97%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23fff%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22m40%2C0v2.99c-5.02.08-9.74%2C2.87-9.74%2C2.87%2C0%2C0-5.02-2.49-10.29-2.46-5.31%2C0-10.33%2C2.46-10.33%2C2.46%2C0%2C0-4.72-2.83-9.65-2.87V0h40Zm-5.82%2C8.32c1.79-.83%2C4-1.66%2C5.82-1.74v19.39H0V6.58c1.74.08%2C3.91.91%2C5.78%2C1.74-2.04%2C1.59-4.17%2C3.89-4.17%2C6.39%2C0%2C4.88%2C3.61%2C8.5%2C8.03%2C8.5s7.99-3.63%2C7.99-8.5c0-2.49-2.08-4.8-4.17-6.39%2C2-.87%2C4.42-1.74%2C6.55-1.74s4.46.87%2C6.42%2C1.74c-2%2C1.59-4.17%2C3.89-4.17%2C6.39%2C0%2C4.84%2C3.57%2C8.5%2C7.99%2C8.5s8.08-3.67%2C8.08-8.5c0-2.49-2.17-4.8-4.17-6.39ZM5.23%2C15.27c0-2.76%2C4.42-4.95%2C4.42-4.95%2C0%2C0%2C4.42%2C2.19%2C4.42%2C4.95s-1.96%2C4.88-4.42%2C4.88-4.42-2.19-4.42-4.88Zm20.58-.08c0-2.68%2C4.46-4.91%2C4.46-4.91%2C0%2C0%2C4.46%2C2.23%2C4.46%2C4.91s-2%2C4.95-4.46%2C4.95-4.46-2.27-4.46-4.95Z%22%2F%3E%3C%2Fsvg%3E");
}
.footerBox .leftBox .adr2 dd:last-of-type {
  font-size: 1.8rem;
  margin-top: 20px;
}
.footerBox .leftBox .adr2 dd a {
  color: #fff;
}
@media only screen and (min-width: 813px) {
  .footerBox {
    padding: 50px 6% 0;
  }
  .footerBox > div {
    display: flex;
  }
  .copy {
    width: 100%;
  }
  .footerBox .leftBox {
    width: 65%;
    margin-right: 70px;
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 50px;
  }
  .footerBox .leftBox > .adr {
    order: 1;
    width: calc((100% - 20px) / 2);
    margin-right: 20px;
  }
  .footerBox .leftBox > .adr2 {
    order: 2;
    width: calc((100% - 20px) / 2);
  }
  .copy {
    order: 4;
  }
  .footerBox .btnBox {
    order: 3;
    width: 100%;
    margin-top: 40px;
  }
  .footerBox .btnBox {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
  }
  .footerBox .btnBox li {
    width: calc((100% - 25px) / 2);
  }
  .footerBox .btnBox li a {
    min-height: 85px;
  }
  .footerBox .f_menu {
    width: calc(35% - 70px);
    border-left: 1px solid #fff;
  }
  .footerBox .f_menu {
    padding-left: 15px;
  }
  .footerBox .f_menu li:before {
    content: "ー";
    margin-right: 10px;
    display: inline-block;
  }
  .footerBox .f_menu li:not(:last-of-type) {
    margin-bottom: 10px;
  }
  .footerBox .f_menu li a {
    color: #fff;
    font-family: "EB Garamond", serif;
    font-weight: 600;
    font-size: 2.2rem;
    letter-spacing: 5px;
  }
  .footerBox .btnBox li:first-of-type {
    order: 1;
  }
  .footerBox .btnBox li:nth-of-type(2) {
    order: 4;
  }
  .footerBox .btnBox li:nth-of-type(3) {
    order: 3;
  }
  .footerBox .btnBox li:nth-of-type(4) {
    order: 2;
  }
}
@media only screen and (max-width: 812px) {
  .f_logo {
    margin-bottom: 10px;
    margin: 0 auto 30px;
    display: block;
    max-width: 180px;
  }
  .f_logo img {
    max-width: 240px;
    height: auto;
  }
  .footerBox {
    padding: 50px 4% 100px;
  }
  .footerBox .leftBox > .adr dl {
    text-align: center;
    font-size: 1.2rem;
    margin-bottom: 20px;
  }
  .footerBox .f_menu {
    display: none;
  }
  .footerBox .btnBox {
    margin-bottom: 30px;
  }
  .footerBox .btnBox li a {
    font-size: 1.6rem;
    min-height: 68px;
  }
  .footerBox .btnBox li:not(:last-of-type) {
    margin-bottom: 10px;
  }
  .footerBox .leftBox > .adr2 {
    text-align: center;
    margin-bottom: 30px;
  }
  .footerBox .leftBox .adr2 dt a {
    font-size: 4rem;
  }
  .footerBox .leftBox .adr2 dd:last-of-type {
    font-size: 1.6rem;
    margin-top: 20px;
  }
  .footerBox .leftBox .adr2 dd:first-of-type {
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 813px) {
  #pageTop {
    display: none !important;
  }
}
@media only screen and (max-width: 812px) {
  #pageTop {
    z-index: 2;
    width: 48px;
    height: 48px;
    display: block;
    position: fixed;
    bottom: 70px;
    right: 4%;
    background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2047.25%2047.25%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3Anone%3Bstroke%3A%23595757%3Bstroke-miterlimit%3A10%3Bstroke-width%3A1.03px%3B%7D.cls-2%7Bfill%3A%23fff%3Bopacity%3A.8%3Bstroke-width%3A0px%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Ccircle%20class%3D%22cls-2%22%20cx%3D%2223.62%22%20cy%3D%2223.62%22%20r%3D%2223.62%22%2F%3E%3Cpolyline%20class%3D%22cls-1%22%20points%3D%227.28%2029.63%2023.63%2013.28%2039.97%2029.63%22%2F%3E%3C%2Fsvg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }
}
@keyframes slide_img {
  100% {
    background-position: -10000px 0;
  }
}
@keyframes slide_img_r {
  100% {
    background-position: 10000px 0;
  }
}
@keyframes slide_img_h {
  100% {
    background-position-x: 10000px;
  }
}
.fadeUp.play {
  animation-name: fadeUpAnime;
  animation-duration: 3s;
  animation-fill-mode: forwards;
  opacity: 0;
  animation-delay: 0.1s;
}
@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(5px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeDown.play {
  animation-name: fadeDownAnime;
  animation-duration: 0.9s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeDownAnime {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeLeft.play {
  animation-name: fadeLeftAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeLeftAnime {
  from {
    opacity: 0;
    transform: translateX(-100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeRight.play {
  animation-name: fadeRightAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeRightAnime {
  from {
    opacity: 0;
    transform: translateX(100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeIn.play {
  animation-name: fadeInAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeInAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeIn,
.fadeUp,
.fadeLeft,
.fadeRight,
.fadeDown {
  opacity: 0;
}
.breadcrumbsBox {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 50px 4% 24px;
  background-color: #fff;
}
#breadcrumbs {
  padding: 0;
  margin: 0 auto;
  width: 100%;
  display: block;
  font-size: 1.2rem;
  margin: 0 auto;
}
#breadcrumbs > span {
  display: inline;
  padding: 0 20px 0 0;
  vertical-align: middle;
  text-decoration: none;
  color: #78aac3;
  position: relative;
}
#breadcrumbs > span:not(:last-of-type):before {
  content: "";
  display: block;
  width: 10px;
  background-color: #e9e9e9;
  height: 1px;
  right: 5px;
  top: 50%;
  margin-top: -1px;
  position: absolute;
}
#breadcrumbs i {
  margin-right: 5px;
  font-size: 1rem;
  color: #000;
}
#breadcrumbs a {
  color: #bacaea;
  text-decoration: none;
}
#breadcrumbs a:hover {
  text-decoration: underline;
}
@media only screen and (max-width: 812px) {
  #breadcrumbs {
    font-size: 1rem;
  }
}
.wap01 {
  width: 100%;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
.wap02 {
  width: 100%;
  max-width: 895px;
  margin-left: auto;
  margin-right: auto;
}
.wap03 {
  width: 100%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.section_wap {
  padding: 0 4% 0;
}
.title01:before {
  content: attr(data-entitle);
  font-family: "Suranna", serif;
  font-weight: 400;
  text-transform: uppercase;
  color: #5588a8;
  font-size: 5.6rem;
  letter-spacing: 0;
  line-height: 1.3;
  font-weight: 500;
}
.title01 {
  text-align: center;
  font-size: 1.5rem;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 50px;
  font-weight: 500;
}
.title02:before {
  content: attr(data-entitle);
  font-family: "Suranna", serif;
  font-weight: 400;
  text-transform: uppercase;
  color: #595757;
  font-size: 3.6rem;
  letter-spacing: 0.1em;
  line-height: 1.3;
}
.title02 {
  text-align: center;
  font-size: 1.5rem;
  color: #000;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 40px;
  font-weight: 500;
}
.title03 {
  margin-bottom: 20px;
  font-size: 1.8rem;
}
.title03:before {
  content: "■";
  color: #0059ab;
}
.title04 {
  margin-bottom: 20px;
  color: #0059ab;
  font-size: 2.2rem;
}
.under_titleBox .title05 {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 40px;
  text-align: center;
  font-size: 1.8rem;
}
.title05 span {
  font-size: 3.8rem;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  color: #78aac3;
  line-height: 120%;
  letter-spacing: 0.05em;
  display: block;
  text-transform: uppercase;
}
@media only screen and (min-width: 813px) {
  .title01 {
    padding-top: 50px;
  }
}
@media only screen and (max-width: 812px) {
  .title01 {
    padding-top: 50px;
  }
  .title01:before {
    font-size: 4.8rem;
  }
  .title05 span {
    font-size: 3.4rem;
  }
  .title05 {
    font-size: 1.4rem;
  }
  .title00 span {
    font-size: 3.4rem;
  }
  .title00 {
    font-size: 1.4rem;
  }
  .title02 {
    line-height: 1.6;
  }
  .under_titleBox {
    padding: 45px 4% 20px;
  }
  .titleBox {
    padding: 40px 4%;
  }
}
.marker_Y {
  background: linear-gradient(transparent 60%, #ff0 60%);
}
.btn-more {
  padding: 10px 30px;
  text-align: center;
  color: #78aac3;
  background-color: #fff;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  min-height: 60px;
  max-width: 320px;
  font-weight: 700;
  letter-spacing: 0.8px;
  font-size: 1.6rem;
  border: 3px solid #3d62ad;
  margin: 0 auto;
}
.btn-more {
  border-radius: 100vh;
  position: relative;
}
.btn-more:after {
  content: "";
  width: 7px;
  height: 12px;
  display: block;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -6px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%227%22%20height%3D%2212%22%20viewBox%3D%220%200%207%2012%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M6.70592%205.29403C7.0964%205.6845%207.0964%206.31863%206.70592%206.7091L1.70788%2011.7071C1.31741%2012.0976%200.683278%2012.0976%200.292806%2011.7071C-0.0976667%2011.3167%20-0.0976667%2010.6825%200.292806%2010.2921L4.58488%206L0.295929%201.70793C-0.094543%201.31745%20-0.094543%200.683327%200.295929%200.292854C0.686402%20-0.0976181%201.32053%20-0.0976181%201.711%200.292854L6.70905%205.29121L6.70592%205.29434V5.29403Z%22%20fill%3D%22%233A62AD%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.btn-more-bl {
  padding: 10px 68px;
  text-align: center;
  color: #ffe03b;
  background-color: #78aac3;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  min-height: 60px;
  max-width: 320px;
  font-weight: 700;
  letter-spacing: 0.8px;
  font-size: 1.6rem;
  border: 3px solid #3d62ad;
  margin: 0 auto;
}
.btn-more-bl {
  border-radius: 100vh;
  position: relative;
}
.btn-more-bl:after {
  content: "";
  width: 7px;
  height: 12px;
  display: block;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -6px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229%22%20height%3D%2214%22%20viewBox%3D%220%200%209%2014%22%20fill%3D%22none%22%3E%20%3Cpath%20d%3D%22M1%2013L7%207L0.999999%201%22%20stroke%3D%22%23FFE03B%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.btn-more_w {
  padding: 10px 30px;
  text-align: center;
  color: #fff;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  min-height: 60px;
  max-width: 320px;
  font-weight: 700;
  letter-spacing: 0.8px;
  font-size: 1.6rem;
  border: 3px solid #fff;
  margin: 0 auto;
}
.btn-more_w {
  border-radius: 100vh;
  position: relative;
}
.btn-more_w:after {
  content: "";
  width: 7px;
  height: 12px;
  display: block;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -6px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229%22%20height%3D%2214%22%20viewBox%3D%220%200%209%2014%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M1.5%2013.176L7.5%207.17603L1.5%201.17603%22%20stroke%3D%22white%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.btn01,
a.btn01 {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  border: 1px solid #fff;
  background-color: #92c4d8;
  font-size: 1.8rem;
  color: #fff;
  display: inline-block;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  flex-wrap: wrap;
  line-height: 1.3;
  max-width: 320px;
  width: 100%;
}
.btn01:hover,
a.btn01:hover {
  color: #fff;
  background: #92c4d8;
}
.btn02 {
  padding: 10px 68px;
  text-align: center;
  color: #ffe03b;
  background-color: #78aac3;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  min-height: 60px;
  max-width: 320px;
  font-weight: 700;
  letter-spacing: 0.8px;
  font-size: 1.6rem;
  border: 3px solid #3d62ad;
  margin: 0 auto;
}
.btn02 {
  border-radius: 100vh;
  position: relative;
}
.btn02:after {
  content: "";
  width: 7px;
  height: 12px;
  display: block;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -6px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229%22%20height%3D%2214%22%20viewBox%3D%220%200%209%2014%22%20fill%3D%22none%22%3E%20%3Cpath%20d%3D%22M1%2013L7%207L0.999999%201%22%20stroke%3D%22%23FFE03B%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.btn03 {
  padding: 10px 20px;
  text-align: center;
  color: #ffe03b;
  background-color: #78aac3;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  min-height: 50px;
  max-width: 330px;
  font-weight: 700;
  letter-spacing: 0.75px;
  font-size: 1.5rem;
  border: 3px solid #3d62ad;
  margin: 0 auto;
}
.btn03 {
  border-radius: 100vh;
  position: relative;
}
.btn03:after {
  content: "";
  width: 7px;
  height: 12px;
  display: block;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -6px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229%22%20height%3D%2214%22%20viewBox%3D%220%200%209%2014%22%20fill%3D%22none%22%3E%20%3Cpath%20d%3D%22M1%2013L7%207L0.999999%201%22%20stroke%3D%22%23FFE03B%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.btn04 {
  padding: 10px 20px;
  text-align: center;
  color: #78aac3;
  background-color: #ffcf00;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  min-height: 50px;
  max-width: 330px;
  font-weight: 700;
  letter-spacing: 0.75px;
  font-size: 1.5rem;
  border: 3px solid #ffcf00;
  margin: 0 auto;
}
.btn04 {
  border-radius: 100vh;
  position: relative;
}
.btn04:after {
  content: "";
  width: 7px;
  height: 12px;
  display: block;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -6px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228%22%20height%3D%2212%22%20viewBox%3D%220%200%208%2012%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M1%2011L6%206L1%201%22%20stroke%3D%22%233A62AD%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 812px) {
  .lity-close {
    display: none;
  }
  .lity-wrap {
    padding: 0 !important;
  }
  .lity-container {
    padding: 23px;
  }
}
.table01 {
  border-collapse: collapse;
  border: solid 1px #eee;
}
.table01 td,
.table01 th {
  padding: 10px 15px;
}
.table01 tr:not(:last-of-type) td {
  border-bottom: solid 1px #eee;
}
.table01 tr:not(:last-of-type) th {
  border-bottom: solid 1px #fff;
}
.table01 tbody tr th {
  width: 20%;
  text-align: center;
  vertical-align: middle;
  background-color: #f2f2ee;
  font-weight: 500;
}
.table01 tbody tr td {
  vertical-align: middle;
}
@media only screen and (max-width: 812px) {
  .table01 tbody tr th {
    width: 30%;
  }
}
.table02 {
  border-collapse: collapse;
  border: solid 1px #eee;
}
.table02 td,
.table02 th {
  padding: 10px 15px;
}
.table02 tbody tr th {
  text-align: center;
  vertical-align: middle;
  background-color: #f2f2ee;
  font-weight: 500;
}
@media only screen and (min-width: 813px) {
  .table02 tr:not(:last-of-type) th {
    border-bottom: solid 1px #fff;
  }
  .table02 tr:not(:last-of-type) td {
    border-bottom: solid 1px #eee;
  }
  .table02 tr td:not(:last-of-type) {
    border-right: solid 1px #eee;
  }
  .table02 tbody tr th {
    width: 33%;
    text-align: center;
    vertical-align: middle;
    background-color: #f2f2ee;
    font-weight: 500;
  }
  .table02 tbody tr td {
    width: 33%;
    vertical-align: middle;
    text-align: center;
  }
}
@media only screen and (max-width: 812px) {
  .table02 tbody td {
    width: 100%;
    display: inline-block;
  }
  .table02 tbody th {
    width: 100%;
    display: inline-block;
  }
  .table02 tr td:last-of-type:before {
    content: attr(data-label);
    display: block;
    font-size: 1.3rem;
    font-weight: 500;
  }
}
.table03 {
  border-collapse: collapse;
  border: solid 1px #eee;
  width: 100%;
  max-width: 540px;
}
.table03 td,
.table01 th {
  padding: 10px 15px;
}
.table03 tr:not(:last-of-type) td {
  border-bottom: solid 1px #eee;
}
.table03 tr:not(:last-of-type) th {
  border-bottom: solid 1px #fff;
}
.table03 tbody tr th {
  width: 50%;
  text-align: center;
  vertical-align: middle;
  background-color: #f2f2ee;
  font-weight: 500;
}
.table03 tbody tr td {
  width: 50%;
  text-align: center;
  vertical-align: middle;
}
.table04 {
  width: 100%;
}
.table04 thead th,
.table04 tbody td,
.table04 tfoot th {
  border: none;
}
.table04 tbody td,
.table04 tbody th {
  border-bottom: 1px solid #eee;
}
.table04 th {
  padding: 15px 0;
  vertical-align: middle;
}
.table04 td {
  padding: 15px 0 15px 15px;
}
.table04 tbody tr th {
  width: 70px;
  text-align: left;
  font-weight: 400;
}
.table04 tbody tr td {
  width: calc(100%-70px);
}
.list01 {
  list-style: none;
}
.list01 li {
  position: relative;
  padding-left: 1.6rem;
  margin-bottom: 5px;
}
.list01 li:before {
  content: "・";
  display: inline-block;
  line-height: 140%;
  position: absolute;
  margin-top: 3px;
  left: 0;
}
.list01 li:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 812px) {
  .list01 li {
    line-height: 1.4;
  }
  .list01 li:before {
    line-height: 1.4;
    top: 0;
  }
}
.list02 {
  list-style: none;
  padding: 20px 30px;
  border: 1px solid #ccc;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  -ms-border-radius: 20px;
  border-radius: 20px;
}
.list02 li {
  position: relative;
  padding-left: 2.8rem;
  margin-bottom: 5px;
}
.list02 li:before {
  content: "●";
  display: inline-block;
  line-height: 140%;
  position: absolute;
  margin-top: 3px;
  left: 0;
  color: #094;
}
.list02 li:last-child {
  margin-bottom: 0;
}
.list03 {
  list-style: none;
}
.list03 li {
  margin-bottom: 15px;
}
.list03 li:last-child {
  margin-bottom: 0;
}
.list_notes {
  list-style: none;
  font-size: 1.3rem;
}
.list_notes li {
  position: relative;
  padding-left: 1.6rem;
}
.list_notes li:before {
  content: "※";
  display: inline-block;
  line-height: 140%;
  position: absolute;
  margin-top: 3px;
  left: 0;
}
.list_notes li:last-child {
  margin-bottom: 0;
}
.list_n01 {
  counter-reset: number;
  list-style: none;
}
.list_n01 > li {
  padding-left: 17px;
  position: relative;
}
.list_n01 > li:before {
  counter-increment: number;
  content: counter(number) ".";
  display: inline-block;
  position: absolute;
  left: 0;
}
.list_n01 > li:last-child {
  margin-bottom: 0;
}
.list_n02 {
  counter-reset: number2;
  list-style: none;
}
.list_n02 > li {
  padding-left: 25px;
  position: relative;
}
.list_n02 > li:before {
  counter-increment: number2;
  content: counter(number2) ")";
  display: inline-block;
  position: absolute;
  left: 0;
}
.list_n02 > li:last-child {
  margin-bottom: 0;
}
.list_n04 {
  counter-reset: number3;
  list-style: none;
}
.list_n04 li {
  padding-left: 25px;
  position: relative;
}
.list_n04 li:before {
  counter-increment: number3;
  content: counter(number3, cjk-ideographic);
  display: inline-block;
  position: absolute;
  left: 0;
}
.list_n04 li:last-child {
  margin-bottom: 0;
}
.list_kana {
  counter-reset: kana;
  list-style: none;
}
.list_kana li {
  padding-left: 20px;
  position: relative;
}
.list_kana li:before {
  counter-increment: kana;
  content: counter(kana, katakana) ")";
  display: inline-block;
  position: absolute;
  left: 0;
}
.list_kana li:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 812px) {
  .sp_scrolle_wap {
    border: 1px solid #dcdcdd;
    width: 100%;
    padding: 10px;
  }
  .sp_scrolle {
    overflow-x: scroll;
    width: 100%;
    max-width: 1000px;
  }
  .sp_scrolle img {
    width: 640px;
    display: block;
    margin: 0 auto;
  }
  .sp_scrolle table {
    white-space: nowrap;
    width: 1080px;
  }
  .scroll-hint-icon {
    width: 150px !important;
    height: 90px !important;
  }
  .scroll-hint-text {
    font-size: 11px !important;
  }
}
.slick-dots li button {
  background: 0 0;
  border: 0;
  font-size: 0pt;
}
main.form {
  margin: 0;
}
.nav-links {
  width: 100%;
}
.nav-links ul {
  list-style: none;
  display: flex;
  justify-content: center;
  gap: 8px;
}
.nav-links li > * {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  height: 30px;
}
.nav-links li > *:not(.dots):not(.next) {
  width: 30px;
  border-radius: 50%;
  color: #78aac3;
  transition: color 0.3s ease, background 0.3s ease;
}
.nav-links li .page-numbers.dots {
  letter-spacing: 0.8px;
  color: #78aac3;
}
.nav-links li > .current,
.nav-links li > a:not(.next):hover {
  color: #fff !important;
  background: #78aac3 !important;
}
.prev.page-numbers,
.next.page-numbers {
  width: 30px;
  height: 30px;
}
.prev.page-numbers:before,
.next.page-numbers:before {
  content: "";
  display: block;
  width: 8px;
  height: 14px;
}
.prev.page-numbers:before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229%22%20height%3D%2214%22%20viewBox%3D%220%200%209%2014%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M8%2013L2%207L8%201%22%20stroke%3D%22%233A62AD%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}
.next.page-numbers:before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229%22%20height%3D%2214%22%20viewBox%3D%220%200%209%2014%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M1%2013L7%207L0.999999%201%22%20stroke%3D%22%233A62AD%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}
.fl {
  float: left;
}
.fr {
  float: right;
}
input::-webkit-input-placeholder {
  font-size: smaller;
}
input:-moz-placeholder {
  font-size: smaller;
}
@media only screen and (min-width: 813px) {
  .pcNone {
    display: none !important;
  }
  .btPCNone {
    display: none !important;
  }
}
@media only screen and (max-width: 812px) {
  .spNone {
    display: none !important;
  }
}
@media only screen and (min-width: 430px) {
  .spOnly {
    display: none !important;
  }
}
@media only screen and (min-width: 813px) {
  a[href*="tel:"] {
    pointer-events: none !important;
    text-decoration: none !important;
  }
}
@media only screen and (max-width: 812px) {
  a[href*="tel:"] {
    pointer-events: initial;
  }
}
.mb0 {
  margin-bottom: 0 !important;
}
.mb5 {
  margin-bottom: 5px !important;
}
.mb10 {
  margin-bottom: 10px !important;
}
.mb15 {
  margin-bottom: 15px !important;
}
.mb20 {
  margin-bottom: 20px !important;
}
.mb25 {
  margin-bottom: 25px !important;
}
.mb30 {
  margin-bottom: 30px !important;
}
.mb40 {
  margin-bottom: 40px !important;
}
.mb50 {
  margin-bottom: 50px !important;
}
.mb60 {
  margin-bottom: 60px !important;
}
.mb70 {
  margin-bottom: 70px !important;
}
.mb80 {
  margin-bottom: 80px !important;
}
.mb90 {
  margin-bottom: 90px !important;
}
.mb100 {
  margin-bottom: 100px !important;
}
.mb120 {
  margin-bottom: 120px !important;
}
.ml0 {
  margin-left: 0 !important;
}
.ml5 {
  margin-left: 5px !important;
}
.ml10 {
  margin-left: 10px !important;
}
.ml12 {
  margin-left: 12px !important;
}
.ml13 {
  margin-left: 13px !important;
}
.ml15 {
  margin-left: 15px !important;
}
.ml20 {
  margin-left: 20px !important;
}
.ml25 {
  margin-left: 25px !important;
}
.ml30 {
  margin-left: 30px !important;
}
.mr0 {
  margin-right: 0 !important;
}
.mr5 {
  margin-right: 5px !important;
}
.mr10 {
  margin-right: 10px !important;
}
.mr15 {
  margin-right: 15px !important;
}
.mr20 {
  margin-right: 20px !important;
}
.mr30 {
  margin-right: 30px !important;
}
.mt0 {
  margin-top: 0 !important;
}
.mt5 {
  margin-top: 5px !important;
}
.mt10 {
  margin-top: 10px !important;
}
.mt15 {
  margin-top: 15px !important;
}
.mt20 {
  margin-top: 20px !important;
}
.mt30 {
  margin-top: 30px !important;
}
.mt40 {
  margin-top: 40px !important;
}
.mt50 {
  margin-top: 50px !important;
}
.mt60 {
  margin-top: 60px !important;
}
.pt5 {
  padding-top: 5px !important;
}
.pt10 {
  padding-top: 10px !important;
}
.pt20 {
  padding-top: 20px !important;
}
.pt30 {
  padding-top: 30px !important;
}
.pt40 {
  padding-top: 40px !important;
}
.pb5 {
  padding-bottom: 5px !important;
}
.pb10 {
  padding-bottom: 10px !important;
}
.pb20 {
  padding-bottom: 20px !important;
}
.pb60 {
  padding-bottom: 60px !important;
}
.pb100 {
  padding-bottom: 100px !important;
}
.text08 {
  font-size: 0.8rem !important;
}
.text09 {
  font-size: 0.9rem !important;
}
.text10 {
  font-size: 1rem !important;
}
.text11 {
  font-size: 1.1rem !important;
}
.text12 {
  font-size: 1.2rem !important;
}
.text13 {
  font-size: 1.3rem !important;
}
.text14 {
  font-size: 1.4rem !important;
}
.text15 {
  font-size: 1.5rem !important;
}
.text16 {
  font-size: 1.6rem !important;
}
.text18 {
  font-size: 1.8rem !important;
}
.text20 {
  font-size: 2rem !important;
}
.text24 {
  font-size: 2.4rem !important;
}
.text28 {
  font-size: 2.8rem !important;
}
.text30 {
  font-size: 3rem !important;
}
.textC {
  text-align: center !important;
}
.textR {
  text-align: right !important;
}
.textL {
  text-align: left !important;
}
.textB {
  font-weight: 700 !important;
}
.textN {
  font-weight: 500 !important;
}
.textU {
  text-decoration: underline !important;
}
.textI {
  padding-left: 1rem !important;
  text-indent: -1rem !important;
}
.textI2 {
  padding-left: 1.6rem !important;
  text-indent: -1.6rem !important;
}
.bold {
  font-weight: 700;
}
.red {
  color: #f62148;
}
.red2 {
  color: #f62148;
}
.blue {
  color: #00428e;
}
.yellow {
  color: #fffa00;
}
.green {
  color: #094;
}
.pink {
  color: #ff505a;
}
.orange {
  color: #e97700;
}
.brown {
  color: #41342b;
}
.gray {
  color: #555;
}
.box10p {
  width: 10% !important;
}
.box15p {
  width: 15% !important;
}
.box20p {
  width: 20% !important;
}
.box35p {
  width: 35% !important;
}
.box40p {
  width: 40% !important;
}
.box45p {
  width: 45% !important;
}
.box48p {
  width: 48% !important;
}
.box49p {
  width: 49% !important;
}
.box50p {
  width: 50% !important;
}
.box55p {
  width: 55% !important;
}
.box60p {
  width: 60% !important;
}
.box65p {
  width: 65% !important;
}
.box70p {
  width: 70% !important;
}
.box75p {
  width: 75% !important;
}
.box80p {
  width: 80% !important;
}
.box100p {
  width: 100% !important;
}
.lrAuto {
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (min-width: 813px) {
  .flex02 {
    display: flex;
    flex-wrap: wrap;
  }
  .flex02 > div {
    width: 46%;
  }
  .flex02 > div:nth-of-type(n + 3) {
    margin-top: 8%;
  }
  .flex02 > div:not(:nth-of-type(2n)) {
    margin-right: 8%;
  }
}
@media only screen and (max-width: 812px) {
  .flex02 > div:not(:last-child) {
    margin-bottom: 40px;
  }
}
@media only screen and (min-width: 813px) {
  .flex03 {
    display: flex;
    flex-wrap: wrap;
  }
  .flex03 > div {
    width: 32%;
  }
  .flex03 > div:nth-of-type(n + 4) {
    margin-top: 4%;
  }
  .flex03 > div:not(:nth-of-type(3n)) {
    margin-right: 2%;
  }
}
@media only screen and (max-width: 812px) {
  .flex03 > div:not(:last-child) {
    margin-bottom: 40px;
  }
}
a.link_y {
  text-decoration: underline;
  color: #fdb500;
}
a.link_y:hover {
  text-decoration: none;
}
a.link {
  text-decoration: underline;
}
a.link:hover {
  text-decoration: none;
}
@media only screen and (min-width: 813px) {
  a[href*="tel:"].link {
    pointer-events: none;
    border-bottom: none;
  }
}
.va_b {
  vertical-align: bottom;
}
.va_m {
  display: inline-block;
  vertical-align: middle;
}
.va_t {
  vertical-align: top;
}
@media only screen and (max-width: 812px) {
  .textCsp {
    text-align: center !important;
  }
  .textRsp {
    text-align: right !important;
  }
  .textLsp {
    text-align: left !important;
  }
  .mb20sp {
    margin-bottom: 20px !important;
  }
}
