@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after {
  content: "";
  content: none;
}

q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*-------------------------------------------------------------
Variables
-------------------------------------------------------------*/
/* Layout */
/* Color */
/* Font */
/* Other Settings */
/*-------------------------------------------------------------
Mixin
-------------------------------------------------------------*/
/* Breakpoints */
/* Line Height Crop */
/* Gallery Thumbnail Animation */
/*-------------------------------------------------------------
Text
-------------------------------------------------------------*/
/* Heading */
[class^=ttl-] {
  font-family: "Zen Old Mincho", serif;
  line-height: 1;
}
[class^=ttl-] .txt-ttl-en {
  font-family: "Cormorant Garamond", serif;
}
[class^=ttl-] span {
  display: block;
}

.ttl-2col {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ttl-2col .txt-ttl {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2.4rem, 1.8723rem + 2.2515vw, 4rem);
}
.ttl-2col .txt-ttl-sub {
  font-size: 1.2rem;
}
.ttl-2col + * {
  margin-top: 40px;
}
@media (min-width: 1024px) {
  .ttl-2col [class^=sec-] .ttl-2col + * {
    margin-top: 56px;
  }
}

.ttl-01 .txt-ttl-en {
  font-size: clamp(3.2rem, 2.6723rem + 2.2515vw, 4.8rem);
}
.ttl-01 .txt-ttl-ja {
  font-size: 1.2rem;
  margin-top: 0.5em;
}
@media (min-width: 768px) {
  .ttl-01 {
    display: flex;
    align-items: center;
  }
  .ttl-01 .txt-ttl-ja {
    margin-top: 0;
    margin-left: 2em;
  }
}

.ttl-02 .txt-ttl-en {
  font-size: clamp(1rem, 0.934rem + 0.2814vw, 1.2rem);
}
.ttl-02 .txt-ttl-en + .txt-ttl-ja {
  margin-top: 0.4em;
}
.ttl-02 .txt-ttl-ja {
  font-size: clamp(2rem, 1.6042rem + 1.6887vw, 3.2rem);
}
.ttl-02 + * {
  margin-top: 32px;
}

.ttl-03 {
  font-size: clamp(1.8rem, 1.734rem + 0.2814vw, 2rem);
}
.ttl-03 + * {
  margin-top: 24px;
}

.ttl-04 {
  font-size: clamp(1.6rem, 1.534rem + 0.2814vw, 1.8rem);
}
.ttl-04 + * {
  margin-top: 24px;
}

/* Paragraph */
p:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 2) * 0.5em);
}
p:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 2) * 0.5em);
}

.txt-height-tight {
  line-height: 1.6;
}
.txt-height-tight:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.6) * 0.5em);
}
.txt-height-tight:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.6) * 0.5em);
}

.txt-small {
  font-size: clamp(1.2rem, 1.134rem + 0.2814vw, 1.4rem);
}

/*-------------------------------------------------------------
Common
-------------------------------------------------------------*/
/* Base */
* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  background-color: #F8F7F7;
  color: #2F2F2F;
  font-family: "Gothic Medium BBB", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  font-feature-settings: "palt";
  font-size: 1.4rem;
  line-height: 2;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
body ::-moz-selection {
  background: #2F2F2F;
  color: #fff;
}
body ::selection {
  background: #2F2F2F;
  color: #fff;
}
@media (min-width: 768px) {
  body {
    font-size: 1.6rem;
  }
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

a {
  color: #2F2F2F;
}
@media (any-hover: hover) {
  a:hover {
    text-decoration: none;
  }
  a[href^="tel:"] {
    pointer-events: none;
    text-decoration: none;
  }
}

.area-cmn-main p:not(:first-child),
.area-cmn-main ul:not(:first-child),
.area-cmn-main ol:not(:first-child),
.area-cmn-main dl:not(:first-child),
.area-cmn-main table:not(:first-child),
.area-cmn-main pre:not(:first-child),
.area-cmn-main blockquote:not(:first-child) {
  margin-top: 24px;
}
@media (min-width: 1024px) {
  .area-cmn-main p:not(:first-child),
  .area-cmn-main ul:not(:first-child),
  .area-cmn-main ol:not(:first-child),
  .area-cmn-main dl:not(:first-child),
  .area-cmn-main table:not(:first-child),
  .area-cmn-main pre:not(:first-child),
  .area-cmn-main blockquote:not(:first-child) {
    margin-top: 32px;
  }
}

/* Show/Hide */
@media (min-width: 1024px) {
  .hide-desktop-s {
    display: none;
  }
}

/*-------------------------------------------------------------
Loading
-------------------------------------------------------------*/
/*-------------------------------------------------------------
Basic Layout
-------------------------------------------------------------*/
.container {
  margin: 0 auto;
  width: 86.1538461538%;
  max-width: 1152px;
}

.area-content {
  padding-top: 64px;
}

/*-------------------------------------------------------------
Section
-------------------------------------------------------------*/
.sec-cmn + .sec-cmn {
  margin-top: 88px;
}

/*-------------------------------------------------------------
Lower Pages
-------------------------------------------------------------*/
body:not(.home) .mod-pagetitle {
  background-color: #FFFFFF;
  padding: 144px 0 64px;
}
body:not(.home) .mod-pagetitle .container {
  position: relative;
}
@media (min-width: 1024px) {
  body:not(.home) .mod-pagetitle {
    padding: 200px 0 128px;
  }
  body:not(.home) .area-content {
    padding-top: 128px;
  }
}

.block-cmn:not(:first-child) {
  margin-top: 64px;
}
@media (min-width: 1024px) {
  .block-cmn:not(:first-child) {
    margin-top: 128px;
  }
}

.sec-cmn + .sec-cmn {
  margin-top: 88px;
}
@media (min-width: 1024px) {
  .sec-cmn + .sec-cmn {
    margin-top: 128px;
  }
}

/*-------------------------------------------------------------
Materials
-------------------------------------------------------------*/
/* GALLERY */
.sec-gallery .mod-slider {
  overflow: hidden;
  margin-top: 40px;
}
.sec-gallery .mod-slider .swiper-slide a {
  display: block;
}
@media (any-hover: hover) {
  .sec-gallery .mod-slider .swiper-slide a {
    position: relative;
    overflow: hidden;
  }
  .sec-gallery .mod-slider .swiper-slide a:before {
    background-color: rgba(47, 47, 47, 0.7);
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 999px;
    filter: blur(150px);
    opacity: 0;
    transform: scale(0);
    transition: 0.7s;
  }
  .sec-gallery .mod-slider .swiper-slide a:after {
    content: "VIEW MORE";
    color: #FFFFFF;
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(1.8rem, 1.6021rem + 0.8443vw, 2.4rem);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    margin-left: -4em;
    transition: 0.9s;
  }
  .sec-gallery .mod-slider .swiper-slide a:hover:before {
    border-radius: 0;
    filter: blur(0);
    opacity: 1;
    transform: scale(2);
  }
  .sec-gallery .mod-slider .swiper-slide a:hover:after {
    opacity: 1;
    margin-left: 0;
  }
}
@media (min-width: 1024px) {
  .sec-gallery .mod-slider {
    margin-top: 56px;
  }
}

/* Button */
.btn-cmn {
  display: inline-block;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.8rem, 1.6021rem + 0.8443vw, 2.4rem);
  margin-top: 48px;
}
.btn-cmn .btn-linktext {
  display: flex;
  align-items: center;
  line-height: 1;
}
.btn-cmn .btn-linktext:after {
  content: "";
  display: block;
  background: url(../img/common/ico-arrow.svg) no-repeat center/100%;
  margin-left: 0.5em;
  width: 1.8em;
  height: 0.2772em;
  max-width: 32px;
  transition: 0.5s;
}
@media (any-hover: hover) {
  .btn-cmn .btn-linktext:hover:after {
    transform: translateX(10px);
  }
}
@media (min-width: 1024px) {
  .btn-cmn {
    margin-top: 80px;
  }
}

.btn-ja {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(1.4rem, 1.2021rem + 0.8443vw, 2rem);
  margin-top: 48px;
  line-height: 1;
  text-align: center;
}
@media (min-width: 1024px) {
  .btn-ja {
    margin-top: 80px;
  }
}

/* Box */
.box-cmn {
  background-color: #FFFFFF;
  padding: 32px 24px;
}
@media (min-width: 1024px) {
  .box-cmn {
    padding: 48px;
  }
}

/*-------------------------------------------------------------
Lists
-------------------------------------------------------------*/
/* dl */
.list-cmn-dl .item-list-cmn-dl {
  border-top: 1px solid #E6E6E6;
  padding-top: 24px;
}
.list-cmn-dl .item-list-cmn-dl dt,
.list-cmn-dl .item-list-cmn-dl dd {
  line-height: 1.6;
}
.list-cmn-dl .item-list-cmn-dl dt:before,
.list-cmn-dl .item-list-cmn-dl dd:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.6) * 0.5em);
}
.list-cmn-dl .item-list-cmn-dl dt:after,
.list-cmn-dl .item-list-cmn-dl dd:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.6) * 0.5em);
}
.list-cmn-dl .item-list-cmn-dl dt {
  color: #868686;
}
.list-cmn-dl .item-list-cmn-dl dd {
  margin-top: 8px;
}
.list-cmn-dl .item-list-cmn-dl + .item-list-cmn-dl {
  margin-top: 24px;
}
.list-cmn-dl .item-list-cmn-dl:last-child {
  border-bottom: 1px solid #E6E6E6;
  padding-bottom: 24px;
}
@media (min-width: 1024px) {
  .list-cmn-dl .item-list-cmn-dl {
    display: flex;
    padding-top: 40px;
  }
  .list-cmn-dl .item-list-cmn-dl dt {
    width: 13%;
    max-width: 152px;
  }
  .list-cmn-dl .item-list-cmn-dl dd {
    margin-top: 0;
    margin-left: 3em;
    width: 87%;
  }
  .list-cmn-dl .item-list-cmn-dl + .item-list-cmn-dl {
    margin-top: 40px;
  }
  .list-cmn-dl .item-list-cmn-dl:last-child {
    padding-bottom: 40px;
  }
}

/* ul */
.list-cmn-ul .item-list-cmn-ul {
  line-height: 1.6;
  padding-left: 1em;
  position: relative;
}
.list-cmn-ul .item-list-cmn-ul:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
.list-cmn-ul .item-list-cmn-ul + .item-list-cmn-ul {
  margin-top: 1em;
}

/*-------------------------------------------------------------
Lists
-------------------------------------------------------------*/
.form-cmn input[type=text],
.form-cmn input[type=submit],
.form-cmn textarea,
.form-cmn select {
  /*----- Reset Styles -----*/
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
  /*----- Reset Styles -----*/
  background-color: #FFFFFF;
  font-family: sans-serif;
  font-size: 1.6rem;
  line-height: 1.6;
  padding: 0.5em 0.7em;
  width: 100%;
}
.form-cmn input[type=text] + input, .form-cmn input[type=text] + textarea, .form-cmn input[type=text] + select,
.form-cmn input[type=submit] + input,
.form-cmn input[type=submit] + textarea,
.form-cmn input[type=submit] + select,
.form-cmn textarea + input,
.form-cmn textarea + textarea,
.form-cmn textarea + select,
.form-cmn select + input,
.form-cmn select + textarea,
.form-cmn select + select {
  margin-top: 4px;
}
@media (min-width: 768px) {
  .form-cmn input[type=text],
  .form-cmn input[type=submit],
  .form-cmn textarea,
  .form-cmn select {
    font-size: 1.6rem;
  }
  .form-cmn input[type=text].input-s,
  .form-cmn input[type=submit].input-s,
  .form-cmn textarea.input-s,
  .form-cmn select.input-s {
    width: 30%;
  }
  .form-cmn input[type=text].input-m,
  .form-cmn input[type=submit].input-m,
  .form-cmn textarea.input-m,
  .form-cmn select.input-m {
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .form-cmn input[type=text].input-s,
  .form-cmn input[type=submit].input-s,
  .form-cmn textarea.input-s,
  .form-cmn select.input-s {
    width: 20%;
  }
  .form-cmn input[type=text].input-m,
  .form-cmn input[type=submit].input-m,
  .form-cmn textarea.input-m,
  .form-cmn select.input-m {
    width: 40%;
  }
  .form-cmn input[type=text].input-l,
  .form-cmn input[type=submit].input-l,
  .form-cmn textarea.input-l,
  .form-cmn select.input-l {
    width: 80%;
  }
}
@media (min-width: 1024px) {
  .form-cmn textarea {
    padding: 0.8em 1em;
  }
}
.form-cmn .item-list-form dt .txt-explain {
  display: block;
  line-height: 1.8;
}
.form-cmn .item-list-form dd {
  margin-top: 8px;
}
.form-cmn .item-list-form dd .txt-caution {
  color: #868686;
  display: block;
  margin-top: 0.5em;
}
@media (min-width: 1024px) {
  .form-cmn .item-list-form dd {
    margin-top: 0;
  }
}
.form-cmn .form-checklist label {
  display: block;
}
.form-cmn .input-afterlabel {
  display: flex;
  align-items: center;
}
.form-cmn .btn-submit {
  margin-top: 24px;
}
.form-cmn .btn-submit input[type=submit] {
  background-color: #2F2F2F;
  border: 1px solid #2F2F2F;
  color: #FFFFFF;
  cursor: pointer;
  font-size: 1.6rem;
  padding: 0.8em 1em;
}
@media (any-hover: hover) {
  .form-cmn .btn-submit input[type=submit]:hover {
    background-color: transparent;
    color: #2F2F2F;
  }
}
@media (min-width: 768px) {
  .form-cmn .btn-submit {
    margin: 40px auto 0;
    width: 400px;
  }
}

/*-------------------------------------------------------------
Header
-------------------------------------------------------------*/
.area-cmn-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2;
}
.area-cmn-header.is-active {
  mix-blend-mode: normal;
}
.area-cmn-header .logo {
  margin: 32px auto 0;
  width: 208px;
}
@media (min-width: 1024px) {
  .area-cmn-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 48px 56px 0;
  }
  .area-cmn-header .logo {
    margin: 0;
    width: 244px;
  }
}

body.home .area-cmn-header {
  opacity: 0;
  filter: blur(20px);
  pointer-events: none;
  transition: 1s;
}
body.home .area-cmn-header.is-show {
  opacity: 1;
  filter: blur(0);
  pointer-events: initial;
}
body.home .area-cmn-header.is-active {
  mix-blend-mode: normal;
}

/*-------------------------------------------------------------
Footer
-------------------------------------------------------------*/
.area-cmn-footer {
  background-color: #F8F7F7;
  padding: 112px 0;
}
.area-cmn-footer .txt-copyright {
  font-size: 1.2rem;
}
@media (min-width: 1024px) {
  .area-cmn-footer {
    padding: 160px 0;
  }
}

/*-------------------------------------------------------------
Navigation
-------------------------------------------------------------*/
/* GLOBAL NAVIGATION */
.wrapper-nav-global {
  background-color: rgba(248, 247, 247, 0.95);
  backdrop-filter: blur(20px);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2;
  opacity: 0;
  pointer-events: none;
  transition: 0.8s;
}
.wrapper-nav-global.is-active {
  opacity: 1;
  pointer-events: initial;
}
.wrapper-nav-global .container {
  display: flex;
  flex-direction: row;
  align-items: center;
  height: 100svh;
}
.wrapper-nav-global .container .list-nav-global .item-list-nav-global a {
  display: flex;
  align-items: center;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.8rem;
  line-height: 1;
  text-decoration: none;
}
.wrapper-nav-global .container .list-nav-global .item-list-nav-global a .txt-sub {
  color: #868686;
  font-family: "Gothic Medium BBB", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  font-size: 1rem;
  margin-left: 1em;
}
.wrapper-nav-global .container .list-nav-global .item-list-nav-global + .item-list-nav-global {
  margin-top: 40px;
}
@media (min-width: 1024px) {
  .wrapper-nav-global {
    background-color: rgba(248, 247, 247, 0);
    backdrop-filter: blur(0);
    opacity: 1;
    pointer-events: initial;
    position: static;
  }
  .wrapper-nav-global .container {
    display: block;
    margin: 0;
    width: 100%;
    height: auto;
    max-width: 100%;
  }
  .wrapper-nav-global .container .nav-global {
    display: flex;
    justify-content: flex-end;
  }
  .wrapper-nav-global .container .list-nav-global {
    display: flex;
    align-items: center;
  }
  .wrapper-nav-global .container .list-nav-global .item-list-nav-global a {
    display: block;
    font-size: 1.6rem;
    overflow: hidden;
    padding-bottom: 0.2em;
    position: relative;
  }
  .wrapper-nav-global .container .list-nav-global .item-list-nav-global a .txt-sub {
    display: none;
  }
  .wrapper-nav-global .container .list-nav-global .item-list-nav-global a:after {
    background-color: #2F2F2F;
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 1px;
    bottom: 0;
    left: 0;
    transform: translateX(-100%);
    transition: 0.5s;
  }
}
@media (min-width: 1024px) and (any-hover: hover) {
  .wrapper-nav-global .container .list-nav-global .item-list-nav-global a:hover:after {
    transform: translateX(0);
  }
}
@media (min-width: 1024px) {
  .wrapper-nav-global .container .list-nav-global .item-list-nav-global + .item-list-nav-global {
    margin-top: 0;
    margin-left: 32px;
  }
}

/* FIXED NAVIGATION */
.nav-cta {
  background-color: #2F2F2F;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 3;
  opacity: 0;
  transform: translateY(100%);
  transition: 0.5s;
}
.nav-cta.is-show {
  opacity: 1;
  transform: translateY(0);
}
.nav-cta .list-nav-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}
.nav-cta .list-nav-cta .item-list-nav-cta {
  color: #FFFFFF;
  font-family: "Zen Old Mincho", serif;
  line-height: 1;
}
.nav-cta .list-nav-cta .item-list-nav-cta a {
  color: #FFFFFF;
  text-decoration: none;
}
.nav-cta .list-nav-cta .item-list-nav-cta + .item-list-nav-cta {
  margin-left: 32px;
}
.nav-cta .list-nav-cta .btn-menu .txt-close {
  display: none;
}
.nav-cta .list-nav-cta .btn-menu.is-active .txt-menu {
  display: none;
}
.nav-cta .list-nav-cta .btn-menu.is-active .txt-close {
  display: block;
}
@media (min-width: 1024px) {
  .nav-cta {
    background-color: #FFFFFF;
  }
  .nav-cta .list-nav-cta {
    display: block;
    padding: 0px;
  }
  .nav-cta .list-nav-cta .item-list-nav-cta a {
    background-color: #2F2F2F;
    display: block;
    padding: 32px;
    text-align: center;
  }
}
@media (min-width: 1024px) and (any-hover: hover) {
  .nav-cta .list-nav-cta .item-list-nav-cta a {
    transition: 0.5s;
  }
  .nav-cta .list-nav-cta .item-list-nav-cta a:hover {
    opacity: 0.7;
  }
}
@media (min-width: 1024px) {
  .nav-cta .list-nav-cta .item-list-nav-cta + .item-list-nav-cta {
    margin-left: 0;
  }
  .nav-cta .list-nav-cta .btn-menu {
    display: none;
  }
}

/* BREADCRUMB */
.nav-breadcrumb {
  position: absolute;
  top: 0;
  right: 0;
  transform: rotate(90deg) translateX(100%);
  transform-origin: right top;
}
.nav-breadcrumb .list-nav-breadcrumb {
  font-size: 1.1rem;
  line-height: 1;
}
.nav-breadcrumb .list-nav-breadcrumb .item-list-nav-breadcrumb + .item-list-nav-breadcrumb {
  margin-top: 0.5em;
}
@media (min-width: 1024px) {
  .nav-breadcrumb .list-nav-breadcrumb {
    font-size: 1.2rem;
    display: flex;
  }
  .nav-breadcrumb .list-nav-breadcrumb .item-list-nav-breadcrumb + .item-list-nav-breadcrumb {
    margin-top: 0;
  }
  .nav-breadcrumb .list-nav-breadcrumb .item-list-nav-breadcrumb + .item-list-nav-breadcrumb:before {
    content: "/";
    margin: 0 0.5em;
  }
}

/* PAGER */
.nav-pager {
  display: flex;
  justify-content: center;
  margin-top: 112px;
}
.nav-pager .btn-pager + .btn-pager {
  margin-left: 1.5em;
}

.nav-pager-single {
  display: flex;
  justify-content: center;
  margin-top: 112px;
}
.nav-pager-single .item-nav-pager-single:not(.btn-back) {
  text-decoration: none;
}
.nav-pager-single .item-nav-pager-single + .item-nav-pager-single {
  margin-left: 3em;
}
.nav-pager-single span.item-nav-pager-single {
  opacity: 0.3;
  pointer-events: none;
}

/* SCENE */
.nav-scene {
  line-height: 1;
}
.nav-scene .list-nav-scene {
  display: flex;
  flex-wrap: wrap;
  margin: -1em 0 0 -1em;
}
.nav-scene .list-nav-scene .item-list-nav-scene {
  margin: 1em 0 0 1em;
}
.nav-scene .list-nav-scene .item-list-nav-scene a:before {
  content: "#";
}
.nav-scene .list-nav-scene .item-list-nav-scene.is-current {
  opacity: 0.5;
}
.nav-scene .list-nav-scene .item-list-nav-scene.is-current a {
  text-decoration: none;
}
.nav-scene + * {
  margin-top: 64px;
}

/* NOTE CATEGORY NAV */
.nav-note-cat {
  font-family: "Cormorant Garamond", serif;
}
.nav-note-cat .list-nav-note-cat {
  display: flex;
  gap: 1em;
}
.nav-note-cat .list-nav-note-cat .item-list-nav-note-cat.is-active {
  opacity: 0.5;
}
.nav-note-cat .list-nav-note-cat .item-list-nav-note-cat.is-active a {
  text-decoration: none;
}

/*---------------------------------------------------------------
home
---------------------------------------------------------------*/
body.home {
  /*-------------------------------------------------------------*/
  /* FIRST VIEW */
}
body.home .area-fv {
  background-color: #FFFFFF;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
}
body.home .area-fv .container-area-fv {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  height: 100svh;
}
body.home .area-fv .box-video {
  filter: grayscale(1);
  overflow: hidden;
  position: relative;
  width: 100%;
  min-width: 323px;
  max-width: 100%;
  max-height: 100vh;
}
body.home .area-fv .box-video:before {
  content: "";
  padding-top: 100%;
  display: block;
}
body.home .area-fv .box-video video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 100%;
}
body.home .area-fv .box-video.is-fullsize {
  width: 120vw;
  height: 120vh;
}
body.home .area-fv .box-video.is-fullsize video {
  width: auto;
  height: 100%;
}
body.home .area-fv .box-video.is-fullsize + .ttl-logo {
  display: none;
}
body.home .area-fv .ttl-logo {
  margin-top: 40px;
  text-align: center;
}
body.home .area-fv .ttl-logo img {
  width: 68%;
  max-width: 208px;
}
body.home .area-fv:after {
  content: "";
  display: block;
  width: 24px;
  padding-top: 3.67%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%) rotate(180deg);
  background: url(../img/home/ico-scroll.svg) no-repeat center/100%;
  animation: swipeUp 1.3s ease-in-out alternate infinite;
}
@media (min-width: 1024px) {
  body.home .area-fv .box-video {
    width: 400px;
  }
  body.home .area-fv .box-video.is-fullsize video {
    width: 100%;
    height: auto;
  }
  body.home .area-fv .ttl-logo {
    margin-top: 48px;
  }
}
@media (min-width: 1280px) {
  body.home .area-fv .box-video {
    width: 480px;
  }
}
@media (any-hover: hover) {
  body.home .area-fv:after {
    transform: rotate(0);
    animation: scrollDown 1.3s ease-in-out alternate infinite;
  }
}
@keyframes swipeUp {
  0% {
    bottom: 8px;
    opacity: 0;
  }
  100% {
    bottom: 32px;
    opacity: 1;
  }
}
@keyframes scrollDown {
  0% {
    bottom: 32px;
    opacity: 0;
  }
  100% {
    bottom: 8px;
    opacity: 1;
  }
}
body.home {
  /* CONTENT AREA */
}
body.home .area-content {
  margin-top: 100svh;
  padding-top: 0;
  position: relative;
  overflow: hidden;
}
body.home .area-content [class^=sec-] .ttl-section-home {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
body.home .area-content [class^=sec-] .ttl-section-home .txt-ttl {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2.4rem, 1.8723rem + 2.2515vw, 4rem);
}
body.home .area-content [class^=sec-] .ttl-section-home .txt-ttl-sub {
  font-size: 1.2rem;
}
body.home .area-content [class^=sec-] .ttl-section-home + * {
  margin-top: 40px;
}
body.home .area-content [class^=sec-]:not(.sec-concept) {
  padding-top: 112px;
}
body.home .area-content [class^=sec-]:not(.sec-studio) {
  background-color: #F8F7F7;
}
@media (min-width: 1024px) {
  body.home .area-content [class^=sec-] .ttl-section-home + * {
    margin-top: 56px;
  }
  body.home .area-content [class^=sec-]:not(.sec-concept) {
    padding-top: 160px;
  }
  body.home .area-content:before {
    background: url(../img/common/logo.svg) no-repeat center/100%;
    content: "";
    display: block;
    opacity: 0.1;
    position: absolute;
    top: 29.3279022403vh;
    right: -5%;
    width: 76.1904761905%;
    padding-top: 31.6%;
  }
}
body.home {
  /* CONCEPT */
}
body.home .sec-concept {
  padding-top: 64px;
}
body.home .sec-concept .ttl-concept {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(3.2rem, 2.9361rem + 1.1258vw, 4rem);
  line-height: 1.5;
}
body.home .sec-concept .ttl-concept .txt-sub {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.2rem;
  margin-top: 1em;
}
body.home .sec-concept .txt-concept {
  margin-top: 40px;
}
@media (min-width: 1024px) {
  body.home .sec-concept {
    padding-top: 160px;
  }
}
body.home {
  /* GALLERY */
}
body.home .sec-gallery {
  padding-bottom: 112px;
}
body.home {
  /* BANNER AREA */
}
body.home .sec-banner .banner {
  border: 1px solid #E6E6E6;
  display: block;
}
body.home .sec-banner .banner + .banner {
  margin-top: 16px;
}
body.home {
  /* PLAN */
  /* LINEUP */
}
body.home .sec-studio {
  background-color: rgba(47, 47, 47, 0.4);
  backdrop-filter: blur(10px);
  color: #FFFFFF;
  padding-bottom: 112px;
}
body.home .sec-studio a {
  color: #FFFFFF;
}
body.home .sec-studio .list-plan .item-list-plan {
  border-color: #FFFFFF;
}
body.home .sec-studio .list-plan .item-list-plan .box-price {
  border-color: #FFFFFF;
}
body.home .sec-studio .btn-cmn .btn-linktext:after {
  background-image: url(../img/common/ico-arrow_wh.svg);
}
body.home .sec-other .list-plan .item-list-plan {
  border: 1px solid #2F2F2F;
}
body.home {
  /* INFORMATION */
}
body.home .sec-information .mod-description {
  margin-top: 32px;
}
body.home .sec-information .mod-description .box-calendar {
  margin-top: 48px;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container {
  visibility: visible;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container.wpsbc-calendar-1 .wpsbc-legend-item-icon-1 div:first-of-type {
  background-color: transparent;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container.wpsbc-calendar-1 .wpsbc-legend-item-icon-2 div:first-of-type {
  background-color: rgba(47, 47, 47, 0.4);
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar {
  border: 1px solid #2F2F2F;
  padding: 8px;
  background: transparent;
  margin-bottom: 0;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr td,
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr th {
  padding: 0 !important;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr td .wpsbc-date-inner,
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr th .wpsbc-date-inner {
  display: flex;
  align-items: center;
  justify-content: center;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr td .wpsbc-date-inner .wpsbc-date-number,
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr th .wpsbc-date-inner .wpsbc-date-number {
  position: static;
  height: unset;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar-header {
  background-color: transparent;
  padding: 0;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar-header .wpsbc-select-container select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  border: none;
  color: #2F2F2F;
  display: inline-block;
  font-family: "Gothic Medium BBB", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  font-size: 1.6rem;
  text-align: center;
  width: unset;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar-header .wpsbc-calendar-header-navigation .wpsbc-prev,
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar-header .wpsbc-calendar-header-navigation .wpsbc-next {
  background: transparent;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar-header .wpsbc-calendar-header-navigation .wpsbc-prev .wpsbc-arrow {
  border-color: transparent #2F2F2F transparent transparent;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar-header .wpsbc-calendar-header-navigation .wpsbc-next .wpsbc-arrow {
  border-color: transparent transparent transparent #2F2F2F;
}
body.home .sec-information .mod-description .box-calendar .wpsbc-container .wpsbc-calendars .wpsbc-calendar-wrapper {
  margin-top: 8px;
  padding: 0;
}
body.home .sec-information .mod-description .box-calendar .txt-holiday {
  margin-top: 16px;
}
body.home .sec-information .mod-description .box-calendar .txt-holiday span {
  display: flex;
  align-items: center;
}
body.home .sec-information .mod-description .box-calendar .txt-holiday span:before {
  background-color: rgba(47, 47, 47, 0.4);
  content: "";
  display: block;
  margin-right: 0.5em;
  width: 1em;
  height: 1em;
}
@media (min-width: 768px) {
  body.home .sec-information .mod-description {
    margin-top: 64px;
    display: flex;
    justify-content: space-between;
  }
  body.home .sec-information .mod-description .box-calendar {
    margin-top: 0;
    max-width: 300px;
  }
}
body.home {
  /* Loading Animation */
}
body.home .mod-loader {
  background-color: #F8F7F7;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 99;
  transition: opacity 1s;
}
body.home .mod-loader .logo {
  width: 44%;
  max-width: 220px;
  animation: blink 1.5s ease-in-out infinite;
}
body.home .mod-loader.is-hide {
  opacity: 0;
  pointer-events: none !important;
}
@keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
body.home .wrapper {
  opacity: 0;
  transition: 1.5s ease-in;
}
body.home .wrapper.is-show {
  opacity: 1;
}
body.home {
  /*-------------------------------------------------------------*/
}

/*---------------------------------------------------------------
concept
---------------------------------------------------------------*/
body.concept {
  /*-------------------------------------------------------------*/
}
body.concept .ttl-concept {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(3.2rem, 2.9361rem + 1.1258vw, 4rem);
  line-height: 1.5;
}
body.concept .ttl-concept .txt-sub {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.2rem;
  margin-top: 1em;
}
body.concept .txt-concept {
  margin-top: 40px;
}
body.concept .list-images .item-list-images + .item-list-images {
  margin-top: 16px;
}
body.concept {
  /*-------------------------------------------------------------*/
}

/*---------------------------------------------------------------
lineup
---------------------------------------------------------------*/
.sec-studio .list-plan .item-list-plan,
.sec-other .list-plan .item-list-plan {
  border: 1px solid #2F2F2F;
  border-radius: 2px;
  transition: transform 0.5s;
}
.sec-studio .list-plan .item-list-plan a,
.sec-other .list-plan .item-list-plan a {
  display: block;
  padding: 32px 24px;
  text-decoration: none;
}
.sec-studio .list-plan .item-list-plan .img-thumb,
.sec-other .list-plan .item-list-plan .img-thumb {
  aspect-ratio: 2/3;
  overflow: hidden;
  margin-top: 24px;
}
.sec-studio .list-plan .item-list-plan .img-thumb img,
.sec-other .list-plan .item-list-plan .img-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-studio .list-plan .item-list-plan .box-price,
.sec-other .list-plan .item-list-plan .box-price {
  border-top: 1px solid #2F2F2F;
  border-bottom: 1px solid #2F2F2F;
  font-family: "Zen Old Mincho", serif;
  font-size: 1.6rem;
  line-height: 1;
  margin-top: 1.5em;
  padding: 1.5em 0;
  text-align: center;
}
.sec-studio .list-plan .item-list-plan .box-price .txt-sub,
.sec-other .list-plan .item-list-plan .box-price .txt-sub {
  display: block;
  font-size: 0.75em;
  margin-top: 0.4em;
}
.sec-studio .list-plan .item-list-plan .btn-cmn,
.sec-other .list-plan .item-list-plan .btn-cmn {
  display: flex;
  justify-content: center;
  margin-top: 24px;
}
.sec-studio .list-plan .item-list-plan + .item-list-plan,
.sec-other .list-plan .item-list-plan + .item-list-plan {
  margin-top: 8px;
}
@media (any-hover: hover) {
  .sec-studio .list-plan .item-list-plan:hover,
  .sec-other .list-plan .item-list-plan:hover {
    transform: translateY(-10px);
  }
  .sec-studio .list-plan .item-list-plan:hover .btn-linktext:after,
  .sec-other .list-plan .item-list-plan:hover .btn-linktext:after {
    transform: translateX(10px);
  }
}
@media (min-width: 768px) {
  .sec-studio .list-plan,
  .sec-other .list-plan {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
  }
  .sec-studio .list-plan .item-list-plan a,
  .sec-other .list-plan .item-list-plan a {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  .sec-studio .list-plan .item-list-plan .btn-cmn,
  .sec-other .list-plan .item-list-plan .btn-cmn {
    margin-top: auto;
    padding-top: 24px;
  }
  .sec-studio .list-plan .item-list-plan + .item-list-plan,
  .sec-other .list-plan .item-list-plan + .item-list-plan {
    margin-top: 0;
  }
}

body.lineup {
  /*-------------------------------------------------------------*/
  /** COMMON **/
}
body.lineup .img-thumb,
body.lineup .box-mainimage {
  aspect-ratio: 2/3;
  overflow: hidden;
}
body.lineup .img-thumb img,
body.lineup .box-mainimage img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
body.lineup {
  /** LIST **/
}
body.lineup .sec-other {
  background-color: #ffffff;
  margin-top: 112px;
  padding: 112px 0;
}
body.lineup {
  /** DETAIL **/
}
body.lineup .sec-lineup-detail .mod-details {
  margin-top: 32px;
}
body.lineup .sec-lineup-detail .list-flow {
  position: relative;
}
body.lineup .sec-lineup-detail .list-flow .item-list-flow + .item-list-flow {
  margin-top: 16px;
}
body.lineup .sec-lineup-detail .list-flow:after {
  background-color: #E6E6E6;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  z-index: -1;
}
body.lineup .sec-lineup-detail .box-caution {
  border: 1px solid #2F2F2F;
  padding: 24px;
}
body.lineup .sec-lineup-detail .box-caution .list-caution .item-list-caution {
  display: flex;
  align-items: flex-start;
}
body.lineup .sec-lineup-detail .box-caution .list-caution .item-list-caution + .item-list-caution {
  margin-top: 1em;
}
body.lineup .sec-lineup-detail .box-caution .list-caution .item-list-caution:before {
  content: "※";
  margin-right: 0.5em;
}
body.lineup {
  /*-------------------------------------------------------------*/
}

/*---------------------------------------------------------------
gallery
---------------------------------------------------------------*/
/* ARCHIVE */
body.post-type-archive-gallery {
  /*-------------------------------------------------------------*/
}
body.post-type-archive-gallery .txt-caution_pet + * {
  margin-top: 1em;
}
body.post-type-archive-gallery .list-article-gallery .item-list-article-gallery a {
  display: block;
  text-decoration: none;
  transition: opacity 0.7s;
}
@media (any-hover: hover) {
  body.post-type-archive-gallery .list-article-gallery .item-list-article-gallery a .img-thumbnail {
    position: relative;
    overflow: hidden;
  }
  body.post-type-archive-gallery .list-article-gallery .item-list-article-gallery a .img-thumbnail:before {
    background-color: rgba(47, 47, 47, 0.7);
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 999px;
    filter: blur(150px);
    opacity: 0;
    transform: scale(0);
    transition: 0.7s;
  }
  body.post-type-archive-gallery .list-article-gallery .item-list-article-gallery a .img-thumbnail:after {
    content: "VIEW MORE";
    color: #FFFFFF;
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(1.8rem, 1.6021rem + 0.8443vw, 2.4rem);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    margin-left: -4em;
    transition: 0.9s;
  }
  body.post-type-archive-gallery .list-article-gallery .item-list-article-gallery a .img-thumbnail:hover:before {
    border-radius: 0;
    filter: blur(0);
    opacity: 1;
    transform: scale(2);
  }
  body.post-type-archive-gallery .list-article-gallery .item-list-article-gallery a .img-thumbnail:hover:after {
    opacity: 1;
    margin-left: 0;
  }
}
body.post-type-archive-gallery .list-article-gallery .item-list-article-gallery .txt-date {
  color: #868686;
}
@media (min-width: 768px) {
  body.post-type-archive-gallery .list-article-gallery {
    display: grid;
    grid-template-columns: repeat(2, 47.9%);
    gap: 48px 4.2%;
  }
  body.post-type-archive-gallery .list-article-gallery .block-cmn {
    margin-top: 0;
  }
}
@media (min-width: 1024px) {
  body.post-type-archive-gallery .list-article-gallery {
    grid-template-columns: repeat(3, 30.5%);
    gap: 48px 4.25%;
  }
}
body.post-type-archive-gallery {
  /*-------------------------------------------------------------*/
}

/* SINGLE */
body.single-gallery {
  /*-------------------------------------------------------------*/
}
body.single-gallery .article-gallery .list-images .item-list-images + .item-list-images {
  margin-top: 8px;
}
body.single-gallery .article-gallery .mod-text {
  margin-top: 32px;
}
body.single-gallery .article-gallery .mod-text .mod-title:after {
  background-color: #2F2F2F;
  content: "";
  display: block;
  margin: 32px 0;
  width: 32px;
  height: 1px;
}
body.single-gallery .article-gallery .mod-text .mod-title .txt-data {
  color: #868686;
}
body.single-gallery .article-gallery .mod-text .mod-title .txt-data .txt-plan {
  color: #868686;
}
body.single-gallery .article-gallery .mod-text .mod-title .list-category {
  display: flex;
  margin-top: 0;
}
body.single-gallery .article-gallery .mod-text .mod-title .list-category .item-list-category + .item-list-category:before {
  content: "/";
  margin: 0 0.5em;
}
body.single-gallery .article-gallery .mod-text .mod-title .txt-title {
  line-height: 1.5;
  margin-top: 0.5em;
}
@media (min-width: 768px) {
  body.single-gallery .article-gallery .list-images {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  body.single-gallery .article-gallery .list-images .item-list-images {
    background-color: #FFFFFF;
    height: 100%;
    display: flex;
    align-items: center;
  }
  body.single-gallery .article-gallery .list-images .item-list-images + .item-list-images {
    margin-top: 0;
  }
}
@media (min-width: 1024px) {
  body.single-gallery .article-gallery .list-images {
    grid-template-columns: repeat(3, 1fr);
  }
}
body.single-gallery {
  /*-------------------------------------------------------------*/
}

/*---------------------------------------------------------------
information
---------------------------------------------------------------*/
body.information {
  /*-------------------------------------------------------------*/
}
body.information .mod-information {
  margin-top: 48px;
}
body.information {
  /** INTRO **/
}
body.information .sec-intro .mod-intro p + p {
  margin-top: 32px;
}
@media (min-width: 768px) {
  body.information .sec-intro .mod-intro p + p {
    margin-top: 48px;
  }
  body.information .sec-intro .mod-information {
    margin-top: 64px;
  }
}
body.information {
  /** ACCESS **/
}
body.information .sec-access .mod-map {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 100%;
  z-index: 1;
  filter: grayscale(1);
}
body.information .sec-access .mod-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  body.information .sec-access .mod-map {
    padding-top: 56%;
  }
}
body.information {
  /*-------------------------------------------------------------*/
}

/*---------------------------------------------------------------
faq
---------------------------------------------------------------*/
body.faq {
  /*-------------------------------------------------------------*/
}
body.faq .list-faq .item-list-faq {
  border-top: 1px solid #E6E6E6;
  padding: 32px 0;
}
body.faq .list-faq .item-list-faq .txt-q,
body.faq .list-faq .item-list-faq .txt-a {
  position: relative;
  padding-left: 1.5em;
}
body.faq .list-faq .item-list-faq .txt-q:before,
body.faq .list-faq .item-list-faq .txt-a:before {
  position: absolute;
  top: 0;
  left: 0;
}
body.faq .list-faq .item-list-faq .txt-q {
  color: #868686;
}
body.faq .list-faq .item-list-faq .txt-q:before {
  content: "Q.";
}
body.faq .list-faq .item-list-faq .txt-a {
  margin-top: 1em;
}
body.faq .list-faq .item-list-faq .txt-a:before {
  content: "A.";
}
body.faq .list-faq .item-list-faq:last-child {
  border-bottom: 1px solid #E6E6E6;
}
@media (min-width: 1024px) {
  body.faq .list-faq .item-list-faq {
    padding: 48px 0;
  }
}
body.faq {
  /*-------------------------------------------------------------*/
}

/*---------------------------------------------------------------
contact
---------------------------------------------------------------*/
body.contact {
  /*-------------------------------------------------------------*/
}
body.contact .mod-tel dd {
  line-height: 1.2;
}
body.contact .mod-tel dd .txt-tel {
  font-size: clamp(2.4rem, 1.6084rem + 3.3773vw, 4.8rem);
}
body.contact .mod-tel dd .txt-hours {
  display: block;
  margin-top: 0.5em;
}
body.contact {
  /*-------------------------------------------------------------*/
}

/*---------------------------------------------------------------
NOTE
---------------------------------------------------------------*/
/* COMMON */
.list-note .item-list-note a {
  text-decoration: none;
}
.list-note .item-list-note a .img-thumb {
  aspect-ratio: 4/3;
  overflow: hidden;
  margin-top: 24px;
}
.list-note .item-list-note a .img-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.8s;
}
.list-note .item-list-note a .box-text {
  margin-top: 16px;
}
.list-note .item-list-note a .box-text .txt-data {
  color: #868686;
}
.list-note .item-list-note a .box-text .txt-title {
  margin-top: 0.5em;
  line-height: 1.6;
}
.list-note .item-list-note + .item-list-note {
  margin-top: 40px;
}
@media (any-hover: hover) {
  .list-note .item-list-note:hover .img-thumb img {
    transform: scale(1.05);
  }
  .list-note .item-list-note:hover .box-text {
    text-decoration: underline;
  }
}
@media (min-width: 768px) {
  .list-note {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 48px;
  }
  .list-note .item-list-note + .item-list-note {
    margin-top: 0;
  }
}

/* ARCHIVE */
body.category-news {
  /*-------------------------------------------------------------*/
  /*-------------------------------------------------------------*/
}

/* SINGLE */
body.single-post {
  /*-------------------------------------------------------------*/
}
body.single-post .mod-title .txt-date {
  color: #868686;
  display: block;
  margin-top: 16px;
}
body.single-post .mod-title .ttl-02 {
  line-height: 1.5;
}
body.single-post .mod-title .ttl-02 .txt-ttl-ja {
  font-family: "Gothic Medium BBB", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
}
body.single-post .mod-content:before {
  background-color: #2F2F2F;
  content: "";
  display: block;
  margin: 32px 0;
  width: 32px;
  height: 1px;
}
body.single-post {
  /*-------------------------------------------------------------*/
}

/*---------------------------------------------------------------
shichigosan
---------------------------------------------------------------*/
body.shichigosan {
  /*-------------------------------------------------------------*/
}
body.shichigosan .ttl-shichigosan {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(3.2rem, 2.9361rem + 1.1258vw, 4rem);
  line-height: 1.5;
}
body.shichigosan .ttl-shichigosan .txt-sub {
  font-size: 1.2rem;
  margin-top: 1em;
}
body.shichigosan .img-main,
body.shichigosan .txt-lead {
  margin-top: 40px;
}
body.shichigosan .mod-contact {
  margin-top: 56px;
}
body.shichigosan .mod-contact .mod-tel dd {
  line-height: 1.2;
}
body.shichigosan .mod-contact .mod-tel dd .txt-tel {
  font-size: clamp(2.4rem, 1.6084rem + 3.3773vw, 4.8rem);
}
body.shichigosan .mod-contact .mod-tel dd .txt-hours {
  display: block;
  margin-top: 0.5em;
}
body.shichigosan .mod-contact .btn-contact {
  margin-top: 1em;
  text-align: left;
}
body.shichigosan .mod-details {
  margin-top: 56px;
}
body.shichigosan .list-images .item-list-images + .item-list-images {
  margin-top: 16px;
}
@media (min-width: 1024px) {
  body.shichigosan .img-main {
    background-color: #EEEDED;
  }
  body.shichigosan .img-main img {
    display: block;
    margin: 0 auto;
    max-height: 90vh;
    width: auto;
  }
}
body.shichigosan {
  /*-------------------------------------------------------------*/
}

/*---------------------------------------------------------------
lesson
---------------------------------------------------------------*/
body.lesson {
  /*-------------------------------------------------------------*/
}
body.lesson .ttl-lesson {
  font-family: "Zen Old Mincho", serif;
  font-size: clamp(3.2rem, 2.9361rem + 1.1258vw, 4rem);
  line-height: 1.5;
}
body.lesson .ttl-lesson .txt-sub {
  font-size: 1.2rem;
  margin-top: 1em;
}
body.lesson .img-main,
body.lesson .txt-lead {
  margin-top: 40px;
}
body.lesson .mod-contact {
  margin-top: 56px;
}
body.lesson .mod-contact .mod-tel dd {
  line-height: 1.2;
}
body.lesson .mod-contact .mod-tel dd .txt-tel {
  font-size: clamp(2.4rem, 1.6084rem + 3.3773vw, 4.8rem);
}
body.lesson .mod-contact .mod-tel dd .txt-hours {
  display: block;
  margin-top: 0.5em;
}
body.lesson .mod-contact .btn-contact {
  margin-top: 1em;
  text-align: left;
}
body.lesson .mod-details {
  margin-top: 56px;
}
body.lesson .list-images .item-list-images + .item-list-images {
  margin-top: 16px;
}
@media (min-width: 1024px) {
  body.lesson .img-main {
    background-color: #EEEDED;
  }
  body.lesson .img-main img {
    display: block;
    margin: 0 auto;
    max-height: 90vh;
    width: auto;
  }
}
body.lesson {
  /*-------------------------------------------------------------*/
}/*# sourceMappingURL=style.css.map */