@charset "UTF-8";
.footer {
  background-color: #000;
  position: relative;
  z-index: 998;
}

.footer_inner, .footer_inner--top {
  width: 100%;
  min-height: 100vh;
  min-height: 100dvh;
}
.footer_inner--top {
  padding-top: 156px;
}

.footer .feelmenu_wrapper{
  overflow: visible;
  min-height: calc(100vh - 110px);
}

@media screen and (max-width: 1024px) {
  .footer_inner, .footer_inner--top {
    height: auto;
    min-height: 100vh;
    min-height: 100dvh;
    padding-top: 7.5%;
    padding-bottom: 20vw;
  }
  .footer_inner--top {
    padding-top: 129px;
  }
  .footer .feelmenu_wrapper{
    min-height: auto;
  }
}


.menu {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
  color: #fff;
  position: relative;
}

.menu_logo {
  margin: 0 0 40px 0;
  width: 314px;
  max-width: 100%;
}
.menu_logo a{
  display: block;
}

@media screen and (max-width: 1024px) {
  .menu_logo {
    width: 200px;
  }
}

.menu_logo img {
  width: 100%;
  display: block;
}

.menu_inner {
  margin: 60px auto 0;
  width: 100%;
  max-width: 1000px;
}

@media screen and (max-width: 1024px) {
  .menu_inner {
    margin: 0 auto;
    max-width: 100%;
  }
}

.menu_title {
  flex-shrink: 0;
  display: block;
  margin-bottom: 0.5em;
  font-size: 28px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
  position: relative;
  color: #787884;
}

@media screen and (min-width: 1025px) {
  .menu_title {
    font-size: 28px;
  }
}

@media screen and (max-width: 1024px) {
  .menu_title {
    font-size: 28px;
  }
}

.menu_title span {
  margin-right: 0.5em;
  font-size: 20px;
  font-weight: 300;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 1025px) {
  .menu_title span {
    display: block;
    font-size: 20px;
    position: absolute;
    top: -25px;
    left: 0;
  }
}

@media screen and (max-width: 1024px) {
  .menu_title span {
    display: inline-block;
    font-size: 20px;
  }
}

.menu_title b {
  font-weight: 700;
}

@media screen and (max-width: 1024px) {
  .menu_title b {
    display: block;
  }
}

.menu_list {
  width: 100%;
  position: relative;
}

@media screen and (min-width: 1025px) {
  .menu_list {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1000px;
  }
}

@media screen and (max-width: 1024px) {
  .menu_list > li + li {
    margin-top: 30px;
  }
}

@media (hover: hover) {
  .menu_list a {
    transition: opacity 0.5s ease;
  }
  .menu_list a:hover {
    opacity: 0.5;
  }
}

@media screen and (min-width: 1025px) {
  .menu_listInner {
    padding: 25px 0 0;
  }
}

.menu_anchor {
  flex-grow: 1;
}

@media screen and (max-width: 1024px) {
  .menu_anchor {
    margin-top: 10px;
  }
}

.menu_anchorList {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  gap: max(0.595vw, 10px);
  width: 100%;
}

@media screen and (min-width: 1025px) {
  .menu_anchorList {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}

.menu_anchorList > li {
  /* font-size: 20px; */
  font-size: 18px;
  font-weight: 300;
  /* line-height: 1.5; */
  line-height: 1.1;
  letter-spacing: 0.08em;
  overflow-wrap: anywhere;
  width: 100%;
}

@media screen and (max-width: 1024px) {
  .menu_anchorList > li {
    font-size: 15px;
    width: auto;
  }
}

.menu_footer {
  flex-shrink: 0;
  width: 100%;
}

@media screen and (max-width: 1024px) {
  .menu_footer {
    margin-top: 20px;
  }
}

.menu_footerInner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0 0 48px;
}

@media screen and (max-width: 1024px) {
  .menu_footerInner {
    padding: 0 0 24px;
  }
}

.menu_footerList {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
  padding: 48px 0 64px;
  gap: min(2.38vw ,40px) min(2.38vw ,40px);
}

@media screen and (max-width: 1024px) {
  .menu_footerList {
    padding: 20px 0;
    gap: 10px;
    gap: max(0.595vw, 10px);
  }
}

.menu_footerList > li {
  width: 320px;
  width: min(19.05vw, 320px);
  min-width: 200px;
}

@media (max-width: 767px) {
  .menu_footerList > li {
    min-width: 48%;
  }
}

.menu_footerSitemap {
  padding: 24px 0;
}

.fixedmenu {
  width: 100%;
  position: fixed;
  left: 0;
  bottom: 0;
  pointer-events: none;
  z-index: 999;
}

.fixedmenu_inner {
  padding: 48px 48px;
}

@media screen and (max-width: 1024px) {
  .fixedmenu_inner {
    padding: 24px 30px;
  }
}

.fixedmenu_nav {
  pointer-events: none;
}

.fixedmenu_navList, .fixedmenu_navList--end {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 24px;
}

@media screen and (max-width: 1024px) {
  .fixedmenu_navList, .fixedmenu_navList--end {
    gap: 0 12px;
  }
}

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

.fixedmenu_navList > li, .fixedmenu_navList--end > li {
  background: rgba(255, 255, 255, 0.5);
  border-radius: 9999px;
  pointer-events: auto;
}

.fixedmenu_btn {
  display: block;
  color: #fff;
}

.fixedmenu_btnInner, .fixedmenu_btnInner--feel {
  display: flex;
  align-items: center;
  padding: 12px 12px;
  width: 64px;
  height: 64px;
  transition: width 0.5s ease;
}

.fixedmenu_btn:hover .fixedmenu_btnInner, .fixedmenu_btn:hover .fixedmenu_btnInner--feel,
.fixedmenu_btn.is-active .fixedmenu_btnInner,
.fixedmenu_btn.is-active .fixedmenu_btnInner--feel {
  width: 160px;
}

.fixedmenu_btnInner--feel {
  padding: 0;
  width: 64px;
  height: 64px;
}
@media screen and (max-width: 1024px) {
  .fixedmenu_btnInner--feel {
    width: auto;
    height: auto;
  }
}

.fixedmenu_btn:hover .fixedmenu_btnInner--feel,
.fixedmenu_btn.is-active .fixedmenu_btnInner--feel {
  width: inherit;
}

.fixedmenu_btnIcon {
  flex-shrink: 0;
  display: inline-block;
  width: 40px;
  height: 40px;
  position: relative;
}
.fixedmenu_btnInner--feel .fixedmenu_btnIcon{
  width: 100%;
  height: 100%;
}

.fixedmenu_btnIcon img {
  width: 100%;
  height: 100%;
}

.fixedmenu_btnIcon.is-notify::after {
  display: block;
  content: "";
  width: 10px;
  height: 10px;
  background: #E03939;
  border-radius: 50%;
  position: absolute;
  top: -1px;
  right: -1px;
}

.fixedmenu_btnTitle {
  padding: 0 12px;
  width: 100%;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.08em;
  white-space: nowrap;
  pointer-events: none;
  transition: visibility 0.5s ease, opacity 0.5s ease;
  visibility: hidden;
  opacity: 0;
}

@media screen and (max-width: 1024px) {
  .fixedmenu_btnTitle {
    padding: 0 0 0 12px;
  }
}

.fixedmenu_btn:hover .fixedmenu_btnTitle,
.fixedmenu_btn.is-active .fixedmenu_btnTitle {
  visibility: visible !important;
  opacity: 1 !important;
}

.fixedmenu_navMypage {
  position: absolute;
  top: 50%;
  right: 27.5px;
  transform: translateY(-50%);
}

.fixedmenu_navFeelmenu {
  position: fixed;
  top: 46px;
  left: 40px;
  pointer-events: auto;
}

@media screen and (max-width: 1024px) {
  .fixedmenu_navFeelmenu {
    top: 24px;
    right: 0;
    left: 0;
    margin: auto;
    bottom: auto;
    width: 40px;
  }
}

.feelmenu {
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  background: #050505;
  color: #fff;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.8s ease, visibility 0.8s ease;
}

.feelmenu.is-hidden {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.feelmenu_wrapper {
  height: 100%;
  overflow-y: scroll;
  overscroll-behavior: contain;
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 1025px) {
  .feelmenu_wrapper {
    justify-content: center;
  }
}
.feelmenu_header{
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  padding: 24px 24px 0;
  width: 100%;
}
.feelmenu_header a img{
  display: block;
  height: 100%;
}
.feelmenu_header a.center{
  display: block;
  height: 70px;
}
.feelmenu_header a.left{
  display: none;
}
@media screen and (min-width: 1025px) {
  .feelmenu_header{
    padding: calc(32px + 14.5px) 40px 0;
  }
  .feelmenu_header a.center{
    display: none;
  }
  .feelmenu_header a.left{
    display: block;
    width: auto;
    height: 64px;
    margin-right: auto;
  }
}

.feelmenu_inner {
  flex-grow: 1;
  display: flex;
  align-items: center;
  padding: min(3.81vw,64px) 7.5% 0 7.5%;
  width: 100%;
  height: 30vw;
}

@media screen and (max-width: 1024px) {
  .feelmenu_inner {
    padding: 24px 7.5% 0 7.5%;
    flex-direction: column;
    align-items: flex-start;
    height: auto;
  }
}

.feelmenu_title {
  flex-shrink: 0;
  display: block;
  font-size: 28px;
  font-weight: 500;
  line-height: 1;
  position: relative;
  color: #787884;
}

@media screen and (min-width: 1025px) {
  .feelmenu_title {
    font-size: min(4.441vw, 74px);
  }
}

.feelmenu_title span {
  margin-right: 1em;
  font-size: 12px;
  font-weight: 300;
}

@media screen and (min-width: 1025px) {
  .feelmenu_title span {
    font-size: min(1.43vw, 24px);
    position: absolute;
    top: max(-2.08vw, -35px);
    left: 0;
  }
}

@media screen and (min-width: 1025px) {
  .feelmenu_border {
    aspect-ratio: 120 / 592;
    height: 100%;
    max-height: 592px;
  }
  .feelmenu_border img, .feelmenu_border svg {
    width: auto;
    height: 100%;
  }
}

@media screen and (max-width: 1024px) {
  .feelmenu_border {
    aspect-ratio: 592 / 120;
    margin-top: max(-10vw, -40px);
    width: 100%;
  }
}

.feelmenu_list {
  padding: 0px min(2.38vw ,40px);
  width: 100%;
  position: relative;
}

@media screen and (max-width: 1024px) {
  .feelmenu_list > li + li {
    margin-top: 20px;
  }
}

@media (hover: hover) {
  .feelmenu_list a {
    transition: opacity 0.5s ease;
  }
  .feelmenu_list a:hover {
    opacity: 0.5;
  }
}

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

@media screen and (min-width: 1025px) {
  .feelmenu_listInner {
    padding: min(2.08vw, 35px) 0;
  }
}

@media screen and (max-width: 1024px) {
  .feelmenu_listInner {
    flex-direction: column;
    align-items: flex-start;
  }
}

.feelmenu_listInner > :first-child {
  margin-right: max(1.19vw, 20px);
  width: min(20.48vw, 344px);
}

.feelmenu_anchor {
  flex-grow: 1;
}

@media screen and (max-width: 1024px) {
  .feelmenu_anchor {
    margin-top: 10px;
  }
}

.feelmenu_anchorList {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  gap: max(0.595vw, 10px);
  width: 100%;
}

.feelmenu_anchorList > li {
  font-size: 15px;
  font-weight: 300;
  line-height: 1.1;
  letter-spacing: 0.08em;
  overflow-wrap: anywhere;
  width: auto;
}

@media screen and (min-width: 1025px) {
  .feelmenu_anchorList {
    gap: 20px;
  }
  .feelmenu_anchorList > li {
    font-size: min(1.19vw, 40px);
  }
}

.feelmenu_footer {
  flex-shrink: 0;
  width: 100%;
}

@media screen and (max-width: 1024px) {
  .feelmenu_footer {
    margin-top: 20px;
  }
}

.feelmenu_footerInner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0 7.5% ;
}

@media screen and (max-width: 1024px) {
  .feelmenu_footerInner {
    padding: 0 7.5%;
  }
}

.feelmenu_footerList {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  padding: min(3.81vw, 64px) 0;
  width: 100%;
}

@media screen and (max-width: 1024px) {
  .feelmenu_footerList {
    padding: 20px 0 30px;
    gap: 10px;
    gap: max(0.595vw, 10px);
  }
}

.feelmenu_footerList > li {
  width: min(19.05vw, 320px);
  min-width: 200px;
}

@media (max-width: 767px) {
  .feelmenu_footerList > li {
    min-width: 48%;
  }
}

.feelmenu_close {
  pointer-events: auto;
  line-height: 0;
  position: fixed;
  top: 44px;
  right: 44px;
}

@media screen and (max-width: 1024px) {
  .feelmenu_close {
    position: relative;
    top: auto;
    right: auto;
    margin-right: auto;
    margin-bottom: 24px;
  }
}

.feelmenu_closeBtn {
  padding: 6px 6px;
  width: 60px;
  height: 60px;
}

@media screen and (max-width: 1024px) {
  .feelmenu_closeBtn {
    padding: 12px 12px;
    width: 48px;
    height: 48px;
    background: rgba(255, 255, 255, 0.25);
    border-radius: 50%;
  }
}

.feelmenu_closeBtn img {
  width: 100%;
}

.sitemap_list {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  row-gap: 1em;
}

@media screen and (max-width: 1024px) {
  .sitemap_list {
    flex-direction: column;
    align-items: center;
    flex-wrap: nowrap;
    row-gap: 1.4285em;
  }
}

.sitemap_list > li {
  font-size: 14px;
}

@media screen and (min-width: 1025px) {
  .sitemap_list > li:not(:last-of-type)::after {
    display: inline-block;
    content: "/";
  }
}

@media screen and (max-width: 1024px) {
  .sitemap_list > li {
    font-size: 14px;
  }
}

.sitemap_list > li > a {
  display: inline-block;
  padding: 0 1em;
}

.copyright {
  font-size: 12px;
  font-weight: 300;
}

.trial {
  display: block;
  width: 320px;
  height: 64px;
  position: fixed;
  right: -200px;
  bottom: 48px;
  z-index: 999;
  transition: right 0.5s ease;
}

@media screen and (max-width: 1024px) {
  .trial {
    width: 241px;
    right: -141px;
    bottom: 24px;
  }
}

.trial.is-active, .trial:hover {
  right: 0;
  z-index: 10000;
}

@media screen and (max-width: 1024px) {
  .trial.is-active, .trial:hover {
    right: 0;
  }
}

.trial_inner {
  display: flex;
  align-items: center;
  padding: 0 40px 0 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0);
  border-radius: 9999px 0 0 9999px;
  transition: background 0.5s ease;
}

.trial.is-active .trial_inner,
.trial:hover .trial_inner {
  background: rgba(255, 255, 255, 0.8);
}

.trial_icon {
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 64px;
  height: 64px;
  background: #000;
  color: #fff;
  border-radius: 9999px;
  user-select: none;
  -webkit-user-select: none;
  transition: background 0.5s ease;
}

.trial_icon path {
  fill: #fff;
  transition: fill 0.5s ease;
}

.trial.is-active .trial_icon,
.trial:hover .trial_icon {
  background: transparent;
  color: #000;
}

.trial.is-active .trial_icon path,
.trial:hover .trial_icon path {
  fill: #000;
}

.trial_iconImage {
  margin-bottom: 3px;
  width: 36px;
  height: 36px;
}

.trial_iconImage img, .trial_iconImage svg {
  width: 100%;
  height: 100%;
}

.trial_iconText {
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  transition: color 0.5s ease;
}

@media screen and (max-width: 1024px) {
  .trial_iconText {
    font-size: min(3.05344vw, 12px);
  }
}

.trial.is-active .trial_iconText,
.trial:hover .trial_iconText {
  color: #000;
}

.trial_title {
  color: #000;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-align: center;
  user-select: none;
  -webkit-user-select: none;
}

@media screen and (max-width: 1024px) {
  .trial_title {
    font-size: min(3.30789vw, 11px);
  }
}

.trial_title em {
  font-size: 30px;
}

@media screen and (max-width: 1024px) {
  .trial_title em {
    font-size: min(5.5vw, 20px);
  }
}

.trial:not(.is-active) .trial_title {
  display: none;
}

.trial:hover .trial_title {
  display: block !important;
}

.trialmenu {
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10001;
  color: #fff;
  display: none;
}

.trialmenu_wrapper {
  width: 90%;
  height: 90%;
  overflow-y: auto;
  overscroll-behavior: contain;
  background: rgba(5, 5, 5, 0.9);
  color: #fff;
}

@media screen and (min-width: 1025px) {
  .trialmenu_wrapper {
    border-radius: 20px;
    position: absolute;
    inset: 0;
    margin: auto;
  }
}

@media screen and (max-width: 1024px) {
  .trialmenu_wrapper {
    width: 100%;
    height: 100%;
  }
}

.trialmenu_inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 90px 90px;
  width: 100%;
  min-height: 100%;
}

@media screen and (max-width: 1024px) {
  .trialmenu_inner {
    padding: 60px 30px 120px;
  }
}

.trialmenu_title {
  margin-bottom: 72px;
  text-align: center;
}

@media screen and (max-width: 1024px) {
  .trialmenu_title {
    margin-bottom: 40px;
  }
}

.trialmenu_titleHead {
  font-size: 56px;
  font-weight: 300;
  line-height: 1.5;
  padding-left: 0.05em;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 1024px) {
  .trialmenu_titleHead {
    font-size: 28px;
  }
}

.trialmenu_titleDesc {
  font-size: 24px;
  font-weight: 300;
  line-height: 1.2;
  padding-left: 0.04em;
  letter-spacing: 0.04em;
}

@media screen and (max-width: 1024px) {
  .trialmenu_titleDesc {
    font-size: 16px;
  }
}

.trialmenu_list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: min(4.76vw, 440px);
}

.trialmenu_list > li {
  width: min(26.2vw, 440px);
}

.trialmenu_list + p{
  text-align: center;
  font-size: 16px;
  margin-top: 1em;
}
.trialmenu_list + p a{
  text-decoration: underline;
}

@media screen and (max-width: 1024px) {
  .trialmenu_list > li {
    width: 100%;
    max-width: 220px;
  }
  .trialmenu_list + p{
    font-size: 12px;
  }
}

@media (hover: hover) {
  .trialmenu_list > li a {
    transition: opacity 0.5s ease;
  }
  .trialmenu_list > li a:hover {
    opacity: 0.5;
  }
}

.trialmenu_close {
  width: 64px;
  height: 64px;
  line-height: 0;
  position: absolute;
  bottom: calc(5vh + 26px);
  right: calc(5vw + 26px);
}

@media screen and (max-width: 1024px) {
  .trialmenu_close {
    right: 5vw;
  }
}

.trialmenu_close img {
  width: 100%;
}