@charset "UTF-8";
/* ============================
    reset
============================*/
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated:2010-09-17
Author:Richard Clark - http://richclarkdesign.com 
Twitter:@rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video,
button {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, picture {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

a:active, a:hover {
  outline-width: 0;
}

/* add */
* {
  box-sizing: border-box;
}
*::before, *::after {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
  width: auto;
  border: 0;
  border-style: none;
  vertical-align: top;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

ul, ol, ul li, ol li {
  list-style: none;
}

/*color*/
/*add color*/
/*font-family*/
/*filler color*/
/*text-shadow*/
/*media query break point*/
/*mainBP*/
/*gHeader用*/
/*cubic*/
/* media query */
/* hover */
/* ------------------------------------------------------------
	lineHeightCrop（line-heightの不要な余白を打ち消す）のmixin。
------------------------------------------------------------ */
a {
  color: #fff;
  text-decoration: none;
}
a:hover, a:focus {
  color: #fff;
}

html {
  font-size: 62.5%;
}

body {
  color: #242424;
  font-family: YakuHanMP, "Zen Old Mincho", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-size: 16px;
  letter-spacing: 0.05em;
  line-height: 1.8;
}
@media only screen and (max-width: 768px) {
  body {
    font-size: 14px;
  }
}

main {
  font-family: YakuHanMP, "Zen Old Mincho", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  background-color: #fafafa;
  color: #242424;
}

button {
  font-family: YakuHanMP, "Zen Old Mincho", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

em,
i {
  font-style: normal;
}

/* ==========================================================
 アニメーションエフェクト
========================================================== */
.is-animate.-mvfade {
  opacity: 0;
  transition: 2s cubic-bezier(0.7, 0, 0.41, 0.99);
  filter: blur(15px);
}
.is-animate.-mvfade[data-type=right] {
  transform: translate(10%);
}
.is-animate.-mvfade[data-type=left] {
  transform: translate(-10%);
}
.is-animate.-mvfade[data-type=up] {
  transform: translateY(10%);
}
.is-animate.-mvfade.active {
  opacity: 1;
  transform: translate(0);
  filter: blur(0);
}

/* ==========================================================
 スクロールエフェクト
========================================================== */
.js-animate.-show {
  opacity: 0;
  transition: 1s cubic-bezier(0.7, 0, 0.41, 0.99);
}
.js-animate.-show[data-type=right] {
  transform: translate(5%);
}
.js-animate.-show[data-type=left] {
  transform: translate(-10%);
}
.js-animate.-show[data-type=up] {
  transform: translateY(10%);
}
.js-animate.-show.active {
  opacity: 1;
  transform: translate(0);
}
@media only screen and (max-width: 768px) {
  .js-anipc .js-animate.-show {
    transform: translate(0);
    opacity: 0;
  }
}

.is-animate.-show {
  opacity: 0;
  transition: 1s cubic-bezier(0.7, 0, 0.41, 0.99);
}
.is-animate.-show[data-type=right] {
  transform: translate(10%);
}
.is-animate.-show[data-type=right] {
  transform: translate(10%);
}
.is-animate.-show[data-type=left] {
  transform: translate(-10%);
}
.is-animate.-show[data-type=up] {
  transform: translateY(10%);
}
.is-animate.-show[data-type=fade] {
  opacity: 0;
  transition: 2s cubic-bezier(0.7, 0, 0.41, 0.99);
  filter: blur(15px);
}
.is-animate.-show[data-type=img] {
  opacity: 0;
  transition: 1s cubic-bezier(0.7, 0, 0.41, 0.99);
}
.is-animate.-show[data-type=img] img {
  transform: scale(1.2);
  transition: 2s 0.5s;
}
.p-concept__gall__2 .is-animate.-show[data-type=img] img {
  transform: scale(1.2) translateY(-50%);
  transition: 2s 0.5s;
}
.is-animate.-show.active {
  opacity: 1;
  transform: translate(0);
  filter: blur(0);
}
.is-animate.-show.active img {
  transform: scale(1);
}
#salon-full .is-animate.-show.active .p-concept__gall__2 img {
  transform: scale(1) translateY(-50%) !important;
}

/*header*/
.comingsoon {
  display: inline-block;
  position: absolute;
  right: -8rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1rem;
  white-space: nowrap;
}

.header {
  position: relative;
  width: 100%;
  letter-spacing: 0em;
  z-index: 600;
}
.header .logo-bukkenLogo {
  position: absolute;
  top: 30px;
  left: 30px;
  width: 120px;
}
@media only screen and (max-width: 768px) {
  .header .logo-bukkenLogo {
    top: 25px;
    left: 20px;
    width: 102px;
  }
}
.header .logo-bukkenLogo img {
  filter: invert(82%) sepia(0%) saturate(2%) hue-rotate(233deg) brightness(106%) contrast(101%);
}
.header .logo .logo-bukkenLogo {
  position: fixed;
}
.header .logo .logo-bukkenLogo img {
  filter: none;
}
.header .mContent {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 300;
  visibility: hidden;
  pointer-events: none;
}
.header .mContent .menu__close,
.header .mContent .menu__inner {
  opacity: 0;
  visibility: hidden;
  transition-timing-function: cubic-bezier(0.46, 0.1, 0.29, 1) !important;
}
.header .mContent .menu__bg {
  position: absolute;
  left: 0;
  bottom: -100%;
  width: 100%;
  height: 100%;
  background: #F4F4F4;
  opacity: 0;
  transition: 0.6s;
  transition-timing-function: cubic-bezier(0.46, 0.1, 0.29, 1) !important;
}
.header .mContent.is-visible {
  visibility: visible;
  pointer-events: auto;
}
.header .mContent.is-visible .menu__close,
.header .mContent.is-visible .menu__inner {
  opacity: 1;
  visibility: visible;
  transition: 0.3s 0.24s;
}
.header .mContent.is-visible .menu__bg {
  opacity: 1;
  transform: translate(0, 0);
  transition: 0.2s;
  bottom: 0;
}
.header .mContent.contentMenu .menu__bg, .header .mContent.infoMenu .menu__bg {
  top: -100%;
  bottom: auto;
}
@media only screen and (max-width: 768px) {
  .header .mContent.contentMenu .menu__bg, .header .mContent.infoMenu .menu__bg {
    top: auto;
    bottom: -100%;
  }
}
.header .mContent.contentMenu.is-visible .menu__bg, .header .mContent.infoMenu.is-visible .menu__bg {
  top: 0;
  bottom: auto;
}
@media only screen and (max-width: 768px) {
  .header .mContent.contentMenu.is-visible .menu__bg, .header .mContent.infoMenu.is-visible .menu__bg {
    top: auto;
    bottom: 0;
  }
}
.header .menu__close {
  position: fixed;
  top: 35px;
  right: 35px;
  z-index: 500;
}
@media only screen and (max-width: 768px) {
  .header .menu__close {
    top: 25px;
    right: 20px;
  }
}
.header .menu__close .menu__close-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
}
.header .menu__close .menu__close-btn .iconBox {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.8);
}
@media only screen and (max-width: 768px) {
  .header .menu__close .menu__close-btn .iconBox {
    width: 32px;
    height: 32px;
  }
}
.header .menu__close .menu__close-btn .iconBox img {
  width: 12px;
  height: 12px;
}
.header .menu__inner {
  position: relative;
  overflow: scroll;
  width: 100%;
  height: 100%;
}
.header .menu-contentArea {
  color: #333;
  padding: 150px 0 60px;
  min-height: 520px;
}
@media only screen and (max-width: 768px) {
  .header .menu-contentArea {
    padding: 130px 0 40px;
  }
}
.header .menu-contentArea a {
  transition: all 0.3s;
}
.header .menu-contentArea a:hover {
  opacity: 0.6;
}
@media only screen and (max-width: 768px) {
  .header .menu-contentArea a {
    transition: none;
  }
  .header .menu-contentArea a:hover {
    opacity: 1;
  }
}
.header .menu-btnArea {
  margin-top: 60px;
}
.header .menu-btnArea__item {
  font-size: 1.2rem;
  flex-basis: 47.4%;
  margin: 4px;
}
@media only screen and (max-width: 768px) {
  .header .menu-btnArea__item {
    font-size: 1rem;
  }
}
.header .menu-btnArea__item.full {
  flex-basis: 100%;
}
.header .menu-btnArea__item p {
  margin-bottom: 20px;
}
.header .menu-ftInfoArea {
  color: #fff;
  background: #333;
  padding: 50px 0 60px;
}
@media only screen and (max-width: 768px) {
  .header .menu-ftInfoArea {
    padding: 40px 0 50px;
  }
}
.header .menu-ftInfoArea .contact {
  line-height: 1.6;
}
.header .menu-ftInfoArea .name {
  font-size: clamp(1.3rem, 11.8695652174px + 0.2898550725vw, 1.5rem);
}
.header .menu-ftInfoArea .contact_info {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  margin-top: 20px;
}
@media only screen and (max-width: 768px) {
  .header .menu-ftInfoArea .contact_info {
    margin-top: 16px;
  }
}
.header .menu-ftInfoArea .contact_info .tel {
  flex-basis: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.header .menu-ftInfoArea .contact_info .tel a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.2em;
  width: 100%;
  font-size: clamp(2.8rem, 25.7391304348px + 0.5797101449vw, 3.2rem);
  line-height: 1;
  letter-spacing: 0.1em;
  font-family: "Cormorant Infant", serif;
  color: #333;
  background: #fff;
  height: 50px;
}
@media only screen and (max-width: 768px) {
  .header .menu-ftInfoArea .contact_info .tel a {
    height: 40px;
  }
}
.header .menu-ftInfoArea .contact_info .tel a img {
  height: 0.8em;
  width: auto;
  filter: invert(82%) sepia(0%) saturate(2%) hue-rotate(233deg) brightness(106%) contrast(101%);
  vertical-align: baseline;
}
@media only screen and (max-width: 768px) {
  .header .menu-ftInfoArea .contact_info .tel a img {
    width: 30px;
    margin-top: 0;
  }
}
.header .menu-ftInfoArea .contact_info .time {
  flex-basis: 50%;
  font-size: 1.1rem;
}
@media only screen and (max-width: 768px) {
  .header .menu-ftInfoArea .contact_info .time {
    font-size: 1rem;
    margin-top: 16px;
  }
}
.header .menu-ftInfoArea .contact_info .time .notice {
  display: inline-block;
  margin-top: 4px;
  padding: 3px 0 4px;
  border-top: 1px solid rgba(181, 154, 91, 0.6);
  border-bottom: 1px solid rgba(181, 154, 91, 0.6);
  color: #dcb863;
}
.header .menu-ftInfoArea .contact_info .time__holiday {
  display: inline-block;
  margin-bottom: 1rem;
}
.header .menu-ftInfoArea .contact_info .time__holiday__undr {
  font-size: 1.2em;
  border-bottom: 1px solid;
}
@media only screen and (max-width: 768px) {
  .header .menu-ftInfoArea .contact_info {
    flex-direction: column;
  }
}

/* ------------------------------------------------------------
    headerMenuBtn
------------------------------------------------------------ */
.headerMenuBtn {
  position: fixed;
  width: 106px;
  top: 30px;
  right: 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  .headerMenuBtn {
    display: none;
  }
}
.headerMenuBtn a {
  position: relative;
  display: flex;
}
.headerMenuBtn a span {
  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
}
.headerMenuBtn__info span {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.8);
}
.headerMenuBtn__menu {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  overflow: hidden;
  background: #fff;
  padding: 3px;
}
.headerMenuBtn__menu span {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: linear-gradient(to right, #C74E95, #7F0274);
  font-size: 1.1rem;
  font-family: "Cormorant Infant", serif;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.15);
}
.headerMenuBtn .u-new::after {
  top: 7px;
  right: 7px;
}

/* ------------------------------------------------------------
    infoMenu
------------------------------------------------------------ */
.infoMenu .infoTitle {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .infoMenu .infoTitle {
    text-align: left;
    line-height: 1;
  }
}
.infoMenu .infoTitle .infoTitle__01 {
  position: relative;
  color: #B3B3B3;
  font-size: 2rem;
}
@media only screen and (max-width: 768px) {
  .infoMenu .infoTitle .infoTitle__01 {
    display: block;
    color: #333;
  }
}
.infoMenu .infoTitle .infoTitle__01::before {
  content: "";
  width: 1px;
  height: 54px;
  background: #B3B3B3;
  position: absolute;
  top: -54px;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 768px) {
  .infoMenu .infoTitle .infoTitle__01::before {
    display: none;
  }
}
.infoMenu .infoTitle .infoTitle__02 {
  color: #777;
  font-size: 1rem;
}
.infoMenu .infoInnerBox {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .infoMenu .infoInnerBox {
    border-top: solid 1px #aaa;
    border-bottom: solid 1px #aaa;
    margin: 16px 0 20px;
    padding: 20px 0;
  }
}
.infoMenu .infoInnerBox .infoInner .menu-btnArea__item {
  margin: -1rem auto 2rem;
}
.infoMenu .infoInnerBox .infoInner__ttl {
  margin: 30px auto;
  font-size: clamp(2rem, 17.1739130435px + 0.7246376812vw, 2.5rem);
  width: -moz-max-content;
  width: max-content;
}
@media only screen and (max-width: 768px) {
  .infoMenu .infoInnerBox .infoInner__ttl {
    margin: 0 auto 20px;
  }
}
.infoMenu .infoInnerBox .infoInner__ttl span.smaller {
  font-size: 0.85em;
}
.infoMenu .infoInnerBox .infoInner__ttl .obj--bordb {
  border-bottom: 1px solid #242424;
}
.infoMenu .infoInnerBox .infoInner__lead {
  font-size: 1.4rem;
}
@media only screen and (max-width: 768px) {
  .infoMenu .infoInnerBox .infoInner__lead {
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 768px) {
  .infoMenu .infoInnerBox .menu-btnArea {
    margin-top: 40px;
  }
}
.infoMenu .menu-bnrArea {
  background: #EBEBEB;
  padding: 50px 0;
}
@media only screen and (max-width: 768px) {
  .infoMenu .menu-bnrArea {
    padding: 40px 0;
  }
}
.infoMenu .menu-bnrArea a {
  flex-basis: 47.4%;
  max-width: 378px;
  text-align: center;
  margin: 4px auto;
}
.infoMenu .menu-bnrArea a.full {
  flex-basis: 100%;
}
.infoMenu .infoNews {
  margin-top: 60px;
}
@media only screen and (max-width: 768px) {
  .infoMenu .infoNews {
    margin-top: 0;
  }
}
.infoMenu .infoNews .newsDetail {
  background: #fff;
  margin-bottom: 4px;
  display: flex;
  align-items: center;
  padding: 10px 20px;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 768px) {
  .infoMenu .infoNews .newsDetail {
    display: block;
  }
}
.infoMenu .infoNews .newsDetail .newsDetail__term {
  padding-right: 30px;
  font-family: "Cormorant Infant", serif;
  font-size: clamp(1.2rem, 10.3043478261px + 0.4347826087vw, 1.5rem);
}
.infoMenu .infoNews .newsDetail .newsDetail__desc {
  font-size: clamp(1.2rem, 10.8695652174px + 0.2898550725vw, 1.4rem);
  line-height: 1.5;
}
.infoMenu .infoNews .newsDetail .newsDetail__desc a {
  text-decoration: underline;
  color: #333;
}

.p-hlimited {
  width: 100%;
  max-width: 1366px;
  margin: 0 auto;
  padding: 2rem 0;
}
.p-hlimited h3 {
  text-align: center;
  display: flex;
  justify-content: space-between;
  align-items: center;
  line-height: 1.4;
}
.p-hlimited h3 span {
  font-size: clamp(1.6rem, 14.8695652174px + 0.2898550725vw, 1.8rem);
  padding: 0 1rem;
}
.p-hlimited h3::before, .p-hlimited h3:after {
  content: "";
  opacity: 0;
  display: inline-block;
  flex-grow: 1;
  height: 1px;
  background-color: #fff;
}
.p-hlimited__wrap {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: stretch;
  margin: 0 auto;
  margin-top: 1rem;
}
@media only screen and (max-width: 1080px) {
  .p-hlimited__wrap {
    flex-direction: column;
    gap: 1rem;
  }
}
.p-hlimited__step {
  background: #fff;
  color: #010101;
  text-align: center;
  flex-grow: 1;
  position: relative;
  padding: 2.5rem 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.p-hlimited__step::before, .p-hlimited__step::after {
  content: "";
  display: block;
  position: absolute;
  width: 10px;
  height: 55%;
  background: #f4f4f4;
}
@media only screen and (max-width: 1080px) {
  .p-hlimited__step::before, .p-hlimited__step::after {
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 2.5rem solid transparent;
    border-left: 2.5rem solid transparent;
    border-top: 2.5rem solid #010101;
    border-bottom: 0;
    background-color: unset;
  }
}
.p-hlimited__step:first-child::before, .p-hlimited__step:first-child::after {
  display: none;
}
.p-hlimited__step:before {
  top: 0;
  left: -3%;
  bottom: auto;
  right: auto;
  transform-origin: right top;
  transform: rotate(-15deg) translateY(-5px);
}
@media only screen and (max-width: 1080px) {
  .p-hlimited__step:before {
    left: 50%;
    transform: translateX(-50%);
    top: -1rem;
  }
}
.p-hlimited__step:after {
  bottom: 0;
  left: -3%;
  top: auto;
  right: auto;
  transform-origin: right bottom;
  transform: rotate(15deg) translateY(5px);
}
@media only screen and (max-width: 1080px) {
  .p-hlimited__step:after {
    display: none;
  }
}
.p-hlimited__step-icon {
  color: #A67C52;
  line-height: 1.4;
  font-size: 2rem;
}
.p-hlimited__step-icon span {
  font-size: 1.5em;
}
.p-hlimited__step-img {
  width: 6rem;
  height: 6rem;
}
.p-hlimited__step-title {
  color: #A67C52;
}
.p-hlimited__step-text {
  font-size: 1.4rem;
  margin-top: 1rem;
}
.p-hlimited__entry {
  display: block;
  width: 100%;
  max-width: 500px;
  margin: 5rem auto 0;
  text-align: center;
  padding: 1.5rem;
  border: 1px solid rgba(255, 255, 255, 0.5);
  transition: 0.3s;
}
.p-hlimited__entry:hover {
  background-color: #2A3C4E;
}

/* ------------------------------------------------------------
    contentMenu
------------------------------------------------------------ */
.contentMenu .menu-contentArea {
  padding-bottom: 80px;
}
.contentMenu .contentMenu-pageMenu {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  line-height: 1;
  letter-spacing: 0.05em;
}
.contentMenu .contentMenu-pageMenu .pageMenubox {
  width: 33.33%;
  max-width: 455px;
  padding: 0 24px;
}
@media only screen and (max-width: 1080px) {
  .contentMenu .contentMenu-pageMenu .pageMenubox {
    padding: 0 2vw;
  }
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .pageMenubox {
    width: 100%;
    max-width: 100%;
    padding: 0;
  }
}
.contentMenu .contentMenu-pageMenu .pageMenubox.-top {
  width: 100%;
  max-width: 1366px;
  padding: 0 24px;
}
@media only screen and (max-width: 1080px) {
  .contentMenu .contentMenu-pageMenu .pageMenubox.-top {
    padding: 0 2vw;
  }
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .pageMenubox.-top {
    padding: 0;
  }
}
.contentMenu .contentMenu-pageMenu .pageMenubox.-top a {
  width: calc(33.33% - 32px);
  max-width: 350px;
  transition: none;
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .pageMenubox.-top a {
    width: 100%;
    max-width: 100%;
  }
}
.contentMenu .contentMenu-pageMenu .pageMenubox.-top a::after {
  left: 60px;
  background-image: url(../../img/common/i_arr.svg);
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .pageMenubox.-top a::after {
    left: auto;
    right: 8px;
  }
}
.contentMenu .contentMenu-pageMenu .contentMenu-pageLink,
.contentMenu .contentMenu-pageMenu .contentMenu-pageTitle {
  position: relative;
  display: block;
  padding: 18px 8px;
}
.contentMenu .contentMenu-pageMenu .contentMenu-pageLink::after,
.contentMenu .contentMenu-pageMenu .contentMenu-pageTitle::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-pageLink::after,
  .contentMenu .contentMenu-pageMenu .contentMenu-pageTitle::after {
    background-image: url(../../img/common/i_arr.svg);
  }
}
.contentMenu .contentMenu-pageMenu .contentMenu-pageLink {
  transition: all 0.3s;
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-pageTitle::after {
    transition: 0.3s;
    transform: translateY(-50%) rotate(90deg);
  }
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-pageTitle + .contentMenu-pageMenu__cont {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s;
  }
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-pageTitle.is-active::after {
    transform: translateY(-50%) rotate(-90deg);
  }
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-pageTitle.is-active + .contentMenu-pageMenu__cont {
    max-height: 300px;
  }
}
.contentMenu .contentMenu-pageMenu .contentMenu-pageLink__ttl,
.contentMenu .contentMenu-pageMenu .contentMenu-pageTitle__ttl,
.contentMenu .contentMenu-pageMenu .contentMenu-subLink__ttl {
  position: relative;
  color: #333;
  padding-right: 12px;
  font-size: clamp(1.3rem, 11.3043478261px + 0.4347826087vw, 1.6rem);
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-pageLink__ttl,
  .contentMenu .contentMenu-pageMenu .contentMenu-pageTitle__ttl,
  .contentMenu .contentMenu-pageMenu .contentMenu-subLink__ttl {
    font-size: 1.6rem;
  }
}
.contentMenu .contentMenu-pageMenu .contentMenu-pageLink__txt,
.contentMenu .contentMenu-pageMenu .contentMenu-pageTitle__txt,
.contentMenu .contentMenu-pageMenu .contentMenu-subLink__txt {
  font-family: "Cormorant Infant", serif;
  display: block;
  color: #777;
  letter-spacing: 0;
  font-size: 1rem;
  margin-top: 6px;
}
.contentMenu .contentMenu-pageMenu .contentMenu-pageList > li:nth-child(even) {
  margin-top: 24px;
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-pageList > li:nth-child(even) {
    margin-top: 0;
  }
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-subList {
    margin-bottom: 24px;
  }
}
.contentMenu .contentMenu-pageMenu .contentMenu-subList__item {
  background: #fff;
  margin-bottom: 4px;
  margin-left: 30px;
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-subList__item {
    margin-left: 10vw;
  }
}
.contentMenu .contentMenu-pageMenu .contentMenu-subList__item:last-child {
  margin-bottom: 0;
}
.contentMenu .contentMenu-pageMenu .contentMenu-subList__item a {
  display: flex;
  align-items: end;
  background-color: #fff;
  padding: 12px 0px 12px 12px;
}
@media only screen and (max-width: 1080px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-subList__item a {
    display: block;
  }
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-subList__item a {
    display: flex;
    padding: 14px 0px 14px 12px;
  }
}
.contentMenu .contentMenu-pageMenu .contentMenu-subList__item a .contentMenu-subLink__ttl {
  font-size: 1.3rem;
}
.contentMenu .contentMenu-pageMenu .contentMenu-subList__item a .contentMenu-subLink__txt {
  width: 100px;
}
@media only screen and (max-width: 1080px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-subList__item a .contentMenu-subLink__txt {
    width: 100%;
    margin-top: 0;
    margin-bottom: 4px;
  }
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-subList__item a .contentMenu-subLink__txt {
    width: 100px;
    margin-top: 2px;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-pageList__item {
    border-bottom: solid 1px #aaa;
  }
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-pageList__item.member {
    border-bottom: none;
  }
}
.contentMenu .contentMenu-pageMenu .contentMenu-pageList__item.member .contentMenu-pageLink {
  background-color: rgba(181, 154, 91, 0.1);
  border-top: solid 1px #aaa;
  border-bottom: solid 1px #aaa;
  box-sizing: border-box;
  margin: 24px 0;
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .contentMenu-pageList__item.member .contentMenu-pageLink {
    margin: 70px 0 24px;
  }
}
.contentMenu .contentMenu-pageMenu .contentMenu-pageList__item.member .contentMenu-pageLink::after {
  background-image: url(../../img/common/i_login.svg);
}
.contentMenu .contentMenu-pageMenu .contentMenu-pageList__item.mod--arr {
  border-bottom: solid 1px #aaa;
}
.contentMenu .contentMenu-pageMenu .contentMenu-pageList__item.mod--arr .contentMenu-pageLink::after {
  background-image: url(../../img/common/i_arr.svg);
}
.contentMenu .contentMenu-pageMenu .menuContent-subMenu {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 10px 10px;
  margin-top: 28px;
}
@media only screen and (max-width: 768px) {
  .contentMenu .contentMenu-pageMenu .menuContent-subMenu {
    flex-direction: column;
  }
}
.contentMenu .u-new::after {
  width: 8px;
  height: 8px;
}

/* ------------------------------------------------------------
    fixCvBtn
------------------------------------------------------------ */
.fixCvBtn {
  position: fixed;
  bottom: 20px;
  right: 30px;
  z-index: 100;
  display: block;
  transition: 0.3s opacity;
}
@media only screen and (max-width: 768px) {
  .fixCvBtn {
    display: none !important;
  }
}
.fixCvBtn.is-hide {
  opacity: 0;
  pointer-events: none;
}
.fixCvBtn a {
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.05em;
  font-size: 2rem;
  line-height: 1;
  background: rgba(42, 60, 78, 0.8);
  padding: 25px 32px;
  min-width: 230px;
  height: 42px;
  border-radius: 40px;
  text-align: center;
  transition: 0.3s background-color;
}
.fixCvBtn a small {
  font-size: 0.75em;
}
@media (hover: hover) and (pointer: fine) {
  .fixCvBtn a:hover {
    background-color: #EBEBEB;
    color: #242424;
  }
}

/* ------------------------------------------------------------
    cvMenu
------------------------------------------------------------ */
@media only screen and (max-width: 768px) {
  .cvMenu {
    display: none;
  }
}

/* ------------------------------------------------------------
    spNavBar
------------------------------------------------------------ */
.spNavBar {
  position: fixed;
  bottom: -1px;
  left: 0;
  width: 100%;
  background-color: #fff;
  border-radius: 10px 10px 0 0;
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.15);
  display: none;
  justify-content: space-between;
  padding: 4px 0 22px 0;
  height: 70px;
  z-index: 200;
}
@media only screen and (max-width: 768px) {
  .spNavBar {
    display: flex;
  }
}
.spNavBar.vBlack {
  background-color: #222;
  box-shadow: none;
  border: solid 1px #4e4e4e;
}
.spNavBar.vBlack .spNavBar__item.-menuBtn {
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.6);
}
.spNavBar.vBlack .spNavBar__item.-menuBtn .circle::after {
  background: #4e4e4e;
}
@media only screen and (max-width: 768px) {
  .spNavBar.vBlack .spNavBar__item.-menuBtn .circle::after {
    background: transparent;
  }
}
.spNavBar.vBlack .spNavBar__item.-menuBtn .menuTxt {
  position: absolute;
  font-size: 9px;
}
.spNavBar.vBlack .spNavBar__item .item-in p {
  color: #ddd;
}
.spNavBar.vBlack .spNavBar__item .icon img {
  filter: invert(82%) sepia(0%) saturate(2%) hue-rotate(233deg) brightness(106%) contrast(101%);
}
.spNavBar__item {
  width: 20%;
}
.spNavBar__item.-menuBtn {
  position: relative;
  top: -14px;
  width: 52px;
  min-width: 52px;
  height: 52px;
  border-radius: 50%;
  overflow: hidden;
  background: #fff;
  padding: 2px;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.15);
}
.spNavBar__item.-menuBtn .circle {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: linear-gradient(to right, #C74E95, #7F0274);
}
.spNavBar__item.-menuBtn .circle::after {
  content: "";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.spNavBar__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  height: 100%;
}
.spNavBar__item a .item-in {
  height: 46px;
}
.spNavBar__item a .item-in .icon {
  position: relative;
  width: 30px;
  height: 30px;
  margin: 0 auto 4px;
}
.spNavBar__item a .item-in p {
  font-size: 9px;
  letter-spacing: -0.02em;
  color: #777;
  white-space: nowrap;
  line-height: 1;
}
.spNavBar .u-new::after {
  top: 4px;
  right: -2px;
}

/* ------------------------------------------------------------
    spContent
------------------------------------------------------------ */
.spContent {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 600;
  opacity: 0;
  pointer-events: none;
  transition-duration: 0.6s;
}
.spContent.is-visible {
  opacity: 1;
  pointer-events: auto;
}
.spContent.is-visible .spContentBtnBox {
  bottom: -1px;
}

.spContent__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
}

.spContentBtnBox {
  position: absolute;
  bottom: -100%;
  left: 0;
  width: 100%;
  background: #fff;
  padding: 8px 8px 42px 8px;
  border-radius: 8px 8px 0 0;
  letter-spacing: 0.05em;
  transition: bottom 0.3s;
}
.spContentBtnBox li {
  width: 100%;
  border-radius: 8px;
  margin-bottom: 6px;
  overflow: hidden;
}
.spContentBtnBox li:last-child {
  margin-bottom: 0;
}
.spContentBtnBox li .tel__tel {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin-bottom: 2px;
}
.spContentBtnBox li .tel__tel span {
  font-family: "Cormorant Infant", serif;
  font-size: 2rem;
  letter-spacing: 0.1em;
}
.spContentBtnBox li .tel__tel img {
  width: 26px;
  margin-top: -16px;
  margin-right: 4px;
}
.spContentBtnBox li .tel__time {
  letter-spacing: 0;
  font-size: 1rem;
}
.spContentBtnBox::before {
  content: "";
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 2px;
  border-radius: 1px;
  background: #fff;
}

.spTelBtn .spContentBtnBox {
  color: #333;
  line-height: 1.6;
}
.spTelBtn .spContentBtnBox .name {
  font-size: 1.3rem;
  margin-top: 8px;
}
.spTelBtn .spContentBtnBox .tel {
  margin: 10px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 3px;
  overflow: hidden;
}
.spTelBtn .spContentBtnBox .tel a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.2em;
  text-align: center;
  width: 100%;
  font-size: 2.8rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-family: "Cormorant Infant", serif;
  background: #333;
}
.spTelBtn .spContentBtnBox .tel a img {
  height: 0.8em;
  width: auto;
  vertical-align: baseline;
}
.spTelBtn .spContentBtnBox .time {
  font-size: 1.1rem;
  margin-top: 12px;
}
.spTelBtn .spContentBtnBox .notice {
  display: inline-block;
  margin-top: 8px;
  padding: 2px 0;
  border-top: 1px solid rgba(181, 154, 91, 0.6);
  border-bottom: 1px solid rgba(181, 154, 91, 0.6);
  color: #dcb863;
}

body.is-hidden,
html.is-hidden {
  overflow: hidden;
}

/* ------------------------------------------------------------
    sp alert
------------------------------------------------------------ */
.spAlert {
  align-items: center;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  font-family: YakuHanMP, "Zen Old Mincho", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  height: 100vh;
  justify-content: center;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  transition: opacity 0.3s;
  visibility: hidden;
  width: 100vw;
  z-index: 99999;
}
.spAlert.landscape {
  display: flex;
  opacity: 1;
  visibility: visible;
}
.spAlert__inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  pointer-events: none;
  position: relative;
  z-index: 2;
}

.spAlertMsg {
  color: #ffffff;
  font-size: 2.1vw;
  letter-spacing: 0.15em;
  line-height: 1;
  margin-top: 6.5vh;
}

.spAlert .svgIcon {
  margin: 0 auto;
  width: 23%;
  min-width: 81.5px;
}
.spAlert .svgIcon__path {
  fill: none;
  stroke: #ffffff;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  stroke-width: 17;
}

.toiawase {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.toiawase a {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  font-family: "Cormorant Infant", serif;
  color: #fff;
  background: #b59a5b;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  height: 5rem;
  justify-content: center;
  padding: 1rem 3rem;
  border-radius: 50px;
}
@media only screen and (max-width: 768px) {
  .toiawase a {
    font-size: 1.6rem;
  }
}

.p-small {
  font-size: 12px;
  text-align: center;
  display: block;
}

/* ------------------------------------------------------------
    link
------------------------------------------------------------ */
.noLink {
  pointer-events: none !important;
  opacity: 0.4;
}

.obj--gold {
  background-color: #a67c52 !important;
}

/* ------------------------------------------------------------
    footer Caption
------------------------------------------------------------ */
.ftCaption {
  background-color: #242424;
}

.ftCaption .c-ft_cap {
  width: 90%;
  max-width: 1200px;
  margin-inline: auto;
  font-size: 1.1rem;
  padding: 60px 0;
  line-height: 1.6;
  color: #b2b2b2;
}
@media only screen and (max-width: 768px) {
  .ftCaption .c-ft_cap {
    padding: 40px 0;
    font-size: 1rem;
  }
}

/* ------------------------------------------------------------
    footer
------------------------------------------------------------ */
/* contact
---------------------------------------- */
footer {
  letter-spacing: 0.06em;
  line-height: 1.5;
  overflow: hidden;
  background-color: #242424;
  color: #fff;
}

.foot_1 {
  padding: 70px 0 35px;
}
@media only screen and (max-width: 768px) {
  .foot_1 {
    padding: 50px 0 25px;
  }
}
.foot_1 .contact {
  display: flex;
  align-items: flex-end;
  width: calc(100% - 200px);
  width: 40rem;
}
@media only screen and (max-width: 768px) {
  .foot_1 .contact {
    width: 100%;
    justify-content: center;
  }
}
.foot_1 .contact_info {
  width: 90%;
  max-width: 480px;
  text-align: left;
}
@media only screen and (max-width: 768px) {
  .foot_1 .contact_info {
    text-align: center;
    width: 100%;
    max-width: 100%;
  }
}
.foot_1 .contact_info .name {
  font-size: clamp(1.3rem, 11.8695652174px + 0.2898550725vw, 1.5rem);
  font-size: 1.5rem;
}
.foot_1 .contact_info .name small {
  font-size: 1.2rem;
}
@media only screen and (max-width: 768px) {
  .foot_1 .contact_info .name small {
    font-size: 1rem;
  }
}
.foot_1 .contact_info .toiawase {
  margin: 10px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.foot_1 .contact_info .toiawase a {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  font-family: "Cormorant Infant", serif;
  color: #fff;
  background: #b59a5b;
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  padding: 1rem;
  border-radius: 50px;
}
.foot_1 .contact_info .tel {
  margin: 10px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.foot_1 .contact_info .tel a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.2em;
  width: 100%;
  font-size: clamp(2.8rem, 25.7391304348px + 0.5797101449vw, 3.2rem);
  line-height: 1;
  letter-spacing: 0.1em;
  font-family: "Cormorant Infant", serif;
  color: #333;
  background: #fff;
  height: 50px;
}
@media only screen and (max-width: 768px) {
  .foot_1 .contact_info .tel a {
    height: 40px;
    font-size: 2.4rem !important;
  }
}
.foot_1 .contact_info .tel a img {
  height: 0.8em;
  width: auto;
  filter: invert(82%) sepia(0%) saturate(2%) hue-rotate(233deg) brightness(106%) contrast(101%);
  vertical-align: baseline;
}
@media only screen and (max-width: 768px) {
  .foot_1 .contact_info .tel a img {
    width: 30px;
    margin-top: 0;
  }
}
.foot_1 .contact_info .time {
  font-size: clamp(1.1rem, 10.4347826087px + 0.1449275362vw, 1.2rem);
}
@media only screen and (max-width: 768px) {
  .foot_1 .contact_info .time {
    margin-top: 12px;
  }
}
.foot_1 .contact_info .time__holiday {
  display: inline-block;
  margin-bottom: 1rem;
}
.foot_1 .contact_info .time__holiday__undr {
  font-size: 1.2em;
  border-bottom: 1px solid;
}
.foot_1 .contact_info .notice {
  display: inline-block;
  margin-top: 10px;
  padding: 5px 0;
  border-top: 1px solid rgba(181, 154, 91, 0.6);
  border-bottom: 1px solid rgba(181, 154, 91, 0.6);
  color: #dcb863;
}
.foot_1 .contact_cal {
  width: 80%;
  max-width: 283px;
  margin: 0 0 0 50px;
}
@media only screen and (max-width: 768px) {
  .foot_1 .contact_cal {
    margin: 40px auto;
  }
}
.foot_1 .staff {
  margin-left: 2.5rem;
  height: 5rem;
}
@media only screen and (max-width: 768px) {
  .foot_1 .staff {
    height: 5rem;
    width: auto;
    margin: 30px auto 0;
    display: flex;
    justify-content: center;
  }
}
.foot_1 .staff img {
  vertical-align: bottom;
  height: 100%;
  width: 100%;
}
.foot_1 .staff-wrap {
  display: flex;
  gap: 1rem;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  .foot_1 .staff-wrap {
    display: flex;
    flex-direction: column;
  }
}
.foot_1 .u-flexwrap {
  flex-wrap: wrap;
  gap: 2rem 0;
}
.foot_1 .u-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 768px) {
  .foot_1 .u-container {
    display: block;
  }
}

.foot_2 {
  padding: 0 0 35px;
}
.foot_2 .bnr {
  max-width: 800px;
  margin: 0 auto 15px;
}
.foot_2 img {
  vertical-align: bottom;
}
@media only screen and (max-width: 768px) {
  .foot_2 {
    padding: 0 0 25px;
  }
  .foot_2 .bnr {
    margin-bottom: 10px;
  }
}

.foot_3 {
  padding: 0 0 35px;
  text-align: center;
  background-color: #242424;
  padding: 20px 0;
}
.foot_3 .link_geo li {
  display: inline-block;
  margin-right: 24px;
}
.foot_3 .link_geo li:last-child {
  margin-right: 0;
}
.foot_3 .link_geo li a {
  display: block;
  padding: 5px 5px 5px 0;
  font-size: 1.3rem;
  text-align: center;
}
.foot_3 .link_geo li a span {
  display: inline-block;
  background: url("../../img/common/ico_arr.svg") no-repeat left center;
  background-size: 6px;
  padding-left: 13px;
}
@media only screen and (max-width: 768px) {
  .foot_3 .link_geo li {
    display: block;
    border-bottom: solid 1px rgba(255, 255, 255, 0.3);
  }
  .foot_3 .link_geo li a {
    padding: 15px 0;
    font-size: 1.1rem;
  }
  .foot_3 .link_geo li a span {
    background-size: 7px;
  }
}

.foot_4 {
  background-color: #fff;
  color: #212023;
}
.foot_4 small {
  font-family: "Cormorant Infant", serif;
  font-size: 1.2rem;
  display: block;
  padding: 20px 5%;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .foot_4 small {
    font-size: 1rem;
    padding: 15px 5% 90px;
  }
}

.ft_bnrArea {
  margin: 60px auto;
}
@media only screen and (max-width: 768px) {
  .ft_bnrArea {
    margin: 40px auto;
  }
}
.ft_bnrArea .bnr {
  margin-bottom: 15px;
}
.ft_bnrArea img {
  vertical-align: top;
  width: 90%;
  max-width: 1080px;
  margin: 0 auto;
}
.ft_bnrArea picture {
  width: 90%;
  max-width: 1080px;
  margin: 0 auto;
}
.ft_bnrArea picture img {
  width: 100%;
}

/* ------------------------------------------------------------
    page top
------------------------------------------------------------ */
.pageTop {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  background: #6b6b6b;
  height: 42px;
  font-family: "Cormorant Infant", serif;
  color: #fff;
  letter-spacing: 0;
  font-size: 1.2rem;
}
@media only screen and (max-width: 768px) {
  .pageTop {
    height: 38px;
    font-size: 1.1rem;
  }
}
.pageTop__img {
  margin-right: 6px;
  width: 18px;
}
@media only screen and (max-width: 768px) {
  .pageTop__img {
    width: 14px;
  }
}

.c-hidden {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  font-size: 0;
  z-index: -9999;
  visibility: hidden;
}

.c-cap {
  position: absolute;
  left: 2rem;
  bottom: 2rem;
  font-size: 1.1rem;
  letter-spacing: 0;
  line-height: 1.4;
  letter-spacing: 0.05em;
  text-shadow: 0 0 3px black, 0 0 3px black, 0 0 5px black;
}
@media only screen and (max-width: 768px) {
  .c-cap {
    font-size: 1rem;
  }
}
.c-cap--mv {
  bottom: 5vw;
  color: #242424;
  text-shadow: 0 0 3px white;
}
@media only screen and (max-width: 768px) {
  .c-cap--mv {
    left: 1rem;
    bottom: 6vw;
  }
}
.c-cap--mv.--w {
  color: #fff;
  text-shadow: 0 0 3px black;
}
.c-cap--bot {
  position: absolute;
  display: block;
  width: 100%;
  bottom: unset;
  left: unset;
  font-size: 1.2rem;
}
.c-cap--r {
  left: unset;
  right: 2rem;
}
.c-cap--norm {
  display: block;
  font-size: 1.1rem;
}
@media only screen and (max-width: 768px) {
  .c-cap--norm {
    font-size: 1rem;
  }
}
.c-cap--norm--r {
  text-align: right;
}

/* ------------------------------------------------------------
	image caption
------------------------------------------------------------ */
.c-imgBox {
  position: relative;
}
.c-imgBox img {
  width: 100%;
}
.c-imgBox--obfit img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-imgBox__cap, .c-imgBox__cap--lg, .c-imgBox__cap__Rbk, .c-imgBox__cap__Lbk, .c-imgBox__cap--btm-spc, .c-imgBox__cap--R, .c-imgBox__cap--bk {
  position: absolute;
  left: 5px;
  bottom: 5px;
  font-size: 1.1rem;
  letter-spacing: 0;
  color: #fff;
  text-shadow: 0px 0px 3px #000, 0px 0px 3px #000, 0px 0px 5px #000, 0px 0px 10px #000;
  line-height: 1;
  padding: 2px 3px;
}
.c-imgBox__cap--bk {
  color: #000;
  text-shadow: 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 10px #fff;
}
.c-imgBox__cap--R {
  left: unset;
  right: 5px;
}
.c-imgBox__cap--btm-spc {
  right: unset;
  bottom: 2.5em;
  left: 5px;
}
.c-imgBox__cap__Lbk {
  right: unset;
  left: 5px;
  color: #000;
  text-shadow: 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 10px #fff;
}
.c-imgBox__cap__Rbk {
  left: unset;
  right: 5px;
  color: #000;
  text-shadow: 0px 0px 3px #fff, 0px 0px 3px #fff, 0px 0px 10px #fff;
}
.c-imgBox__cap--lg {
  font-size: 1.6rem;
}

/* ------------------------------------------------------------
    btn
------------------------------------------------------------ */
.c-link_tel {
  cursor: default;
  pointer-events: none;
}
@media only screen and (max-width: 768px) {
  .c-link_tel {
    pointer-events: initial;
    cursor: pointer;
  }
}

.c-menu_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  line-height: 1;
  max-width: 416px;
  height: 60px;
  background: #2a3c4e;
  color: #fff;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 768px) {
  .c-menu_btn {
    font-size: 1.4rem;
    height: 44px;
  }
}

.u-spCta_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  width: 100%;
  height: 54px;
  background: #b59a5b;
  color: #fff;
  font-size: 1.5rem;
}

.c-pageMenu_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  background: #2A3C4E;
  flex-basis: 50%;
  padding: 14px 0;
  font-size: 1.3rem;
}
.c-pageMenu_btn.-btnColor {
  background: none;
  color: #333;
  border: solid 1px #aaa;
}
.c-pageMenu_btn.full {
  flex-basis: 100%;
}

.c-btn {
  display: block;
  background-color: #212023;
  border: 1px solid rgba(33, 32, 35, 0.4);
  color: #fff;
  padding: 1.5rem;
  line-height: 1;
  font-size: 0.9em;
  transition: 0.3s background-color;
}
@media (hover: hover) and (pointer: fine) {
  .c-btn:hover {
    background-color: #fafafa;
    color: #242424;
  }
}

/* ------------------------------------------------------------
	icon
------------------------------------------------------------ */
.c-icon {
  position: relative;
}
.c-icon__in {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none;
}
@media only screen and (max-width: 768px) {
  .c-icon__in {
    display: block;
  }
}

/* ------------------------------------------------------------
    new
------------------------------------------------------------ */
.c-new::after {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: 0;
  background-color: #C44E73;
}

.c-conv {
  background: #242424;
  padding: 5rem 0;
  color: #fff;
}
.c-conv .u-line {
  margin-top: 6rem;
  width: 90% !important;
  max-width: 1366px;
  background: #b2b2b2;
}
.c-conv__wrap__txt {
  font-size: clamp(1.8rem, 15.7391304348px + 0.5797101449vw, 2.2rem);
  text-align: center;
}
.c-conv__wrap__txt span {
  font-size: 0.7em;
  display: block;
  margin: 2rem auto;
}
@media only screen and (max-width: 768px) {
  .c-conv__wrap__txt span {
    font-size: 0.8em;
  }
}
.c-conv__wrap__txt em {
  font-size: 1.3em;
}
.c-conv__wrap__btns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  max-width: 90rem;
  margin: 2rem auto;
}
@media only screen and (max-width: 768px) {
  .c-conv__wrap__btns {
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem;
  }
}
.c-conv__wrap__btns--1 {
  grid-template-columns: repeat(1, 1fr);
}
.c-conv__wrap__btns__btn {
  margin: 0 2rem;
}
@media only screen and (max-width: 768px) {
  .c-conv__wrap__btns__btn {
    margin: 0;
  }
}
.c-conv__wrap__btns__btn a {
  width: 100%;
  display: block;
  background: #b59a5b;
  border-radius: 5rem;
  font-size: clamp(1rem, 6.6086956522px + 0.8695652174vw, 1.6rem);
  text-align: center;
  padding: 1em 0;
  position: relative;
  margin: 0 auto;
  transition: 0.3s;
}
@media only screen and (max-width: 768px) {
  .c-conv__wrap__btns__btn a {
    font-size: 1.6rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-conv__wrap__btns__btn a:hover {
    color: #fff;
    background-color: #b7b7b7;
    box-shadow: rgb(255, 255, 255) 0px 1px 0px;
  }
}

/* ==========================================================
    ローディングアニメーション
========================================================== */
.c-loader {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: #242424;
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-loader__anime {
  font-size: 10px;
  margin: 50px auto;
  text-indent: -9999em;
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  background: #ffffff;
  background: linear-gradient(to right, #ffffff 10%, #242424 42%);
  position: relative;
  animation: load 1.4s infinite linear;
  transform: translateZ(0);
}
.c-loader__anime:before {
  width: 50%;
  height: 50%;
  background: #ffffff;
  border-radius: 100% 0 0 0;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
}
.c-loader__anime:after {
  background-color: #242424;
  width: 85%;
  height: 85%;
  border-radius: 50%;
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

@keyframes load {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.c-mv {
  overflow: hidden;
}
.c-mv img {
  transform: scale(1.2);
  transition: 3s cubic-bezier(0.49, 0, 0.16, 0.99);
}
.loaded .c-mv img {
  transform: scale(1);
}

.c-imgArea {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
}
.c-imgArea::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid #b2b2b2;
}
.c-imgArea:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 140%;
  height: 1px;
  background: #b2b2b2;
  transform-origin: top right;
  transform: rotate(-45deg);
}
.c-imgArea[data-ratio-pc="6/4"]:after {
  transform: rotate(-33.5deg);
}
.c-imgArea[data-ratio-pc="7/4"]:after {
  transform: rotate(-29.7deg);
}
@media only screen and (max-width: 768px) {
  .c-imgArea[data-ratio-sp="1/1"]:after {
    transform: rotate(-45deg);
  }
}
.c-imgArea > * {
  position: relative;
  z-index: 1;
}

.c-imgParx {
  --ratio-pc: 6 / 4;
  --ratio-sp: 6 / 5;
  position: relative;
  width: 100%;
  aspect-ratio: var(--ratio-pc);
  overflow: hidden;
}
@media only screen and (max-width: 768px) {
  .c-imgParx {
    aspect-ratio: var(--ratio-sp);
  }
}
.c-imgParx__img {
  position: absolute;
  inset: 0;
}
.c-imgParx__img img {
  position: absolute;
  width: 100%;
  height: auto;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  will-change: transform;
}

.c-intro__heading {
  position: relative;
  font-family: "Manrope", serif;
  letter-spacing: -0.03em;
  line-height: 1;
  font-size: clamp(4rem, 28.6956521739px + 2.8985507246vw, 6rem);
  font-weight: 500;
  border-bottom: 1px solid #929292;
  padding-bottom: 1rem;
}
.c-intro__heading span {
  display: inline-block;
}
.c-intro__heading img {
  height: 7rem;
  width: auto;
  max-width: unset;
}
@media only screen and (max-width: 768px) {
  .c-intro__heading img {
    height: 4.5rem;
  }
}
.c-intro__catch {
  position: relative;
  font-size: min(3vw, 3.2rem);
  line-height: 1.6;
}
.c-intro__catch span {
  display: inline-block;
}
@media only screen and (max-width: 768px) {
  .c-intro__catch {
    font-size: 2.4rem;
  }
}
.c-intro__lead, .c-intro--sub__lead--letr0, .c-intro__lead--letr0 {
  font-size: 1.5rem;
  line-height: 2;
}
.c-intro__lead--letr0 {
  letter-spacing: 0;
}
@media only screen and (max-width: 768px) {
  .c-intro__lead, .c-intro--sub__lead--letr0, .c-intro__lead--letr0 {
    font-size: 1.4rem;
  }
}
.c-intro--sub__heading {
  border-top: 1px solid #929292;
  font-size: 2rem;
  line-height: 1;
  font-family: "Cormorant Infant", serif;
  padding-top: 1.5rem;
}
.c-intro--sub__catch {
  font-size: min(2.4vw, 2.4rem);
  letter-spacing: 0.01em;
}
.c-intro--sub__catch span {
  display: inline-block;
}
@media only screen and (max-width: 768px) {
  .c-intro--sub__catch {
    font-size: 2rem;
  }
}
.c-intro--sub__lead {
  font-size: 1.5rem;
}
.c-intro--sub__lead--letr0 {
  letter-spacing: 0;
}
@media only screen and (max-width: 768px) {
  .c-intro--sub__lead {
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 768px) {
  .c-spSlider, .c-spSlider--w90, .c-spSlider--w85, .c-spSlider--w80 {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    gap: 1.5rem;
    padding-bottom: 1rem;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .c-spSlider::-webkit-scrollbar, .c-spSlider--w90::-webkit-scrollbar, .c-spSlider--w85::-webkit-scrollbar, .c-spSlider--w80::-webkit-scrollbar {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  .c-spSlider__item {
    flex: 0 0 auto;
    width: 75%;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
}
.c-spSlider__dots, .c-spSlider__dots--dark {
  display: none;
}
@media only screen and (max-width: 768px) {
  .c-spSlider__dots, .c-spSlider__dots--dark {
    display: flex;
    justify-content: center;
    gap: 0.8rem;
    margin-top: 1.5rem;
  }
}
.c-spSlider__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: rgba(36, 36, 36, 0.3);
  border: none;
  padding: 0;
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.3s ease;
}
.c-spSlider__dot:hover {
  background-color: rgba(36, 36, 36, 0.5);
}
.c-spSlider__dot.is-active {
  background-color: #242424;
  transform: scale(1.2);
}
@media only screen and (max-width: 768px) {
  .c-spSlider--w80 .c-spSlider__item {
    width: 80%;
  }
}
@media only screen and (max-width: 768px) {
  .c-spSlider--w85 .c-spSlider__item {
    width: 85%;
  }
}
@media only screen and (max-width: 768px) {
  .c-spSlider--w90 .c-spSlider__item {
    width: 90%;
  }
}
.c-spSlider__dots--dark .c-spSlider__dot {
  background-color: rgba(36, 36, 36, 0.4);
}
.c-spSlider__dots--dark .c-spSlider__dot:hover {
  background-color: rgba(36, 36, 36, 0.6);
}
.c-spSlider__dots--dark .c-spSlider__dot.is-active {
  background-color: #242424;
}

/* ==========================================================
 swipe icon
========================================================== */
.u-swipeIcon {
  display: none;
}
@media only screen and (max-width: 768px) {
  .u-swipeIcon {
    display: block;
    position: absolute;
    top: calc(50% - 5rem);
    left: calc(50% - 5rem);
    animation: floating-X 1.2s ease-in-out infinite alternate-reverse;
    width: 10rem;
    height: 10rem;
    background-size: cover;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22160%22%20height%3D%22100%22%20viewBox%3D%220%200%20160%20100%22%3E%0A%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_11%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2011%22%20transform%3D%22translate(-563%20-975)%22%3E%0A%20%20%20%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_2%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%202%22%20width%3D%22160%22%20height%3D%22100%22%20rx%3D%2210%22%20transform%3D%22translate(563%20975)%22%20opacity%3D%220.7%22%2F%3E%0A%20%20%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_8%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%208%22%3E%0A%20%20%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_18%22%20data-name%3D%22%E3%83%91%E3%82%B9%2018%22%20d%3D%22M607.843%2C1055.268c.17.24.361.6.69.6a23.313%2C23.313%2C0%2C0%2C0%2C3.068-.489c.21-.06.33-.25.47-.25.3%2C0%2C.95.52.95.739%2C0%2C.2-.3.28-.43.481a16.733%2C16.733%2C0%2C0%2C1-1.659%2C2.268c1.609.73%2C3.248%2C1.839%2C3.248%2C2.669a.333.333%2C0%2C0%2C1-.34.369c-.269%2C0-.41-.319-.939-.92a8.912%2C8.912%2C0%2C0%2C0-2.209-1.868%2C12.155%2C12.155%2C0%2C0%2C1-4.237%2C2.948l-.151-.25a13.546%2C13.546%2C0%2C0%2C0%2C5.637-5.617c.051-.129-.01-.149-.119-.139-.71.11-2.1.45-2.65.589-.309.081-.349.26-.589.26-.29%2C0-.69-.429-.809-.689a1.7%2C1.7%2C0%2C0%2C1-.141-.611Z%22%20fill%3D%22%23fff%22%2F%3E%0A%20%20%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_19%22%20data-name%3D%22%E3%83%91%E3%82%B9%2019%22%20d%3D%22M616.424%2C1054.908a3.026%2C3.026%2C0%2C0%2C1%2C1.129.68.339.339%2C0%2C0%2C1%2C.08.13c.93-.04%2C3.309-.239%2C4.268-.35.19-.02.39-.21.55-.21a1.39%2C1.39%2C0%2C0%2C1%2C.9.78c0%2C.179-.37.33-.42.519a9.283%2C9.283%2C0%2C0%2C1-5.127%2C5.817l-.15-.229a9.442%2C9.442%2C0%2C0%2C0%2C4.6-6.088c.011-.079-.009-.119-.109-.119-.41%2C0-1.689.109-2.438.189s-1.34.221-1.579.221a.959.959%2C0%2C0%2C1-.451-.15c.05.559.19%2C2.008.21%2C2.459.02.289-.009.529-.29.529-.319%2C0-.449-.56-.449-.8%2C0-.261.039-.461.02-.8a8.342%2C8.342%2C0%2C0%2C0-.19-1.428%2C2.058%2C2.058%2C0%2C0%2C0-.69-.99Z%22%20fill%3D%22%23fff%22%2F%3E%0A%20%20%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_20%22%20data-name%3D%22%E3%83%91%E3%82%B9%2020%22%20d%3D%22M629.461%2C1054.338a1.779%2C1.779%2C0%2C0%2C1%2C.65.111c.389.129.83.569.83.828%2C0%2C.191-.181.17-.45.471-.37.41-.86.949-1.52%2C1.579.28.18.51.35.51.489a4.45%2C4.45%2C0%2C0%2C0-.09.52c-.069%2C1.449-.019%2C2.978-.019%2C3.578%2C0%2C.37-.09.49-.3.49-.33%2C0-.5-.48-.5-.809%2C0-.181.08-.38.12-.71a25.414%2C25.414%2C0%2C0%2C0%2C.09-2.8.692.692%2C0%2C0%2C0-.15-.44%2C14.071%2C14.071%2C0%2C0%2C1-3.748%2C2.37l-.13-.241a15.89%2C15.89%2C0%2C0%2C0%2C4.957-4.227%2C1.207%2C1.207%2C0%2C0%2C0%2C.27-.51c0-.159-.17-.3-.59-.51Z%22%20fill%3D%22%23fff%22%2F%3E%0A%20%20%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_21%22%20data-name%3D%22%E3%83%91%E3%82%B9%2021%22%20d%3D%22M634.273%2C1056.078c.56%2C0%2C3.738-.34%2C4.218-.44.259-.05.32-.2.49-.2.3%2C0%2C1.029.57%2C1.029.849%2C0%2C.221-.29.32-.429.651a9.607%2C9.607%2C0%2C0%2C1-5.788%2C5.486l-.15-.22a9.641%2C9.641%2C0%2C0%2C0%2C5.317-5.917c.04-.149-.019-.17-.12-.17-.439%2C0-3.278.41-3.847.53-.27.06-.48.24-.68.24-.3%2C0-.77-.469-.869-.719a2.152%2C2.152%2C0%2C0%2C1-.1-.57l.191-.08C633.7%2C1055.768%2C633.914%2C1056.078%2C634.273%2C1056.078Zm5.317-1.3a1.054%2C1.054%2C0%2C0%2C1%2C2.109%2C0%2C1.054%2C1.054%2C0%2C1%2C1-2.109%2C0Zm.34%2C0a.72.72%2C0%2C1%2C0%2C.72-.71A.719.719%2C0%2C0%2C0%2C639.93%2C1054.778Z%22%20fill%3D%22%23fff%22%2F%3E%0A%20%20%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_22%22%20data-name%3D%22%E3%83%91%E3%82%B9%2022%22%20d%3D%22M642.945%2C1055.787a.886.886%2C0%2C0%2C0%2C.629.5c.52%2C0%2C2.449-.579%2C4.1-.959a13.6%2C13.6%2C0%2C0%2C1%2C2.27-.41%2C2.027%2C2.027%2C0%2C0%2C1%2C.709.11c.22.1.3.21.3.35s-.119.26-.34.26c-.19%2C0-.489-.031-.86-.031a3.352%2C3.352%2C0%2C0%2C0-1.678.371%2C3.585%2C3.585%2C0%2C0%2C0-1.449%2C3.2%2C1.87%2C1.87%2C0%2C0%2C0%2C.849%2C1.789%2C3.773%2C3.773%2C0%2C0%2C0%2C1.939.33c.24%2C0%2C.57.17.57.42s-.271.33-.72.33a3.8%2C3.8%2C0%2C0%2C1-2.249-.561%2C2.382%2C2.382%2C0%2C0%2C1-.96-2.188%2C4.187%2C4.187%2C0%2C0%2C1%2C1.5-3.388c.07-.06.06-.121-.051-.09a20.951%2C20.951%2C0%2C0%2C0-3.137%2C1.02%2C1.684%2C1.684%2C0%2C0%2C1-.61.249%2C1.241%2C1.241%2C0%2C0%2C1-.96-.779%2C2.457%2C2.457%2C0%2C0%2C1-.04-.46Zm6.136%2C1.21a3.816%2C3.816%2C0%2C0%2C1%2C1.139.67.832.832%2C0%2C0%2C1%2C.34.6.231.231%2C0%2C0%2C1-.239.259c-.151%2C0-.261-.229-.46-.489a5.663%2C5.663%2C0%2C0%2C0-.92-.87Zm.879-.669a4.018%2C4.018%2C0%2C0%2C1%2C1.13.579.79.79%2C0%2C0%2C1%2C.369.62c0%2C.17-.08.26-.229.26s-.26-.23-.47-.48a5.006%2C5.006%2C0%2C0%2C0-.929-.8Z%22%20fill%3D%22%23fff%22%2F%3E%0A%20%20%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_23%22%20data-name%3D%22%E3%83%91%E3%82%B9%2023%22%20d%3D%22M655.353%2C1054.338a1.522%2C1.522%2C0%2C0%2C1%2C.819-.26c.361%2C0%2C.741.08.79.36.06.32.121.72.22%2C1.11%2C1.039-.31%2C1.43-.64%2C1.589-.64.23%2C0%2C.49.05.5.24%2C0%2C.1-.07.19-.22.29a8.958%2C8.958%2C0%2C0%2C1-1.709.64%2C9.417%2C9.417%2C0%2C0%2C0%2C.539%2C1.289%2C9.362%2C9.362%2C0%2C0%2C0%2C.88-.32c.64-.26.75-.4.909-.4.25-.02.47.05.47.249%2C0%2C.1-.04.211-.229.311a7.356%2C7.356%2C0%2C0%2C1-1.73.689c.78%2C1.29%2C1.36%2C1.57%2C1.36%2C1.83%2C0%2C.309-.17.739-.41.739s-.4-.18-.8-.379a4.924%2C4.924%2C0%2C0%2C0-1.979-.45c-1.069%2C0-1.869.45-1.869%2C1.109%2C0%2C.929%2C1.269%2C1.05%2C2.219%2C1.05.749%2C0%2C.989-.11%2C1.379-.11.3%2C0%2C.509.129.509.319%2C0%2C.3-.619.46-1.909.46-1.249%2C0-2.688-.419-2.688-1.589%2C0-.8.819-1.59%2C2.508-1.59a8.669%2C8.669%2C0%2C0%2C1%2C2.1.291c.13.039.141.01.07-.09a12.917%2C12.917%2C0%2C0%2C1-.96-1.469%2C10.492%2C10.492%2C0%2C0%2C1-2.418.28c-1.4%2C0-1.8-.87-.71-1.629l.17.149c-.619.55-.489.95.621.95a8.142%2C8.142%2C0%2C0%2C0%2C2.068-.281c-.19-.388-.38-.829-.569-1.3a6.673%2C6.673%2C0%2C0%2C1-1.55.209%2C1.719%2C1.719%2C0%2C0%2C1-1.759-.95l.14-.109a2.161%2C2.161%2C0%2C0%2C0%2C1.58.56%2C6.779%2C6.779%2C0%2C0%2C0%2C1.4-.21c-.109-.27-.2-.54-.3-.809a.447.447%2C0%2C0%2C0-.479-.36%2C4.363%2C4.363%2C0%2C0%2C0-.51.009Z%22%20fill%3D%22%23fff%22%2F%3E%0A%20%20%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_24%22%20data-name%3D%22%E3%83%91%E3%82%B9%2024%22%20d%3D%22M666.532%2C1057.916a8.169%2C8.169%2C0%2C0%2C0%2C1.439-.309%2C3.99%2C3.99%2C0%2C0%2C1%2C.63-.22c.21%2C0%2C.47.1.47.31%2C0%2C.15-.111.25-.29.32a11.565%2C11.565%2C0%2C0%2C1-2.229.44c.031.648.09%2C1.209.14%2C1.678a5.346%2C5.346%2C0%2C0%2C1%2C2.379%2C1.06.751.751%2C0%2C0%2C1%2C.34.549.258.258%2C0%2C0%2C1-.27.29c-.181%2C0-.29-.1-.47-.269a5%2C5%2C0%2C0%2C0-1.939-1.089c.01.138.02.269.02.4%2C0%2C.85-.7%2C1.34-1.809%2C1.34-.98%2C0-1.7-.449-1.7-1.159%2C0-.79%2C1.029-1.23%2C2.279-1.23a6.008%2C6.008%2C0%2C0%2C1%2C.629.031c-.02-.4-.05-.941-.069-1.55-.411.041-.82.06-1.22.06-1.4%2C0-2.089-.65-1.02-1.709l.21.12c-.639.83-.22%2C1.07.78%2C1.07a10.454%2C10.454%2C0%2C0%2C0%2C1.229-.07v-.4c0-.329%2C0-.68.011-1.019-.5.05-1.02.09-1.5.09a2.088%2C2.088%2C0%2C0%2C1-2.029-1.04l.17-.139a2.268%2C2.268%2C0%2C0%2C0%2C1.769.649%2C12.775%2C12.775%2C0%2C0%2C0%2C1.6-.119c.019-.51.03-.9.03-.99%2C0-.2-.04-.25-.2-.31a4.1%2C4.1%2C0%2C0%2C0-.73-.11l-.03-.209a1.636%2C1.636%2C0%2C0%2C1%2C.7-.16c.431%2C0%2C1.05.279%2C1.05.539%2C0%2C.211-.13.291-.18.551-.03.17-.06.369-.09.609a11.866%2C11.866%2C0%2C0%2C0%2C1.519-.35%2C2.909%2C2.909%2C0%2C0%2C1%2C.58-.2c.24%2C0%2C.519.1.519.31%2C0%2C.17-.139.25-.33.32a14.666%2C14.666%2C0%2C0%2C1-2.348.5c-.02.329-.04.729-.04%2C1.2Zm-.369%2C2.619a5.4%2C5.4%2C0%2C0%2C0-.911-.08c-.979%2C0-1.608.359-1.608.77%2C0%2C.349.359.639%2C1.029.639C665.882%2C1061.864%2C666.152%2C1061.484%2C666.163%2C1060.535Z%22%20fill%3D%22%23fff%22%2F%3E%0A%20%20%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_25%22%20data-name%3D%22%E3%83%91%E3%82%B9%2025%22%20d%3D%22M675%2C1054.418a1.557%2C1.557%2C0%2C0%2C1%2C.68-.209c.41%2C0%2C1.029.22%2C1.029.469%2C0%2C.23-.149.39-.169.64-.01.129-.01.33-.02.57%2C1.648-.18%2C2.288-.271%2C2.5-.271.35%2C0%2C.87.191.87.51%2C0%2C.181-.091.261-.28.261a12.734%2C12.734%2C0%2C0%2C0-3.088-.071c0%2C.48.01%2C1.04.01%2C1.539a1.9%2C1.9%2C0%2C0%2C1%2C.42%2C1.35c0%2C1.829-1.38%2C2.948-3.309%2C3.428l-.13-.249a4.072%2C4.072%2C0%2C0%2C0%2C2.579-2.14c-.979.45-1.779-.319-1.779-1.339a1.329%2C1.329%2C0%2C0%2C1%2C1.31-1.409%2C1.767%2C1.767%2C0%2C0%2C1%2C.409.05c-.01-.3-.031-.73-.05-1.18a22.7%2C22.7%2C0%2C0%2C0-2.649.49%2C5.68%2C5.68%2C0%2C0%2C1-.909.27%2C1.34%2C1.34%2C0%2C0%2C1-.91-.73%2C1.924%2C1.924%2C0%2C0%2C1-.1-.6l.189-.069c.22.329.41.648.75.648.37.011%2C2.429-.3%2C3.607-.43-.009-.359-.029-.7-.049-.949-.02-.2-.07-.26-.23-.31a4.015%2C4.015%2C0%2C0%2C0-.66-.069Zm1.29%2C4.469c0-.651-.32-.981-.75-.981a.966.966%2C0%2C0%2C0-.01%2C1.909C676.032%2C1059.815%2C676.292%2C1059.576%2C676.292%2C1058.887Z%22%20fill%3D%22%23fff%22%2F%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_10%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2010%22%3E%0A%20%20%20%20%20%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_9%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%209%22%3E%0A%20%20%20%20%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_26%22%20data-name%3D%22%E3%83%91%E3%82%B9%2026%22%20d%3D%22M671.231%2C997.226v8.382l8.634-4.191Z%22%20fill%3D%22%23c54e93%22%2F%3E%0A%20%20%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%20%20%3Cline%20id%3D%22%E7%B7%9A_3%22%20data-name%3D%22%E7%B7%9A%203%22%20x1%3D%2225.096%22%20transform%3D%22translate(648.135%201001.392)%22%20fill%3D%22none%22%20stroke%3D%22%23c54e93%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221.6%22%2F%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3Cg%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_2%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%202%22%20transform%3D%22translate(637%20995.417)%22%20fill%3D%22none%22%20stroke%3D%22%23c54e93%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221.6%22%3E%0A%20%20%20%20%20%20%3Ccircle%20cx%3D%226%22%20cy%3D%226%22%20r%3D%226%22%20stroke%3D%22none%22%2F%3E%0A%20%20%20%20%20%20%3Ccircle%20cx%3D%226%22%20cy%3D%226%22%20r%3D%225.2%22%20fill%3D%22none%22%2F%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_27%22%20data-name%3D%22%E3%83%91%E3%82%B9%2027%22%20d%3D%22M632.664%2C1016.974a1.633%2C1.633%2C0%2C0%2C0-1.064.433%2C1.7%2C1.7%2C0%2C0%2C0-.355%2C2.676l5.328%2C6.25a.6.6%2C0%2C0%2C1%2C.055.077%2C16.04%2C16.04%2C0%2C0%2C1%2C1.287%2C3.479%2C15.121%2C15.121%2C0%2C0%2C0%2C1.643%2C4.177%2C9.368%2C9.368%2C0%2C0%2C1%2C2.057%2C3.888c.066.238.142.507.238.827a10.485%2C10.485%2C0%2C0%2C1%2C.374%2C2.385c0%2C.016%2C0%2C.031%2C0%2C.047a1.38%2C1.38%2C0%2C0%2C0%2C.622%2C1.127c.862.617%2C2.894%2C1.648%2C6.847%2C1.648a14.337%2C14.337%2C0%2C0%2C0%2C6.962-1.422%2C1.375%2C1.375%2C0%2C0%2C0%2C.767-1.354%2C17.006%2C17.006%2C0%2C0%2C1-.1-2.787%2C29.073%2C29.073%2C0%2C0%2C1%2C1.252-6.962%2C11.5%2C11.5%2C0%2C0%2C0%2C.437-3.068v-13.114a1.692%2C1.692%2C0%2C0%2C0-1.831-1.78%2C1.59%2C1.59%2C0%2C0%2C0-1.257.489%2C1.918%2C1.918%2C0%2C0%2C0-.417%2C1.291v2.819a.592.592%2C0%2C0%2C1-1.185%2C0v-4.438a1.8%2C1.8%2C0%2C0%2C0-3.592%2C0v4.438a.592.592%2C0%2C0%2C1-.592.592h0a.592.592%2C0%2C0%2C1-.592-.592l0-5.927a1.8%2C1.8%2C0%2C1%2C0-3.592%2C0l0%2C5.927a.594.594%2C0%2C0%2C1-1.188%2C0v-14.378a1.795%2C1.795%2C0%2C0%2C0-3.588.083v19.166a.592.592%2C0%2C0%2C1-1%2C.428l-6.056-5.783A2.293%2C2.293%2C0%2C0%2C0%2C632.664%2C1016.974Z%22%20fill%3D%22%23fff%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E");
    z-index: 1;
  }
}

@keyframes floating-X {
  0% {
    transform: translateX(-10%);
  }
  100% {
    transform: translateX(10%);
  }
}
.u-pinchIcon {
  display: none;
}
@media only screen and (max-width: 768px) {
  .u-pinchIcon {
    display: block;
    position: absolute;
    top: calc(50% - 3.5rem);
    left: calc(50% - 5rem);
    width: 10rem;
    height: 7.16rem;
    animation: zoom 1.2s ease-in-out infinite alternate-reverse;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22120%22%20height%3D%2286%22%20viewBox%3D%220%200%20120%2086%22%3E%3Cg%20transform%3D%22translate(-371%20-1343)%22%3E%3Crect%20width%3D%22120%22%20height%3D%2286%22%20rx%3D%2210%22%20transform%3D%22translate(371%201343)%22%20opacity%3D%220.7%22%2F%3E%3Cpath%20d%3D%22M464.826%2C1354.253l3.994%2C7.371%2C5.594-7.8Z%22%20fill%3D%22%23c54e93%22%2F%3E%3Cline%20x1%3D%2222.065%22%20y2%3D%2211.956%22%20transform%3D%22translate(446.504%201356.964)%22%20fill%3D%22none%22%20stroke%3D%22%23c54e93%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221.6%22%2F%3E%3Cg%20transform%3D%22translate(436.001%201365.388)%22%20fill%3D%22none%22%20stroke%3D%22%23c54e93%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221.6%22%3E%3Ccircle%20cx%3D%226%22%20cy%3D%226%22%20r%3D%226%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%226%22%20cy%3D%226%22%20r%3D%225.2%22%20fill%3D%22none%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M387.586%2C1399.952l9.588-.429-3.994-7.37Z%22%20fill%3D%22%23c54e93%22%2F%3E%3Cline%20y1%3D%2211.956%22%20x2%3D%2222.065%22%20transform%3D%22translate(393.407%201384.813)%22%20fill%3D%22none%22%20stroke%3D%22%23c54e93%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221.6%22%2F%3E%3Cg%20transform%3D%22translate(413.998%201376.389)%22%20fill%3D%22none%22%20stroke%3D%22%23c54e93%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221.6%22%3E%3Ccircle%20cx%3D%226%22%20cy%3D%226%22%20r%3D%226%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%226%22%20cy%3D%226%22%20r%3D%225.2%22%20fill%3D%22none%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M419.441%2C1381.127a1.639%2C1.639%2C0%2C0%2C0-.959.346%2C1.8%2C1.8%2C0%2C0%2C0-.6%2C2.733l4.725%2C6.868a.647.647%2C0%2C0%2C1%2C.047.081%2C16.759%2C16.759%2C0%2C0%2C1%2C.952%2C3.7%2C15.8%2C15.8%2C0%2C0%2C0%2C1.24%2C4.455.552.552%2C0%2C0%2C1%2C.054.122c.918%2C2.964-.085%2C5.68-.684%2C7.3-.06.163-.115.313-.163.45-.009.023-.019.046-.029.068a1.445%2C1.445%2C0%2C0%2C0%2C.034%2C1.33c.487.952%2C1.827%2C2.807%2C5.357%2C4.578a14.031%2C14.031%2C0%2C0%2C0%2C6.872%2C1.817%2C1.434%2C1.434%2C0%2C0%2C0%2C1.322-.912%2C17.7%2C17.7%2C0%2C0%2C1%2C1.189-2.6%2C30.477%2C30.477%2C0%2C0%2C1%2C4.318-5.816%2C12.1%2C12.1%2C0%2C0%2C0%2C1.806-2.624l6.033-12.023a1.721%2C1.721%2C0%2C0%2C0-.812-2.467%2C1.564%2C1.564%2C0%2C0%2C0-1.343-.113%2C2.143%2C2.143%2C0%2C0%2C0-.989%2C1.03l-1.286%2C2.563a.593.593%2C0%2C0%2C1-1.059-.532l1.278-2.547.009-.017.755-1.5a1.893%2C1.893%2C0%2C0%2C0%2C.117-1.42%2C1.769%2C1.769%2C0%2C0%2C0-.89-1.045%2C1.828%2C1.828%2C0%2C0%2C0-2.438.854l-2.041%2C4.068a.592.592%2C0%2C0%2C1-1.059-.53l2.724-5.437a1.8%2C1.8%2C0%2C1%2C0-3.168-1.693l-2.767%2C5.518a.592.592%2C0%2C1%2C1-1.058-.53l2.723-5.437c.018-.036.037-.072.056-.107l3.831-7.64a1.812%2C1.812%2C0%2C0%2C0-.807-2.388%2C1.767%2C1.767%2C0%2C0%2C0-1.375-.086%2C1.887%2C1.887%2C0%2C0%2C0-1.063.941l-10.137%2C19.922a.594.594%2C0%2C0%2C1-.473.321.585.585%2C0%2C0%2C1-.524-.227l-8.187-10.585A2.173%2C2.173%2C0%2C0%2C0%2C419.441%2C1381.127Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    background-size: cover;
    z-index: 1;
  }
}
@keyframes zoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}

.u-arw--r {
  display: inline-block;
  vertical-align: middle;
  color: currentColor;
  line-height: 1;
  position: relative;
  width: 1.4em;
  height: 0.1em;
  background: currentColor;
}
.u-arw--r::before {
  content: "";
  width: 0.65em;
  height: 0.65em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  border-right: 0;
  transform: rotate(45deg);
  transform-origin: top right;
  position: absolute;
  top: 50%;
  right: -0.05em;
  box-sizing: border-box;
}
.u-arw--ku {
  display: inline-block;
  vertical-align: middle;
  color: currentColor;
  line-height: 1;
  position: relative;
  width: 1em;
  height: 1em;
  transform: translateX(-25%) rotate(45deg);
}
.u-arw--ku::before, .u-arw--ku::after {
  content: "";
  position: absolute;
  background: currentColor;
  border-radius: 0.1em;
}
.u-arw--ku::before {
  top: 0;
  left: 0;
  right: 0;
  height: 0.1em;
}
.u-arw--ku::after {
  top: 0;
  right: 0;
  bottom: 0;
  width: 0.1em;
}

/* ------------------------------------------------------------
    display
------------------------------------------------------------ */
.u-pc {
  display: block;
}
@media only screen and (max-width: 768px) {
  .u-pc {
    display: none;
  }
}

.u-sp {
  display: none;
}
@media only screen and (max-width: 768px) {
  .u-sp {
    display: block;
  }
}

.u-pci {
  display: inline-block;
}
@media only screen and (max-width: 768px) {
  .u-pci {
    display: none;
  }
}

.u-spi {
  display: none;
}
@media only screen and (max-width: 768px) {
  .u-spi {
    display: inline-block;
  }
}

.u-pci--1270 {
  display: inline-block;
}

.u-spi--1270 {
  display: none;
}

/* ------------------------------------------------------------
    line
------------------------------------------------------------ */
.u-line {
  display: block;
  height: 1px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
}

/* ------------------------------------------------------------
    block
------------------------------------------------------------ */
.u-container {
  width: 90%;
  max-width: 1200px;
  margin-inline: auto;
}

.u-container_mx {
  width: 90%;
  max-width: 800px;
  margin-inline: auto;
}

.u-container_1 {
  width: 85%;
  max-width: 1200px;
  margin-inline: auto;
}

.u-wrap--r {
  margin-left: min(20%, 25rem);
}

/* ------------------------------------------------------------
    flex layout
------------------------------------------------------------ */
.u-flex {
  width: 100%;
  display: flex;
}
.u-flex.flex-btw {
  justify-content: space-between;
}
.u-flex.flex-btw-basis {
  justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  .u-flex.flex-btw-basis {
    flex-direction: column;
  }
}
.u-flex.flex-ard {
  justify-content: space-around;
}
.u-flex.flex-row {
  flex-direction: row;
}
.u-flex.flex-row-reverse {
  flex-direction: row-reverse;
}
.u-flex.flex-col {
  flex-direction: column;
}
.u-flex.flex-col-reverse {
  flex-direction: column-reverse;
}
.u-flex.flex-wrap {
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  .u-flex.sm_flex-row {
    flex-direction: row;
  }
  .u-flex.sm_flex-row-reverse {
    flex-direction: row-reverse;
  }
  .u-flex.sm_flex-col {
    flex-direction: column;
  }
  .u-flex.sm_flex-col-reverse {
    flex-direction: column-reverse;
  }
  .u-flex.sm_flex-wrap {
    flex-wrap: wrap;
  }
}

.u-img--wide {
  overflow: hidden;
}
@media only screen and (max-width: 768px) {
  .u-img--wide {
    overflow-x: scroll;
    position: relative;
  }
}
@media only screen and (max-width: 768px) {
  .u-img--wide img {
    width: 200%;
    max-width: 200%;
  }
}
@media only screen and (max-width: 768px) {
  .u-img--wider img {
    width: 300%;
    max-width: 300%;
  }
}
@media only screen and (max-width: 768px) {
  .u-img--zoom {
    position: relative;
  }
}

.u-pd--01 {
  padding: 0 1rem;
}

.u-pd--02 {
  padding: 0 2rem;
}

.u-pd--03 {
  padding: 0 3rem;
}

/* ------------------------------------------------------------
    margin top, margin bottom
------------------------------------------------------------ */
.u-mt-0 {
  margin-top: 0rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-0--sp {
    margin-top: 0rem !important;
  }
}

.u-mt-m0 {
  margin-top: -0rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m0--sp {
    margin-top: -0rem !important;
  }
}

.u-mb-0 {
  margin-bottom: 0rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-0--sp {
    margin-bottom: 0rem !important;
  }
}

.u-ml-0 {
  margin-left: 0rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-0--sp {
    margin-left: 0rem !important;
  }
}

.u-mr-0 {
  margin-right: 0rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-0--sp {
    margin-right: 0rem !important;
  }
}

.u-pt-0 {
  padding-top: 0rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-0--sp {
    padding-top: 0rem !important;
  }
}

.u-pb-0 {
  padding-bottom: 0rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-0--sp {
    padding-bottom: 0rem !important;
  }
}

.u-mt-5 {
  margin-top: 0.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-5--sp {
    margin-top: 0.5rem !important;
  }
}

.u-mt-m5 {
  margin-top: -0.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m5--sp {
    margin-top: -0.5rem !important;
  }
}

.u-mb-5 {
  margin-bottom: 0.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-5--sp {
    margin-bottom: 0.5rem !important;
  }
}

.u-ml-5 {
  margin-left: 0.5rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-5--sp {
    margin-left: 0.5rem !important;
  }
}

.u-mr-5 {
  margin-right: 0.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-5--sp {
    margin-right: 0.5rem !important;
  }
}

.u-pt-5 {
  padding-top: 0.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-5--sp {
    padding-top: 0.5rem !important;
  }
}

.u-pb-5 {
  padding-bottom: 0.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-5--sp {
    padding-bottom: 0.5rem !important;
  }
}

.u-mt-10 {
  margin-top: 1rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-10--sp {
    margin-top: 1rem !important;
  }
}

.u-mt-m10 {
  margin-top: -1rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m10--sp {
    margin-top: -1rem !important;
  }
}

.u-mb-10 {
  margin-bottom: 1rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-10--sp {
    margin-bottom: 1rem !important;
  }
}

.u-ml-10 {
  margin-left: 1rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-10--sp {
    margin-left: 1rem !important;
  }
}

.u-mr-10 {
  margin-right: 1rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-10--sp {
    margin-right: 1rem !important;
  }
}

.u-pt-10 {
  padding-top: 1rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-10--sp {
    padding-top: 1rem !important;
  }
}

.u-pb-10 {
  padding-bottom: 1rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-10--sp {
    padding-bottom: 1rem !important;
  }
}

.u-mt-15 {
  margin-top: 1.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-15--sp {
    margin-top: 1.5rem !important;
  }
}

.u-mt-m15 {
  margin-top: -1.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m15--sp {
    margin-top: -1.5rem !important;
  }
}

.u-mb-15 {
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-15--sp {
    margin-bottom: 1.5rem !important;
  }
}

.u-ml-15 {
  margin-left: 1.5rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-15--sp {
    margin-left: 1.5rem !important;
  }
}

.u-mr-15 {
  margin-right: 1.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-15--sp {
    margin-right: 1.5rem !important;
  }
}

.u-pt-15 {
  padding-top: 1.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-15--sp {
    padding-top: 1.5rem !important;
  }
}

.u-pb-15 {
  padding-bottom: 1.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-15--sp {
    padding-bottom: 1.5rem !important;
  }
}

.u-mt-20 {
  margin-top: 2rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-20--sp {
    margin-top: 2rem !important;
  }
}

.u-mt-m20 {
  margin-top: -2rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m20--sp {
    margin-top: -2rem !important;
  }
}

.u-mb-20 {
  margin-bottom: 2rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-20--sp {
    margin-bottom: 2rem !important;
  }
}

.u-ml-20 {
  margin-left: 2rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-20--sp {
    margin-left: 2rem !important;
  }
}

.u-mr-20 {
  margin-right: 2rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-20--sp {
    margin-right: 2rem !important;
  }
}

.u-pt-20 {
  padding-top: 2rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-20--sp {
    padding-top: 2rem !important;
  }
}

.u-pb-20 {
  padding-bottom: 2rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-20--sp {
    padding-bottom: 2rem !important;
  }
}

.u-mt-25 {
  margin-top: 2.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-25--sp {
    margin-top: 2.5rem !important;
  }
}

.u-mt-m25 {
  margin-top: -2.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m25--sp {
    margin-top: -2.5rem !important;
  }
}

.u-mb-25 {
  margin-bottom: 2.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-25--sp {
    margin-bottom: 2.5rem !important;
  }
}

.u-ml-25 {
  margin-left: 2.5rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-25--sp {
    margin-left: 2.5rem !important;
  }
}

.u-mr-25 {
  margin-right: 2.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-25--sp {
    margin-right: 2.5rem !important;
  }
}

.u-pt-25 {
  padding-top: 2.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-25--sp {
    padding-top: 2.5rem !important;
  }
}

.u-pb-25 {
  padding-bottom: 2.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-25--sp {
    padding-bottom: 2.5rem !important;
  }
}

.u-mt-30 {
  margin-top: 3rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-30--sp {
    margin-top: 3rem !important;
  }
}

.u-mt-m30 {
  margin-top: -3rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m30--sp {
    margin-top: -3rem !important;
  }
}

.u-mb-30 {
  margin-bottom: 3rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-30--sp {
    margin-bottom: 3rem !important;
  }
}

.u-ml-30 {
  margin-left: 3rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-30--sp {
    margin-left: 3rem !important;
  }
}

.u-mr-30 {
  margin-right: 3rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-30--sp {
    margin-right: 3rem !important;
  }
}

.u-pt-30 {
  padding-top: 3rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-30--sp {
    padding-top: 3rem !important;
  }
}

.u-pb-30 {
  padding-bottom: 3rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-30--sp {
    padding-bottom: 3rem !important;
  }
}

.u-mt-35 {
  margin-top: 3.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-35--sp {
    margin-top: 3.5rem !important;
  }
}

.u-mt-m35 {
  margin-top: -3.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m35--sp {
    margin-top: -3.5rem !important;
  }
}

.u-mb-35 {
  margin-bottom: 3.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-35--sp {
    margin-bottom: 3.5rem !important;
  }
}

.u-ml-35 {
  margin-left: 3.5rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-35--sp {
    margin-left: 3.5rem !important;
  }
}

.u-mr-35 {
  margin-right: 3.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-35--sp {
    margin-right: 3.5rem !important;
  }
}

.u-pt-35 {
  padding-top: 3.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-35--sp {
    padding-top: 3.5rem !important;
  }
}

.u-pb-35 {
  padding-bottom: 3.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-35--sp {
    padding-bottom: 3.5rem !important;
  }
}

.u-mt-40 {
  margin-top: 4rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-40--sp {
    margin-top: 4rem !important;
  }
}

.u-mt-m40 {
  margin-top: -4rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m40--sp {
    margin-top: -4rem !important;
  }
}

.u-mb-40 {
  margin-bottom: 4rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-40--sp {
    margin-bottom: 4rem !important;
  }
}

.u-ml-40 {
  margin-left: 4rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-40--sp {
    margin-left: 4rem !important;
  }
}

.u-mr-40 {
  margin-right: 4rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-40--sp {
    margin-right: 4rem !important;
  }
}

.u-pt-40 {
  padding-top: 4rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-40--sp {
    padding-top: 4rem !important;
  }
}

.u-pb-40 {
  padding-bottom: 4rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-40--sp {
    padding-bottom: 4rem !important;
  }
}

.u-mt-45 {
  margin-top: 4.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-45--sp {
    margin-top: 4.5rem !important;
  }
}

.u-mt-m45 {
  margin-top: -4.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m45--sp {
    margin-top: -4.5rem !important;
  }
}

.u-mb-45 {
  margin-bottom: 4.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-45--sp {
    margin-bottom: 4.5rem !important;
  }
}

.u-ml-45 {
  margin-left: 4.5rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-45--sp {
    margin-left: 4.5rem !important;
  }
}

.u-mr-45 {
  margin-right: 4.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-45--sp {
    margin-right: 4.5rem !important;
  }
}

.u-pt-45 {
  padding-top: 4.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-45--sp {
    padding-top: 4.5rem !important;
  }
}

.u-pb-45 {
  padding-bottom: 4.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-45--sp {
    padding-bottom: 4.5rem !important;
  }
}

.u-mt-50 {
  margin-top: 5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-50--sp {
    margin-top: 5rem !important;
  }
}

.u-mt-m50 {
  margin-top: -5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m50--sp {
    margin-top: -5rem !important;
  }
}

.u-mb-50 {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-50--sp {
    margin-bottom: 5rem !important;
  }
}

.u-ml-50 {
  margin-left: 5rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-50--sp {
    margin-left: 5rem !important;
  }
}

.u-mr-50 {
  margin-right: 5rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-50--sp {
    margin-right: 5rem !important;
  }
}

.u-pt-50 {
  padding-top: 5rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-50--sp {
    padding-top: 5rem !important;
  }
}

.u-pb-50 {
  padding-bottom: 5rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-50--sp {
    padding-bottom: 5rem !important;
  }
}

.u-mt-55 {
  margin-top: 5.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-55--sp {
    margin-top: 5.5rem !important;
  }
}

.u-mt-m55 {
  margin-top: -5.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m55--sp {
    margin-top: -5.5rem !important;
  }
}

.u-mb-55 {
  margin-bottom: 5.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-55--sp {
    margin-bottom: 5.5rem !important;
  }
}

.u-ml-55 {
  margin-left: 5.5rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-55--sp {
    margin-left: 5.5rem !important;
  }
}

.u-mr-55 {
  margin-right: 5.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-55--sp {
    margin-right: 5.5rem !important;
  }
}

.u-pt-55 {
  padding-top: 5.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-55--sp {
    padding-top: 5.5rem !important;
  }
}

.u-pb-55 {
  padding-bottom: 5.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-55--sp {
    padding-bottom: 5.5rem !important;
  }
}

.u-mt-60 {
  margin-top: 6rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-60--sp {
    margin-top: 6rem !important;
  }
}

.u-mt-m60 {
  margin-top: -6rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m60--sp {
    margin-top: -6rem !important;
  }
}

.u-mb-60 {
  margin-bottom: 6rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-60--sp {
    margin-bottom: 6rem !important;
  }
}

.u-ml-60 {
  margin-left: 6rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-60--sp {
    margin-left: 6rem !important;
  }
}

.u-mr-60 {
  margin-right: 6rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-60--sp {
    margin-right: 6rem !important;
  }
}

.u-pt-60 {
  padding-top: 6rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-60--sp {
    padding-top: 6rem !important;
  }
}

.u-pb-60 {
  padding-bottom: 6rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-60--sp {
    padding-bottom: 6rem !important;
  }
}

.u-mt-65 {
  margin-top: 6.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-65--sp {
    margin-top: 6.5rem !important;
  }
}

.u-mt-m65 {
  margin-top: -6.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m65--sp {
    margin-top: -6.5rem !important;
  }
}

.u-mb-65 {
  margin-bottom: 6.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-65--sp {
    margin-bottom: 6.5rem !important;
  }
}

.u-ml-65 {
  margin-left: 6.5rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-65--sp {
    margin-left: 6.5rem !important;
  }
}

.u-mr-65 {
  margin-right: 6.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-65--sp {
    margin-right: 6.5rem !important;
  }
}

.u-pt-65 {
  padding-top: 6.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-65--sp {
    padding-top: 6.5rem !important;
  }
}

.u-pb-65 {
  padding-bottom: 6.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-65--sp {
    padding-bottom: 6.5rem !important;
  }
}

.u-mt-70 {
  margin-top: 7rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-70--sp {
    margin-top: 7rem !important;
  }
}

.u-mt-m70 {
  margin-top: -7rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m70--sp {
    margin-top: -7rem !important;
  }
}

.u-mb-70 {
  margin-bottom: 7rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-70--sp {
    margin-bottom: 7rem !important;
  }
}

.u-ml-70 {
  margin-left: 7rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-70--sp {
    margin-left: 7rem !important;
  }
}

.u-mr-70 {
  margin-right: 7rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-70--sp {
    margin-right: 7rem !important;
  }
}

.u-pt-70 {
  padding-top: 7rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-70--sp {
    padding-top: 7rem !important;
  }
}

.u-pb-70 {
  padding-bottom: 7rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-70--sp {
    padding-bottom: 7rem !important;
  }
}

.u-mt-75 {
  margin-top: 7.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-75--sp {
    margin-top: 7.5rem !important;
  }
}

.u-mt-m75 {
  margin-top: -7.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m75--sp {
    margin-top: -7.5rem !important;
  }
}

.u-mb-75 {
  margin-bottom: 7.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-75--sp {
    margin-bottom: 7.5rem !important;
  }
}

.u-ml-75 {
  margin-left: 7.5rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-75--sp {
    margin-left: 7.5rem !important;
  }
}

.u-mr-75 {
  margin-right: 7.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-75--sp {
    margin-right: 7.5rem !important;
  }
}

.u-pt-75 {
  padding-top: 7.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-75--sp {
    padding-top: 7.5rem !important;
  }
}

.u-pb-75 {
  padding-bottom: 7.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-75--sp {
    padding-bottom: 7.5rem !important;
  }
}

.u-mt-80 {
  margin-top: 8rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-80--sp {
    margin-top: 8rem !important;
  }
}

.u-mt-m80 {
  margin-top: -8rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m80--sp {
    margin-top: -8rem !important;
  }
}

.u-mb-80 {
  margin-bottom: 8rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-80--sp {
    margin-bottom: 8rem !important;
  }
}

.u-ml-80 {
  margin-left: 8rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-80--sp {
    margin-left: 8rem !important;
  }
}

.u-mr-80 {
  margin-right: 8rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-80--sp {
    margin-right: 8rem !important;
  }
}

.u-pt-80 {
  padding-top: 8rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-80--sp {
    padding-top: 8rem !important;
  }
}

.u-pb-80 {
  padding-bottom: 8rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-80--sp {
    padding-bottom: 8rem !important;
  }
}

.u-mt-85 {
  margin-top: 8.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-85--sp {
    margin-top: 8.5rem !important;
  }
}

.u-mt-m85 {
  margin-top: -8.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m85--sp {
    margin-top: -8.5rem !important;
  }
}

.u-mb-85 {
  margin-bottom: 8.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-85--sp {
    margin-bottom: 8.5rem !important;
  }
}

.u-ml-85 {
  margin-left: 8.5rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-85--sp {
    margin-left: 8.5rem !important;
  }
}

.u-mr-85 {
  margin-right: 8.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-85--sp {
    margin-right: 8.5rem !important;
  }
}

.u-pt-85 {
  padding-top: 8.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-85--sp {
    padding-top: 8.5rem !important;
  }
}

.u-pb-85 {
  padding-bottom: 8.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-85--sp {
    padding-bottom: 8.5rem !important;
  }
}

.u-mt-90 {
  margin-top: 9rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-90--sp {
    margin-top: 9rem !important;
  }
}

.u-mt-m90 {
  margin-top: -9rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m90--sp {
    margin-top: -9rem !important;
  }
}

.u-mb-90 {
  margin-bottom: 9rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-90--sp {
    margin-bottom: 9rem !important;
  }
}

.u-ml-90 {
  margin-left: 9rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-90--sp {
    margin-left: 9rem !important;
  }
}

.u-mr-90 {
  margin-right: 9rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-90--sp {
    margin-right: 9rem !important;
  }
}

.u-pt-90 {
  padding-top: 9rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-90--sp {
    padding-top: 9rem !important;
  }
}

.u-pb-90 {
  padding-bottom: 9rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-90--sp {
    padding-bottom: 9rem !important;
  }
}

.u-mt-95 {
  margin-top: 9.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-95--sp {
    margin-top: 9.5rem !important;
  }
}

.u-mt-m95 {
  margin-top: -9.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m95--sp {
    margin-top: -9.5rem !important;
  }
}

.u-mb-95 {
  margin-bottom: 9.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-95--sp {
    margin-bottom: 9.5rem !important;
  }
}

.u-ml-95 {
  margin-left: 9.5rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-95--sp {
    margin-left: 9.5rem !important;
  }
}

.u-mr-95 {
  margin-right: 9.5rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-95--sp {
    margin-right: 9.5rem !important;
  }
}

.u-pt-95 {
  padding-top: 9.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-95--sp {
    padding-top: 9.5rem !important;
  }
}

.u-pb-95 {
  padding-bottom: 9.5rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-95--sp {
    padding-bottom: 9.5rem !important;
  }
}

.u-mt-100 {
  margin-top: 10rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-100--sp {
    margin-top: 10rem !important;
  }
}

.u-mt-m100 {
  margin-top: -10rem;
}
@media only screen and (max-width: 768px) {
  .u-mt-m100--sp {
    margin-top: -10rem !important;
  }
}

.u-mb-100 {
  margin-bottom: 10rem;
}
@media only screen and (max-width: 768px) {
  .u-mb-100--sp {
    margin-bottom: 10rem !important;
  }
}

.u-ml-100 {
  margin-left: 10rem;
}
@media only screen and (max-width: 768px) {
  .u-ml-100--sp {
    margin-left: 10rem !important;
  }
}

.u-mr-100 {
  margin-right: 10rem;
}
@media only screen and (max-width: 768px) {
  .u-mr-100--sp {
    margin-right: 10rem !important;
  }
}

.u-pt-100 {
  padding-top: 10rem;
}
@media only screen and (max-width: 768px) {
  .u-pt-100--sp {
    padding-top: 10rem !important;
  }
}

.u-pb-100 {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 768px) {
  .u-pb-100--sp {
    padding-bottom: 10rem !important;
  }
}

/* ------------------------------------------------------------
    text
------------------------------------------------------------ */
.u-txtBr {
  display: inline-block;
}

.u-txt_en {
  font-family: "Cormorant Infant", serif;
  font-size: 1.1em;
  line-height: 1;
}

.u-f_small {
  font-size: 80%;
}

.u-f_large {
  font-size: 160%;
}

.u-t_c {
  text-align: center !important;
}

.u-t_l {
  text-align: left !important;
}

.u-t_r {
  text-align: right !important;
}

@media only screen and (max-width: 768px) {
  .u-t_c-sp {
    text-align: center !important;
  }
  .u-t_l-sp {
    text-align: left !important;
  }
  .u-t_r-sp {
    text-align: right !important;
  }
}
/* ------------------------------------------------------------
    txt letter-spacing
------------------------------------------------------------ */
.u-txt_space20 {
  letter-spacing: 0.2em;
}

.u-txt_space10 {
  letter-spacing: 0.1em;
}

.u-txt_space5 {
  letter-spacing: 0.05em;
}

.u-txt_space0 {
  letter-spacing: 0;
}

.u-txt_space-2 {
  letter-spacing: -0.02em;
}

.u-txt_space-5 {
  letter-spacing: -0.05em;
}

.u-txt_rotate {
  display: inline-block;
  transform: rotate(24deg);
}

.is-anime[data-anime=slideB] {
  overflow: hidden;
}
.is-anime[data-anime=slideB] > * {
  display: inline-block;
  opacity: 0;
  height: 100%;
  transition: 1.5s cubic-bezier(0.49, 0, 0.16, 0.99);
  transform: translateY(100%);
  overflow: hidden;
}
.is-anime[data-anime=slideB].active > * {
  opacity: 1;
  transform: translateY(0);
}
.is-anime[data-anime=fade] {
  opacity: 0;
  transition: 1.5s cubic-bezier(0.49, 0, 0.16, 0.99);
}
.is-anime[data-anime=fade].fade-btm {
  transform: translateY(15%);
}
.is-anime[data-anime=fade].active {
  opacity: 1;
}
.is-anime[data-anime=fade].active.fade-btm {
  transform: translateY(0);
}
.is-anime[data-anime=trim] {
  opacity: 0;
  transition: 0.8s cubic-bezier(0.49, 0, 0.16, 0.99);
  clip-path: polygon(0 50%, 50% 50%, 50% 100%, 0% 100%);
}
.is-anime[data-anime=trim].apr6-4 {
  clip-path: polygon(0 40%, 60% 40%, 60% 100%, 0% 100%);
}
.is-anime[data-anime=trim].active {
  opacity: 1;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

main img {
  width: 100%;
}
/*# sourceMappingURL=../../map/common/common.css.map */