@charset "UTF-8";
* {
  box-sizing: border-box;
}

html {
  font-size: 10px;
  -webkit-tap-highlight-color: transparent;
  font-family: sans-serif;
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  position: relative;
  font-size: 1.7rem;
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  height: 100%;
  margin: 0;
  padding: 0;
  line-height: 1.7;
  width: 100%;
}

a {
  color: #000;
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
  transition: 0.3s;
  -moz-transition: 0.3s;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
}

a:hover {
  color: #000;
  text-decoration: none;
  opacity: 0.65;
}

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

li {
  margin: 0;
  list-style: none;
}

ul, ol {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6, p, figure, dd, dt, dl {
  margin: 0;
}

figcaption, figure, main,
article, aside, footer,
header, nav, section {
  display: block;
}

b, strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

img {
  border-style: none;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}

button, input, optgroup, select, textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button {
  border: none;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, html [type=button], [type=reset], [type=submit] {
  appearance: none;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

textarea {
  overflow: auto;
}

[type=checkbox], [type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  appearance: none;
  outline-offset: -2px;
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  appearance: none;
}

/* Grid System width Flex */
.flexbox {
  display: flex;
}

.flex-row {
  flex-direction: row;
}

.flex-row-rev {
  flex-direction: row-reverse;
}

.flex-col {
  flex-direction: col;
}

.flex-col-rev {
  flex-direction: col-reverse;
}

.flex-nowrap {
  flex-wrap: nowrap;
}

.flex-wrap {
  flex-wrap: wrap;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse;
}

.flex-justify-start {
  justify-content: flex-start;
}

.flex-justify-end {
  justify-content: flex-end;
}

.flex-justify-center {
  justify-content: center;
}

.flex-justify-between {
  justify-content: space-between;
}

.flex-justify-around {
  justify-content: space-around;
}

.flex-align-start {
  align-items: flex-start;
}

.flex-align-end {
  align-items: flex-end;
}

.flex-align-center {
  align-items: center;
}

.flex-align-baseline {
  align-items: baseline;
}

/*margin*/
.mt0 {
  margin-top: 0px;
}

.mt5 {
  margin-top: 5px;
}

.mt10 {
  margin-top: 10px;
}

.mt15 {
  margin-top: 15px;
}

.mt20 {
  margin-top: 20px;
}

.mt25 {
  margin-top: 25px;
}

.mt30 {
  margin-top: 30px;
}

.mt35 {
  margin-top: 35px;
}

.mt40 {
  margin-top: 40px;
}

.mt45 {
  margin-top: 45px;
}

.mt50 {
  margin-top: 50px;
}

.mt55 {
  margin-top: 55px;
}

.mt60 {
  margin-top: 60px;
}

.mt65 {
  margin-top: 65px;
}

.mt70 {
  margin-top: 70px;
}

.mt75 {
  margin-top: 75px;
}

.mt80 {
  margin-top: 80px;
}

.mt85 {
  margin-top: 85px;
}

.mt90 {
  margin-top: 90px;
}

.mt95 {
  margin-top: 95px;
}

.mt100 {
  margin-top: 100px;
}

.mb0 {
  margin-bottom: 0px;
}

.mb5 {
  margin-bottom: 5px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb25 {
  margin-bottom: 25px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb35 {
  margin-bottom: 35px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb45 {
  margin-bottom: 45px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb55 {
  margin-bottom: 55px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb65 {
  margin-bottom: 65px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb75 {
  margin-bottom: 75px;
}

.mb80 {
  margin-bottom: 80px;
}

.mb85 {
  margin-bottom: 85px;
}

.mb90 {
  margin-bottom: 90px;
}

.mb95 {
  margin-bottom: 95px;
}

.mb100 {
  margin-bottom: 100px;
}

@media screen and (max-width: 768px) {
  .mt0 {
    margin-top: 0px;
  }
  .mt5 {
    margin-top: 2.5px;
  }
  .mt10 {
    margin-top: 5px;
  }
  .mt15 {
    margin-top: 7.5px;
  }
  .mt20 {
    margin-top: 10px;
  }
  .mt25 {
    margin-top: 12.5px;
  }
  .mt30 {
    margin-top: 15px;
  }
  .mt35 {
    margin-top: 17.5px;
  }
  .mt40 {
    margin-top: 20px;
  }
  .mt45 {
    margin-top: 22.5px;
  }
  .mt50 {
    margin-top: 25px;
  }
  .mt55 {
    margin-top: 27.5px;
  }
  .mt60 {
    margin-top: 30px;
  }
  .mt65 {
    margin-top: 32.5px;
  }
  .mt70 {
    margin-top: 35px;
  }
  .mt75 {
    margin-top: 37.5px;
  }
  .mt80 {
    margin-top: 40px;
  }
  .mt85 {
    margin-top: 42.5px;
  }
  .mt90 {
    margin-top: 45px;
  }
  .mt95 {
    margin-top: 47.5px;
  }
  .mt100 {
    margin-top: 50px;
  }
  .mb0 {
    margin-bottom: 0px;
  }
  .mb5 {
    margin-bottom: 2.5px;
  }
  .mb10 {
    margin-bottom: 5px;
  }
  .mb15 {
    margin-bottom: 7.5px;
  }
  .mb20 {
    margin-bottom: 10px;
  }
  .mb25 {
    margin-bottom: 12.5px;
  }
  .mb30 {
    margin-bottom: 15px;
  }
  .mb35 {
    margin-bottom: 17.5px;
  }
  .mb40 {
    margin-bottom: 20px;
  }
  .mb45 {
    margin-bottom: 22.5px;
  }
  .mb50 {
    margin-bottom: 25px;
  }
  .mb55 {
    margin-bottom: 27.5px;
  }
  .mb60 {
    margin-bottom: 30px;
  }
  .mb65 {
    margin-bottom: 32.5px;
  }
  .mb70 {
    margin-bottom: 35px;
  }
  .mb75 {
    margin-bottom: 37.5px;
  }
  .mb80 {
    margin-bottom: 40px;
  }
  .mb85 {
    margin-bottom: 42.5px;
  }
  .mb90 {
    margin-bottom: 45px;
  }
  .mb95 {
    margin-bottom: 47.5px;
  }
  .mb100 {
    margin-bottom: 50px;
  }
}
/*padding*/
.pt0 {
  padding-top: 0px;
}

.pt5 {
  padding-top: 5px;
}

.pt10 {
  padding-top: 10px;
}

.pt15 {
  padding-top: 15px;
}

.pt20 {
  padding-top: 20px;
}

.pt25 {
  padding-top: 25px;
}

.pt30 {
  padding-top: 30px;
}

.pt35 {
  padding-top: 35px;
}

.pt40 {
  padding-top: 40px;
}

.pt45 {
  padding-top: 45px;
}

.pt50 {
  padding-top: 50px;
}

.pt55 {
  padding-top: 55px;
}

.pt60 {
  padding-top: 60px;
}

.pt65 {
  padding-top: 65px;
}

.pt70 {
  padding-top: 70px;
}

.pt75 {
  padding-top: 75px;
}

.pt80 {
  padding-top: 80px;
}

.pt85 {
  padding-top: 85px;
}

.pt90 {
  padding-top: 90px;
}

.pt95 {
  padding-top: 95px;
}

.pt100 {
  padding-top: 100px;
}

.pb0 {
  padding-bottom: 0px;
}

.pb5 {
  padding-bottom: 5px;
}

.pb10 {
  padding-bottom: 10px;
}

.pb15 {
  padding-bottom: 15px;
}

.pb20 {
  padding-bottom: 20px;
}

.pb25 {
  padding-bottom: 25px;
}

.pb30 {
  padding-bottom: 30px;
}

.pb35 {
  padding-bottom: 35px;
}

.pb40 {
  padding-bottom: 40px;
}

.pb45 {
  padding-bottom: 45px;
}

.pb50 {
  padding-bottom: 50px;
}

.pb55 {
  padding-bottom: 55px;
}

.pb60 {
  padding-bottom: 60px;
}

.pb65 {
  padding-bottom: 65px;
}

.pb70 {
  padding-bottom: 70px;
}

.pb75 {
  padding-bottom: 75px;
}

.pb80 {
  padding-bottom: 80px;
}

.pb85 {
  padding-bottom: 85px;
}

.pb90 {
  padding-bottom: 90px;
}

.pb95 {
  padding-bottom: 95px;
}

.pb100 {
  padding-bottom: 100px;
}

.pl0 {
  padding-left: 0px;
}

.pl5 {
  padding-left: 5px;
}

.pl10 {
  padding-left: 10px;
}

.pl15 {
  padding-left: 15px;
}

.pl20 {
  padding-left: 20px;
}

.pl25 {
  padding-left: 25px;
}

.pl30 {
  padding-left: 30px;
}

.pl35 {
  padding-left: 35px;
}

.pl40 {
  padding-left: 40px;
}

.pl45 {
  padding-left: 45px;
}

.pl50 {
  padding-left: 50px;
}

.pl55 {
  padding-left: 55px;
}

.pl60 {
  padding-left: 60px;
}

.pl65 {
  padding-left: 65px;
}

.pl70 {
  padding-left: 70px;
}

.pl75 {
  padding-left: 75px;
}

.pl80 {
  padding-left: 80px;
}

.pl85 {
  padding-left: 85px;
}

.pl90 {
  padding-left: 90px;
}

.pl95 {
  padding-left: 95px;
}

.pl100 {
  padding-left: 100px;
}

.pr0 {
  padding-right: 0px;
}

.pr5 {
  padding-right: 5px;
}

.pr10 {
  padding-right: 10px;
}

.pr15 {
  padding-right: 15px;
}

.pr20 {
  padding-right: 20px;
}

.pr25 {
  padding-right: 25px;
}

.pr30 {
  padding-right: 30px;
}

.pr35 {
  padding-right: 35px;
}

.pr40 {
  padding-right: 40px;
}

.pr45 {
  padding-right: 45px;
}

.pr50 {
  padding-right: 50px;
}

.pr55 {
  padding-right: 55px;
}

.pr60 {
  padding-right: 60px;
}

.pr65 {
  padding-right: 65px;
}

.pr70 {
  padding-right: 70px;
}

.pr75 {
  padding-right: 75px;
}

.pr80 {
  padding-right: 80px;
}

.pr85 {
  padding-right: 85px;
}

.pr90 {
  padding-right: 90px;
}

.pr95 {
  padding-right: 95px;
}

.pr100 {
  padding-right: 100px;
}

@media screen and (max-width: 768px) {
  .pt0 {
    padding-top: 0px;
  }
  .pt5 {
    padding-top: 2.5px;
  }
  .pt10 {
    padding-top: 5px;
  }
  .pt15 {
    padding-top: 7.5px;
  }
  .pt20 {
    padding-top: 10px;
  }
  .pt25 {
    padding-top: 12.5px;
  }
  .pt30 {
    padding-top: 15px;
  }
  .pt35 {
    padding-top: 17.5px;
  }
  .pt40 {
    padding-top: 20px;
  }
  .pt45 {
    padding-top: 22.5px;
  }
  .pt50 {
    padding-top: 25px;
  }
  .pt55 {
    padding-top: 27.5px;
  }
  .pt60 {
    padding-top: 30px;
  }
  .pt65 {
    padding-top: 32.5px;
  }
  .pt70 {
    padding-top: 35px;
  }
  .pt75 {
    padding-top: 37.5px;
  }
  .pt80 {
    padding-top: 40px;
  }
  .pt85 {
    padding-top: 42.5px;
  }
  .pt90 {
    padding-top: 45px;
  }
  .pt95 {
    padding-top: 47.5px;
  }
  .pt100 {
    padding-top: 50px;
  }
  .pb0 {
    padding-bottom: 0px;
  }
  .pb5 {
    padding-bottom: 2.5px;
  }
  .pb10 {
    padding-bottom: 5px;
  }
  .pb15 {
    padding-bottom: 7.5px;
  }
  .pb20 {
    padding-bottom: 10px;
  }
  .pb25 {
    padding-bottom: 12.5px;
  }
  .pb30 {
    padding-bottom: 15px;
  }
  .pb35 {
    padding-bottom: 17.5px;
  }
  .pb40 {
    padding-bottom: 20px;
  }
  .pb45 {
    padding-bottom: 22.5px;
  }
  .pb50 {
    padding-bottom: 25px;
  }
  .pb55 {
    padding-bottom: 27.5px;
  }
  .pb60 {
    padding-bottom: 30px;
  }
  .pb65 {
    padding-bottom: 32.5px;
  }
  .pb70 {
    padding-bottom: 35px;
  }
  .pb75 {
    padding-bottom: 37.5px;
  }
  .pb80 {
    padding-bottom: 40px;
  }
  .pb85 {
    padding-bottom: 42.5px;
  }
  .pb90 {
    padding-bottom: 45px;
  }
  .pb95 {
    padding-bottom: 47.5px;
  }
  .pb100 {
    padding-bottom: 50px;
  }
  .pl0 {
    padding-left: 0px;
  }
  .pl5 {
    padding-left: 2.5px;
  }
  .pl10 {
    padding-left: 5px;
  }
  .pl15 {
    padding-left: 7.5px;
  }
  .pl20 {
    padding-left: 10px;
  }
  .pl25 {
    padding-left: 12.5px;
  }
  .pl30 {
    padding-left: 15px;
  }
  .pl35 {
    padding-left: 17.5px;
  }
  .pl40 {
    padding-left: 20px;
  }
  .pl45 {
    padding-left: 22.5px;
  }
  .pl50 {
    padding-left: 25px;
  }
  .pl55 {
    padding-left: 27.5px;
  }
  .pl60 {
    padding-left: 30px;
  }
  .pl65 {
    padding-left: 32.5px;
  }
  .pl70 {
    padding-left: 35px;
  }
  .pl75 {
    padding-left: 37.5px;
  }
  .pl80 {
    padding-left: 40px;
  }
  .pl85 {
    padding-left: 42.5px;
  }
  .pl90 {
    padding-left: 45px;
  }
  .pl95 {
    padding-left: 47.5px;
  }
  .pl100 {
    padding-left: 50px;
  }
  .pr0 {
    padding-right: 0px;
  }
  .pr5 {
    padding-right: 2.5px;
  }
  .pr10 {
    padding-right: 5px;
  }
  .pr15 {
    padding-right: 7.5px;
  }
  .pr20 {
    padding-right: 10px;
  }
  .pr25 {
    padding-right: 12.5px;
  }
  .pr30 {
    padding-right: 15px;
  }
  .pr35 {
    padding-right: 17.5px;
  }
  .pr40 {
    padding-right: 20px;
  }
  .pr45 {
    padding-right: 22.5px;
  }
  .pr50 {
    padding-right: 25px;
  }
  .pr55 {
    padding-right: 27.5px;
  }
  .pr60 {
    padding-right: 30px;
  }
  .pr65 {
    padding-right: 32.5px;
  }
  .pr70 {
    padding-right: 35px;
  }
  .pr75 {
    padding-right: 37.5px;
  }
  .pr80 {
    padding-right: 40px;
  }
  .pr85 {
    padding-right: 42.5px;
  }
  .pr90 {
    padding-right: 45px;
  }
  .pr95 {
    padding-right: 47.5px;
  }
  .pr100 {
    padding-right: 50px;
  }
}
/* form input*/
table {
  border-collapse: collapse;
  border-spacing: 0;
  max-width: 100%;
  width: 100%;
}

input[type=text],
input[type=email],
input[type=tel],
input[type=url],
input[type=password],
input[type=number],
select {
  font-size: 1.6rem;
  background: #fff;
  border: 1px solid #E8E8E8;
  margin: 2px;
  padding: 0 0.3em;
  width: 100%;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=number]:focus,
select:focus {
  outline: none;
  border-color: #000;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  appearance: none;
  margin: 0;
}

input[type=number] {
  appearance: textfield;
}

select {
  font-size: 1.3rem;
  height: 2.5em;
  padding: 0.5em;
  width: auto;
  min-width: 7em;
}

textarea {
  font-size: 1.6rem;
  background: #fff;
  border: 1px solid #E8E8E8;
  padding: 0 0.3em;
  resize: vertical;
  width: 100%;
}
textarea:focus {
  outline: none;
  border-color: #000;
}

input[type=checkbox],
input[type=radio] {
  background: #fff;
  cursor: pointer;
  margin-right: 0.5em;
}

textarea::placeholder,
input::placeholder {
  font-size: 1.4rem;
  color: #C5C5C5;
}

/***************************

style/header.scss

***************************/
.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 90;
  width: 100%;
  padding: 30px 0;
  background: rgba(35, 34, 34, 0.65);
  backdrop-filter: blur(8px);
  opacity: 0;
}
@media screen and (max-width: 768px) {
  .header {
    padding: 15px 0;
  }
}
.header-inner {
  width: 100%;
  padding: 0 25px;
}
.header .logo {
  line-height: 1;
}
@media screen and (min-width: 769px) {
  .header .logo img {
    width: 374.4px;
  }
}
@media screen and (max-width: 768px) {
  .header .logo img {
    width: 300px;
  }
}

.nav-fixed {
  position: fixed;
  z-index: 90;
  opacity: 0;
}
@media screen and (min-width: 769px) {
  .nav-fixed {
    top: 50%;
    right: clamp(15px, 3.90625vw, 40px);
    transform: translate(0, -50%);
  }
}
@media screen and (max-width: 768px) {
  .nav-fixed {
    width: 100%;
    bottom: 0;
    left: 0;
    transform: translate(0, 0);
  }
}
@media screen and (max-width: 768px) {
  .nav-fixed ul {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
.nav-fixed ul li:not(:last-child) {
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .nav-fixed ul li:not(:last-child) {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .nav-fixed ul li {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .nav-fixed ul li a {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 60px;
    text-align: center;
    color: #fff;
    font-size: 1.2rem;
    background-image: url(../img/common/fz-deco-t.png), url(../img/common/fz-deco-b.png);
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: top 10px right 8px, left 8px bottom 10px;
    background-color: #0F3347;
    border-top: 2px solid #FEDC92;
    border-bottom: 2px solid #FEDC92;
  }
  .nav-fixed ul li a.registration {
    background-color: #E94623;
    border-left: 2px solid #FEDC92;
  }
  .nav-fixed ul li a.schedule {
    border-left: 2px solid #FEDC92;
  }
  .nav-fixed ul li a.conditions {
    border-left: 2px solid #FEDC92;
    border-right: 2px solid #FEDC92;
  }
  .nav-fixed ul li a:before {
    position: absolute;
    content: "";
    width: calc(100% - 10px);
    height: calc(100% - 12px);
    top: 4px;
    left: 3px;
    border: 2px dotted #FEDC92;
    z-index: 3;
    pointer-events: none;
  }
}
@media screen and (max-width: 450px) {
  .nav-fixed ul li a {
    font-size: 2.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  .nav-fixed ul li img {
    width: 140px;
  }
}
@media screen and (max-width: 768px) {
  .nav-fixed ul li img {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .nav-fixed ul li p {
    display: none;
  }
}

/***************************

style/footer.scss

***************************/
footer {
  width: 100%;
  background: transparent;
  padding-top: 100px;
  padding-bottom: 60px;
}
@media screen and (max-width: 768px) {
  footer {
    padding-top: 50px;
    padding-bottom: 90px;
  }
}
footer small {
  display: block;
  width: 100%;
  font-family: "Google Sans", sans-serif;
  font-weight: 500;
  font-size: 1.1rem;
  letter-spacing: 0.12em;
  color: #5C5F64;
  text-align: center;
}

.pagetop {
  width: 100%;
  text-align: center;
  margin-bottom: 95px;
}
@media screen and (max-width: 768px) {
  .pagetop {
    margin-bottom: 50px;
  }
}

.corporate-link {
  width: 100%;
  text-align: center;
  margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
  .corporate-link {
    margin-bottom: 30px;
  }
}

/*////////////////////////

 user common css

////////////////////////*/
@media screen and (min-width: 769px) {
  body {
    zoom: 0.8;
  }
}

.wrap1100 {
  max-width: 1140px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-right: 20px;
  padding-left: 20px;
  box-sizing: border-box;
}

.tac {
  text-align: center;
}

.tar {
  text-align: right;
}

.va_t {
  vertical-align: top;
}

.wd100 {
  width: 100%;
}

@media screen and (min-width: 651px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
@media screen and (max-width: 650px) {
  a[href^="tel:"] {
    text-decoration: underline;
    display: inline-block;
  }
}
/*////////////////////////

fonts

////////////////////////*/
.ls5 {
  letter-spacing: 0.05em;
}

.lh2 {
  line-height: 2;
}

.lh18 {
  line-height: 1.8;
}

.lh1 {
  line-height: 1;
}

.thin {
  font-weight: 100;
}

.ex-light {
  font-weight: 200;
}

.light {
  font-weight: 300;
}

.regular {
  font-weight: 400;
}

.medium {
  font-weight: 500;
}

.sm-bold {
  font-weight: 600;
}

.bold {
  font-weight: 700;
}

.ex-bold {
  font-weight: 800;
}

.black {
  font-weight: 900;
}

.fz5 {
  font-size: 0.5rem;
}

.fz6 {
  font-size: 0.6rem;
}

.fz7 {
  font-size: 0.7rem;
}

.fz8 {
  font-size: 0.8rem;
}

.fz9 {
  font-size: 0.9rem;
}

.fz10 {
  font-size: 1rem;
}

.fz11 {
  font-size: 1.1rem;
}
@media screen and (max-width: 450px) {
  .fz11 {
    font-size: 0.9rem;
  }
}

.fz12 {
  font-size: 1.2rem;
}
@media screen and (max-width: 450px) {
  .fz12 {
    font-size: 1rem;
  }
}

.fz13 {
  font-size: 1.3rem;
}
@media screen and (max-width: 450px) {
  .fz13 {
    font-size: 1.1rem;
  }
}

.fz14 {
  font-size: 1.4rem;
}
@media screen and (max-width: 450px) {
  .fz14 {
    font-size: 1.2rem;
  }
}

.fz15 {
  font-size: 1.5rem;
}
@media screen and (max-width: 450px) {
  .fz15 {
    font-size: 1.3rem;
  }
}

.fz16 {
  font-size: 1.6rem;
}
@media screen and (max-width: 450px) {
  .fz16 {
    font-size: 1.4rem;
  }
}

.fz17 {
  font-size: 1.7rem;
}
@media screen and (max-width: 450px) {
  .fz17 {
    font-size: 1.5rem;
  }
}

.fz18 {
  font-size: 1.8rem;
}
@media screen and (max-width: 450px) {
  .fz18 {
    font-size: 1.6rem;
  }
}

.fz19 {
  font-size: 1.9rem;
}
@media screen and (max-width: 450px) {
  .fz19 {
    font-size: 1.7rem;
  }
}

.fz20 {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .fz20 {
    font-size: clamp(1.6rem, 2.6041666667vw, 2rem);
  }
}

.fz21 {
  font-size: 2.1rem;
}
@media screen and (max-width: 768px) {
  .fz21 {
    font-size: clamp(1.7rem, 2.734375vw, 2.1rem);
  }
}

.fz22 {
  font-size: 2.2rem;
}
@media screen and (max-width: 768px) {
  .fz22 {
    font-size: clamp(1.8rem, 2.8645833333vw, 2.2rem);
  }
}

.fz23 {
  font-size: 2.3rem;
}
@media screen and (max-width: 768px) {
  .fz23 {
    font-size: clamp(1.9rem, 2.9947916667vw, 2.3rem);
  }
}

.fz24 {
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .fz24 {
    font-size: clamp(2rem, 3.125vw, 2.4rem);
  }
}

.fz25 {
  font-size: 2.5rem;
}
@media screen and (max-width: 768px) {
  .fz25 {
    font-size: clamp(2.1rem, 3.2552083333vw, 2.5rem);
  }
}

.fz26 {
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .fz26 {
    font-size: clamp(2.2rem, 3.3854166667vw, 2.6rem);
  }
}

.fz27 {
  font-size: 2.7rem;
}
@media screen and (max-width: 768px) {
  .fz27 {
    font-size: clamp(2.3rem, 3.515625vw, 2.7rem);
  }
}

.fz28 {
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  .fz28 {
    font-size: clamp(2.4rem, 3.6458333333vw, 2.8rem);
  }
}

.fz29 {
  font-size: 2.9rem;
}
@media screen and (max-width: 768px) {
  .fz29 {
    font-size: clamp(2.5rem, 3.7760416667vw, 2.9rem);
  }
}

.fz30 {
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .fz30 {
    font-size: clamp(2.4rem, 3.90625vw, 3rem);
  }
}

.fz31 {
  font-size: 3.1rem;
}
@media screen and (max-width: 768px) {
  .fz31 {
    font-size: clamp(2.5rem, 4.0364583333vw, 3.1rem);
  }
}

.fz32 {
  font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
  .fz32 {
    font-size: clamp(2.6rem, 4.1666666667vw, 3.2rem);
  }
}

.fz33 {
  font-size: 3.3rem;
}
@media screen and (max-width: 768px) {
  .fz33 {
    font-size: clamp(2.7rem, 4.296875vw, 3.3rem);
  }
}

.fz34 {
  font-size: 3.4rem;
}
@media screen and (max-width: 768px) {
  .fz34 {
    font-size: clamp(2.8rem, 4.4270833333vw, 3.4rem);
  }
}

.fz35 {
  font-size: 3.5rem;
}
@media screen and (max-width: 768px) {
  .fz35 {
    font-size: clamp(2.9rem, 4.5572916667vw, 3.5rem);
  }
}

.fz36 {
  font-size: 3.6rem;
}
@media screen and (max-width: 768px) {
  .fz36 {
    font-size: clamp(3rem, 4.6875vw, 3.6rem);
  }
}

.fz37 {
  font-size: 3.7rem;
}
@media screen and (max-width: 768px) {
  .fz37 {
    font-size: clamp(3.1rem, 4.8177083333vw, 3.7rem);
  }
}

.fz38 {
  font-size: 3.8rem;
}
@media screen and (max-width: 768px) {
  .fz38 {
    font-size: clamp(3.2rem, 4.9479166667vw, 3.8rem);
  }
}

.fz39 {
  font-size: 3.9rem;
}
@media screen and (max-width: 768px) {
  .fz39 {
    font-size: clamp(3.3rem, 5.078125vw, 3.9rem);
  }
}

.fz40 {
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  .fz40 {
    font-size: clamp(3.2rem, 5.2083333333vw, 4rem);
  }
}

.fz41 {
  font-size: 4.1rem;
}
@media screen and (max-width: 768px) {
  .fz41 {
    font-size: clamp(3.3rem, 5.3385416667vw, 4.1rem);
  }
}

.fz42 {
  font-size: 4.2rem;
}
@media screen and (max-width: 768px) {
  .fz42 {
    font-size: clamp(3.4rem, 5.46875vw, 4.2rem);
  }
}

.fz43 {
  font-size: 4.3rem;
}
@media screen and (max-width: 768px) {
  .fz43 {
    font-size: clamp(3.5rem, 5.5989583333vw, 4.3rem);
  }
}

.fz44 {
  font-size: 4.4rem;
}
@media screen and (max-width: 768px) {
  .fz44 {
    font-size: clamp(3.6rem, 5.7291666667vw, 4.4rem);
  }
}

.fz45 {
  font-size: 4.5rem;
}
@media screen and (max-width: 768px) {
  .fz45 {
    font-size: clamp(3.7rem, 5.859375vw, 4.5rem);
  }
}

.fz46 {
  font-size: 4.6rem;
}
@media screen and (max-width: 768px) {
  .fz46 {
    font-size: clamp(3.8rem, 5.9895833333vw, 4.6rem);
  }
}

.fz47 {
  font-size: 4.7rem;
}
@media screen and (max-width: 768px) {
  .fz47 {
    font-size: clamp(3.9rem, 6.1197916667vw, 4.7rem);
  }
}

.fz48 {
  font-size: 4.8rem;
}
@media screen and (max-width: 768px) {
  .fz48 {
    font-size: clamp(4rem, 6.25vw, 4.8rem);
  }
}

.fz49 {
  font-size: 4.9rem;
}
@media screen and (max-width: 768px) {
  .fz49 {
    font-size: clamp(4.1rem, 6.3802083333vw, 4.9rem);
  }
}

.fz50 {
  font-size: 5rem;
}
@media screen and (max-width: 768px) {
  .fz50 {
    font-size: clamp(4rem, 6.5104166667vw, 5rem);
  }
}

.fz51 {
  font-size: 5.1rem;
}
@media screen and (max-width: 768px) {
  .fz51 {
    font-size: clamp(4.1rem, 6.640625vw, 5.1rem);
  }
}

.fz52 {
  font-size: 5.2rem;
}
@media screen and (max-width: 768px) {
  .fz52 {
    font-size: clamp(4.2rem, 6.7708333333vw, 5.2rem);
  }
}

.fz53 {
  font-size: 5.3rem;
}
@media screen and (max-width: 768px) {
  .fz53 {
    font-size: clamp(4.3rem, 6.9010416667vw, 5.3rem);
  }
}

.fz54 {
  font-size: 5.4rem;
}
@media screen and (max-width: 768px) {
  .fz54 {
    font-size: clamp(4.4rem, 7.03125vw, 5.4rem);
  }
}

.fz55 {
  font-size: 5.5rem;
}
@media screen and (max-width: 768px) {
  .fz55 {
    font-size: clamp(4.5rem, 7.1614583333vw, 5.5rem);
  }
}

.fz56 {
  font-size: 5.6rem;
}
@media screen and (max-width: 768px) {
  .fz56 {
    font-size: clamp(4.6rem, 7.2916666667vw, 5.6rem);
  }
}

.fz57 {
  font-size: 5.7rem;
}
@media screen and (max-width: 768px) {
  .fz57 {
    font-size: clamp(4.7rem, 7.421875vw, 5.7rem);
  }
}

.fz58 {
  font-size: 5.8rem;
}
@media screen and (max-width: 768px) {
  .fz58 {
    font-size: clamp(4.8rem, 7.5520833333vw, 5.8rem);
  }
}

.fz59 {
  font-size: 5.9rem;
}
@media screen and (max-width: 768px) {
  .fz59 {
    font-size: clamp(4.9rem, 7.6822916667vw, 5.9rem);
  }
}

.fz60 {
  font-size: 6rem;
}
@media screen and (max-width: 768px) {
  .fz60 {
    font-size: clamp(4.8rem, 7.8125vw, 6rem);
  }
}

.fz61 {
  font-size: 6.1rem;
}
@media screen and (max-width: 768px) {
  .fz61 {
    font-size: clamp(4.9rem, 7.9427083333vw, 6.1rem);
  }
}

.fz62 {
  font-size: 6.2rem;
}
@media screen and (max-width: 768px) {
  .fz62 {
    font-size: clamp(5rem, 8.0729166667vw, 6.2rem);
  }
}

.fz63 {
  font-size: 6.3rem;
}
@media screen and (max-width: 768px) {
  .fz63 {
    font-size: clamp(5.1rem, 8.203125vw, 6.3rem);
  }
}

.fz64 {
  font-size: 6.4rem;
}
@media screen and (max-width: 768px) {
  .fz64 {
    font-size: clamp(5.2rem, 8.3333333333vw, 6.4rem);
  }
}

.fz65 {
  font-size: 6.5rem;
}
@media screen and (max-width: 768px) {
  .fz65 {
    font-size: clamp(5.3rem, 8.4635416667vw, 6.5rem);
  }
}

.fz66 {
  font-size: 6.6rem;
}
@media screen and (max-width: 768px) {
  .fz66 {
    font-size: clamp(5.4rem, 8.59375vw, 6.6rem);
  }
}

.fz67 {
  font-size: 6.7rem;
}
@media screen and (max-width: 768px) {
  .fz67 {
    font-size: clamp(5.5rem, 8.7239583333vw, 6.7rem);
  }
}

.fz68 {
  font-size: 6.8rem;
}
@media screen and (max-width: 768px) {
  .fz68 {
    font-size: clamp(5.6rem, 8.8541666667vw, 6.8rem);
  }
}

.fz69 {
  font-size: 6.9rem;
}
@media screen and (max-width: 768px) {
  .fz69 {
    font-size: clamp(5.7rem, 8.984375vw, 6.9rem);
  }
}

.fz70 {
  font-size: 7rem;
}
@media screen and (max-width: 768px) {
  .fz70 {
    font-size: clamp(5.6rem, 9.1145833333vw, 7rem);
  }
}

.fz71 {
  font-size: 7.1rem;
}
@media screen and (max-width: 768px) {
  .fz71 {
    font-size: clamp(5.7rem, 9.2447916667vw, 7.1rem);
  }
}

.fz72 {
  font-size: 7.2rem;
}
@media screen and (max-width: 768px) {
  .fz72 {
    font-size: clamp(5.8rem, 9.375vw, 7.2rem);
  }
}

.fz73 {
  font-size: 7.3rem;
}
@media screen and (max-width: 768px) {
  .fz73 {
    font-size: clamp(5.9rem, 9.5052083333vw, 7.3rem);
  }
}

.fz74 {
  font-size: 7.4rem;
}
@media screen and (max-width: 768px) {
  .fz74 {
    font-size: clamp(6rem, 9.6354166667vw, 7.4rem);
  }
}

.fz75 {
  font-size: 7.5rem;
}
@media screen and (max-width: 768px) {
  .fz75 {
    font-size: clamp(6.1rem, 9.765625vw, 7.5rem);
  }
}

.fz76 {
  font-size: 7.6rem;
}
@media screen and (max-width: 768px) {
  .fz76 {
    font-size: clamp(6.2rem, 9.8958333333vw, 7.6rem);
  }
}

.fz77 {
  font-size: 7.7rem;
}
@media screen and (max-width: 768px) {
  .fz77 {
    font-size: clamp(6.3rem, 10.0260416667vw, 7.7rem);
  }
}

.fz78 {
  font-size: 7.8rem;
}
@media screen and (max-width: 768px) {
  .fz78 {
    font-size: clamp(6.4rem, 10.15625vw, 7.8rem);
  }
}

.fz79 {
  font-size: 7.9rem;
}
@media screen and (max-width: 768px) {
  .fz79 {
    font-size: clamp(6.5rem, 10.2864583333vw, 7.9rem);
  }
}

.fz80 {
  font-size: 8rem;
}
@media screen and (max-width: 768px) {
  .fz80 {
    font-size: clamp(6.4rem, 10.4166666667vw, 8rem);
  }
}

.fz81 {
  font-size: 8.1rem;
}
@media screen and (max-width: 768px) {
  .fz81 {
    font-size: clamp(6.5rem, 10.546875vw, 8.1rem);
  }
}

.fz82 {
  font-size: 8.2rem;
}
@media screen and (max-width: 768px) {
  .fz82 {
    font-size: clamp(6.6rem, 10.6770833333vw, 8.2rem);
  }
}

.fz83 {
  font-size: 8.3rem;
}
@media screen and (max-width: 768px) {
  .fz83 {
    font-size: clamp(6.7rem, 10.8072916667vw, 8.3rem);
  }
}

.fz84 {
  font-size: 8.4rem;
}
@media screen and (max-width: 768px) {
  .fz84 {
    font-size: clamp(6.8rem, 10.9375vw, 8.4rem);
  }
}

.fz85 {
  font-size: 8.5rem;
}
@media screen and (max-width: 768px) {
  .fz85 {
    font-size: clamp(6.9rem, 11.0677083333vw, 8.5rem);
  }
}

.fz86 {
  font-size: 8.6rem;
}
@media screen and (max-width: 768px) {
  .fz86 {
    font-size: clamp(7rem, 11.1979166667vw, 8.6rem);
  }
}

.fz87 {
  font-size: 8.7rem;
}
@media screen and (max-width: 768px) {
  .fz87 {
    font-size: clamp(7.1rem, 11.328125vw, 8.7rem);
  }
}

.fz88 {
  font-size: 8.8rem;
}
@media screen and (max-width: 768px) {
  .fz88 {
    font-size: clamp(7.2rem, 11.4583333333vw, 8.8rem);
  }
}

.fz89 {
  font-size: 8.9rem;
}
@media screen and (max-width: 768px) {
  .fz89 {
    font-size: clamp(7.3rem, 11.5885416667vw, 8.9rem);
  }
}

.fz90 {
  font-size: 9rem;
}
@media screen and (max-width: 768px) {
  .fz90 {
    font-size: clamp(7.2rem, 11.71875vw, 9rem);
  }
}

.fz91 {
  font-size: 9.1rem;
}
@media screen and (max-width: 768px) {
  .fz91 {
    font-size: clamp(7.3rem, 11.8489583333vw, 9.1rem);
  }
}

.fz92 {
  font-size: 9.2rem;
}
@media screen and (max-width: 768px) {
  .fz92 {
    font-size: clamp(7.4rem, 11.9791666667vw, 9.2rem);
  }
}

.fz93 {
  font-size: 9.3rem;
}
@media screen and (max-width: 768px) {
  .fz93 {
    font-size: clamp(7.5rem, 12.109375vw, 9.3rem);
  }
}

.fz94 {
  font-size: 9.4rem;
}
@media screen and (max-width: 768px) {
  .fz94 {
    font-size: clamp(7.6rem, 12.2395833333vw, 9.4rem);
  }
}

.fz95 {
  font-size: 9.5rem;
}
@media screen and (max-width: 768px) {
  .fz95 {
    font-size: clamp(7.7rem, 12.3697916667vw, 9.5rem);
  }
}

.fz96 {
  font-size: 9.6rem;
}
@media screen and (max-width: 768px) {
  .fz96 {
    font-size: clamp(7.8rem, 12.5vw, 9.6rem);
  }
}

.fz97 {
  font-size: 9.7rem;
}
@media screen and (max-width: 768px) {
  .fz97 {
    font-size: clamp(7.9rem, 12.6302083333vw, 9.7rem);
  }
}

.fz98 {
  font-size: 9.8rem;
}
@media screen and (max-width: 768px) {
  .fz98 {
    font-size: clamp(8rem, 12.7604166667vw, 9.8rem);
  }
}

.fz99 {
  font-size: 9.9rem;
}
@media screen and (max-width: 768px) {
  .fz99 {
    font-size: clamp(8.1rem, 12.890625vw, 9.9rem);
  }
}

.fz100 {
  font-size: 10rem;
}
@media screen and (max-width: 768px) {
  .fz100 {
    font-size: clamp(8rem, 13.0208333333vw, 10rem);
  }
}

.g0 {
  gap: 0px;
}

.g5 {
  gap: 5px;
}

.g10 {
  gap: 10px;
}

.g15 {
  gap: 15px;
}

.g20 {
  gap: 20px;
}

.g25 {
  gap: 25px;
}

.g30 {
  gap: 30px;
}

.g35 {
  gap: 35px;
}

.g40 {
  gap: 40px;
}

.g45 {
  gap: 45px;
}

.g50 {
  gap: 50px;
}

.g55 {
  gap: 55px;
}

.g60 {
  gap: 60px;
}

.g65 {
  gap: 65px;
}

.g70 {
  gap: 70px;
}

.g75 {
  gap: 75px;
}

.g80 {
  gap: 80px;
}

.g85 {
  gap: 85px;
}

.g90 {
  gap: 90px;
}

.g95 {
  gap: 95px;
}

.g100 {
  gap: 100px;
}

.rg0 {
  row-gap: 0px;
}

.rg5 {
  row-gap: 5px;
}

.rg10 {
  row-gap: 10px;
}

.rg15 {
  row-gap: 15px;
}

.rg20 {
  row-gap: 20px;
}

.rg25 {
  row-gap: 25px;
}

.rg30 {
  row-gap: 30px;
}

.rg35 {
  row-gap: 35px;
}

.rg40 {
  row-gap: 40px;
}

.rg45 {
  row-gap: 45px;
}

.rg50 {
  row-gap: 50px;
}

.rg55 {
  row-gap: 55px;
}

.rg60 {
  row-gap: 60px;
}

.rg65 {
  row-gap: 65px;
}

.rg70 {
  row-gap: 70px;
}

.rg75 {
  row-gap: 75px;
}

.rg80 {
  row-gap: 80px;
}

.rg85 {
  row-gap: 85px;
}

.rg90 {
  row-gap: 90px;
}

.rg95 {
  row-gap: 95px;
}

.rg100 {
  row-gap: 100px;
}

.cg0 {
  column-gap: 0px;
}

.cg5 {
  column-gap: 5px;
}

.cg10 {
  column-gap: 10px;
}

.cg15 {
  column-gap: 15px;
}

.cg20 {
  column-gap: 20px;
}

.cg25 {
  column-gap: 25px;
}

.cg30 {
  column-gap: 30px;
}

.cg35 {
  column-gap: 35px;
}

.cg40 {
  column-gap: 40px;
}

.cg45 {
  column-gap: 45px;
}

.cg50 {
  column-gap: 50px;
}

.cg55 {
  column-gap: 55px;
}

.cg60 {
  column-gap: 60px;
}

.cg65 {
  column-gap: 65px;
}

.cg70 {
  column-gap: 70px;
}

.cg75 {
  column-gap: 75px;
}

.cg80 {
  column-gap: 80px;
}

.cg85 {
  column-gap: 85px;
}

.cg90 {
  column-gap: 90px;
}

.cg95 {
  column-gap: 95px;
}

.cg100 {
  column-gap: 100px;
}

.c-garamond {
  font-family: "Cormorant Garamond", serif;
}

.eb-garamond {
  font-family: "EB Garamond", serif;
}

.shippori {
  font-family: "Shippori Mincho B1", serif;
}

.google-sans {
  font-family: "Google Sans", sans-serif;
}

.hdg01 {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media screen and (max-width: 600px) {
  .hdg01 {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
  }
}
.hdg01 h3 {
  font-family: "Cormorant Garamond", serif;
  font-weight: 400;
  font-size: 5.6rem;
  white-space: nowrap;
  color: #fff;
  letter-spacing: 0.024em;
}
@media screen and (max-width: 768px) {
  .hdg01 h3 {
    font-size: clamp(3.6rem, 7.2916666667vw, 5.6rem);
  }
}
@media screen and (max-width: 600px) {
  .hdg01 h3 {
    line-height: 1;
  }
}
@media screen and (max-width: 450px) {
  .hdg01 h3 {
    font-size: 8.8888888889vw;
  }
}
.hdg01 p {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 1.7rem;
  font-weight: 700;
  letter-spacing: 0.044em;
  color: #fff;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .hdg01 p {
    font-size: clamp(1.5rem, 2.2135416667vw, 1.7rem);
  }
}
.hdg01 p span {
  display: block;
  width: 100%;
  height: 0.5px;
  background: #fff;
}

/***************************

object/project/effects.scss

***************************/
/*ロード時にフェードイン*/
.fadein {
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*スクロールフェードイン*/
.fadeInTop {
  animation-fill-mode: both;
  animation-duration: 1s;
  animation-name: fadeInTop;
  visibility: visible !important;
}
@keyframes fadeInTop {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInBottom {
  animation-fill-mode: both;
  animation-duration: 1s;
  animation-name: fadeInBottom;
  visibility: visible !important;
}
@keyframes fadeInBottom {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInLeft {
  animation-fill-mode: both;
  animation-duration: 1s;
  animation-name: fadeInLeft;
  visibility: visible !important;
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-30px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRight {
  animation-fill-mode: both;
  animation-duration: 1s;
  animation-name: fadeInRight;
  visibility: visible !important;
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes animove01 {
  0%, 100% {
    rotate: 0deg;
  }
  50% {
    rotate: 25deg;
  }
}
/*////////////////////////

btn

////////////////////////*/
.btn-center {
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 768px) {
  .tab-center {
    margin-left: auto;
    margin-right: auto;
  }
}
/***************************

object/lp.scss

***************************/
.bg-fixed {
  position: fixed;
  width: 100%;
  height: 125lvh;
  overflow: hidden;
  z-index: -3;
}
@media screen and (max-width: 450px) {
  .bg-fixed {
    height: 100lvh;
  }
}
.bg-fixed-image {
  width: 100%;
  aspect-ratio: 1920/2028;
}
@media screen and (max-width: 450px) {
  .bg-fixed-image {
    height: 125vh !important;
    object-fit: cover;
  }
}
.bg-fixed-image.big {
  height: 125vh;
  object-fit: cover;
}
.bg-fixed-blur {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  backdrop-filter: blur(6px);
  opacity: 0;
}

.mv {
  width: 100%;
}

.main-visual {
  width: 100%;
  height: 125vh;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 450px) {
  .main-visual {
    height: 100lvh;
  }
}
@media screen and (min-width: 769px) {
  .main-visual-copy img {
    width: 99.2px;
  }
}

.lp01 {
  position: relative;
  width: 100%;
  padding-top: 60px;
  padding-bottom: 230px;
}
@media screen and (max-width: 768px) {
  .lp01 {
    padding-top: 30px;
    padding-bottom: 29.9479166667vw;
  }
}
.lp01 .ttl {
  width: 100%;
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .lp01 .ttl img {
    width: 537.6px;
  }
}
@media screen and (max-width: 1024px) {
  .lp01 .ttl img {
    width: 52.5390625vw;
  }
}
@media screen and (max-width: 450px) {
  .lp01 .ttl img {
    width: 68.8888888889vw;
  }
}
.lp01 .flag {
  height: 0;
  text-align: right;
}
.lp01 .flag img {
  rotate: 7deg;
  translate: -135px -150px;
  animation: animove01 5s ease-in-out infinite;
  transform-origin: top center;
}
@media screen and (min-width: 1025px) {
  .lp01 .flag img {
    width: 155.2px;
  }
}
@media screen and (max-width: 1024px) {
  .lp01 .flag img {
    translate: -13.18359375vw -14.6484375vw;
    width: 15.15625vw;
  }
}
@media screen and (max-width: 768px) {
  .lp01 .flag img {
    translate: -4.5572916667vw -15.625vw;
  }
}
@media screen and (max-width: 450px) {
  .lp01 .flag img {
    width: 20vw;
    translate: 20px -15.5555555556vw;
  }
}
.lp01 .txt {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 2.3rem;
  color: #fff;
  line-height: 2.4;
  letter-spacing: 0.05em;
  margin: 60px 0;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .lp01 .txt {
    font-size: 2.24609375vw;
  }
}
@media screen and (max-width: 768px) {
  .lp01 .txt {
    margin: 30px 0;
  }
}
@media screen and (max-width: 450px) {
  .lp01 .txt {
    margin-top: 13.3333333333vw;
    font-size: 1.8rem;
  }
}
.lp01 .sub_txt {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-size: 1.6rem;
  color: #fff;
  line-height: 2;
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .lp01 .sub_txt {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 450px) {
  .lp01 .sub_txt {
    font-size: 1.2rem;
  }
}
.lp01 .about-image {
  position: absolute;
  z-index: 3;
}
.lp01 .about-image.--01 {
  top: 0;
  right: 8.3333333333vw;
}
@media screen and (max-width: 1024px) {
  .lp01 .about-image.--01 {
    right: 3.90625vw;
    bottom: 11.71875vw;
    top: inherit;
  }
}
@media screen and (max-width: 768px) {
  .lp01 .about-image.--01 {
    bottom: 15.625vw;
    right: 10px;
  }
}
@media screen and (min-width: 769px) {
  .lp01 .about-image.--01 img {
    width: 164px;
  }
}
@media screen and (max-width: 768px) {
  .lp01 .about-image.--01 img {
    width: 20.01953125vw;
  }
}
.lp01 .about-image.--02 {
  top: 280px;
  right: 6.25vw;
}
@media screen and (max-width: 1024px) {
  .lp01 .about-image.--02 {
    top: inherit;
    right: 22.4609375vw;
    bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .lp01 .about-image.--02 {
    right: 14.3229166667vw;
    bottom: -7.8125vw;
  }
}
@media screen and (min-width: 769px) {
  .lp01 .about-image.--02 img {
    width: 252px;
  }
}
@media screen and (max-width: 768px) {
  .lp01 .about-image.--02 img {
    width: 30.76171875vw;
  }
}
.lp01 .about-image.--03 {
  bottom: 80px;
  left: 9.6354166667vw;
}
@media screen and (max-width: 1024px) {
  .lp01 .about-image.--03 {
    left: 4.296875vw;
  }
}
@media screen and (max-width: 768px) {
  .lp01 .about-image.--03 {
    bottom: 0;
    left: 10px;
  }
}
@media screen and (min-width: 769px) {
  .lp01 .about-image.--03 img {
    width: 252px;
  }
}
@media screen and (max-width: 768px) {
  .lp01 .about-image.--03 img {
    width: 30.76171875vw;
  }
}

.lp02 {
  width: 100%;
  margin-bottom: 260px;
}
@media screen and (max-width: 768px) {
  .lp02 {
    padding-top: 80px;
    margin-bottom: 130px;
  }
}

.lp03 {
  width: 100%;
  margin-bottom: 260px;
}
@media screen and (max-width: 768px) {
  .lp03 {
    margin-bottom: 130px;
  }
}

.schedule-block {
  width: 100%;
}
.schedule-block .area {
  width: 100%;
  min-height: 110px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.044em;
  color: #fff;
  background: #272626;
  border: 0.5px solid #FEDC92;
}
@media screen and (max-width: 768px) {
  .schedule-block .area {
    font-size: clamp(2.4rem, 3.90625vw, 3rem);
  }
}
@media screen and (max-width: 450px) {
  .schedule-block .area {
    min-height: 85px;
    font-size: 5.3333333333vw;
  }
}

.schedule-flow {
  width: 100%;
}
.schedule-flow-block {
  width: 100%;
  display: flex;
}
@media screen and (max-width: 768px) {
  .schedule-flow-block {
    flex-direction: column;
  }
}
.schedule-flow-block:not(:last-child) {
  margin-bottom: 15px;
}
.schedule-flow-block dt {
  position: relative;
  width: 230px;
  padding-left: 30px;
  font-family: "EB Garamond", serif;
  font-weight: 400;
  font-size: 3rem;
  letter-spacing: 0.024em;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .schedule-flow-block dt {
    width: 100%;
    font-size: clamp(2.4rem, 3.90625vw, 3rem);
  }
}
.schedule-flow-block dt:before {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  background: #FEDC92;
  border-radius: 100%;
  left: 0;
  top: calc(0.85em - 10px);
  z-index: 3;
}
.schedule-flow-block dd {
  width: calc(100% - 230px);
  font-size: 2rem;
  letter-spacing: 0.044em;
  line-height: 2.7;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .schedule-flow-block dd {
    width: 100%;
    font-size: clamp(1.7rem, 2.6041666667vw, 2rem);
  }
}

.booking-list {
  width: 100%;
}
.booking-list-block {
  display: flex;
  align-items: flex-start;
  gap: 10px 30px;
}
@media screen and (max-width: 600px) {
  .booking-list-block {
    flex-direction: column;
  }
}
.booking-list-block:not(:last-child) {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .booking-list-block:not(:last-child) {
    margin-bottom: 30px;
  }
}
.booking-list-block dt {
  width: 190px;
  min-height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2rem;
  color: #fff;
  letter-spacing: 0.044em;
  background: rgba(39, 38, 38, 0.75);
  border: 0.5px solid #FEDC92;
}
@media screen and (max-width: 768px) {
  .booking-list-block dt {
    font-size: clamp(1.7rem, 2.6041666667vw, 2rem);
  }
}
@media screen and (max-width: 600px) {
  .booking-list-block dt {
    width: 100%;
    min-height: 50px;
  }
}
.booking-list-block dd {
  width: calc(100% - 120px);
  color: #fff;
  padding-top: 5px;
}
@media screen and (max-width: 600px) {
  .booking-list-block dd {
    width: 100%;
  }
}
.booking-list-block dd p {
  font-size: clamp(1.5rem, 2.2135416667vw, 1.7rem);
  letter-spacing: 0.044em;
}
.booking-list-block dd p.big {
  font-size: clamp(1.8rem, 3.2552083333vw, 2.5rem);
}
.booking-list-block dd p span {
  color: #FEDC92;
  text-decoration: underline;
}

.attention-box {
  width: 100%;
  padding: 65px 55px 80px;
  background: rgba(35, 34, 34, 0.75);
  border: 0.5px solid #FFE7B5;
  color: #fff;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .attention-box {
    padding: 35px 25px 40px;
    margin-bottom: 40px;
  }
}
.attention-box-ttl {
  font-family: "Cormorant Garamond", serif;
  font-weight: 400;
  font-size: clamp(3.6rem, 7.2916666667vw, 5.6rem);
  line-height: 1;
  letter-spacing: 0.024em;
  text-align: center;
}
.attention-box-sub_ttl {
  text-align: center;
  letter-spacing: 0.06em;
}
.attention-box .attention-list {
  width: 100%;
  margin-bottom: 30px;
}
.attention-box .attention-list li {
  position: relative;
  padding-left: 30px;
  letter-spacing: 0.06em;
}
.attention-box .attention-list li:not(:last-child) {
  margin-bottom: 30px;
}
.attention-box .attention-list li:before {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  background: #FEDC92;
  border-radius: 100%;
  z-index: 3;
  left: 0;
  top: calc(0.85em - 10px);
}
.attention-box .attention-list li span {
  color: #FEDC92;
  text-decoration: underline;
}
.attention-box .cancel-fee {
  width: 100%;
  background: rgba(70, 70, 70, 0.75);
  border-radius: 5px;
  padding: 25px 35px;
}
@media screen and (max-width: 768px) {
  .attention-box .cancel-fee {
    padding: 15px 25px;
  }
}
.attention-box .cancel-fee p {
  font-weight: 400;
  letter-spacing: 0.06em;
}

.btn-la {
  max-width: 900px;
  width: 95%;
  min-height: 140px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 3.2rem;
  background: #E94623;
  color: #fff;
  text-align: center;
  border: 1px solid #FEDC92;
  padding: 10px 20px;
  border-radius: 100px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .btn-la {
    min-height: 100px;
    font-size: clamp(2rem, 3.6458333333vw, 2.8rem);
  }
}
@media screen and (max-width: 450px) {
  .btn-la {
    min-height: auto;
    padding: 15px 20px;
  }
}
.btn-la:hover {
  color: #fff;
}
.btn-la span {
  display: block;
  width: 30px;
  height: 30px;
  background: url("../img/lp/btn-la.png") no-repeat center center;
  background-size: cover;
}
.btn-la.--coming, .btn-la.--end {
  color: #E94623;
  background: #fff;
  border-color: #E94623;
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .btn-la.--coming br {
    display: none;
  }
}/*# sourceMappingURL=style.css.map */