html {
  font-size: calc(10vw / 3.75) !important;
  -webkit-font-smoothing: antialiased; }

body {
  color: #1E1E1E;
  font-family: "Poppins", sans-serif;
  font-size: 1.5rem;
  line-height: 1.8;
  background-color: #FFFFFF;
  -webkit-text-size-adjust: 100%;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

body.lock,
body.loading {
  overflow: hidden;
  width: 100vw;
  height: 100vh; }

@media screen and (min-width: 769px) {
  html {
    font-size: 8px !important; }

  body {
    font-size: 1.6rem;
    line-height: 1; } }
@media screen and (min-width: 1050px) {
  html {
    font-size: 9px !important; } }
@media screen and (min-width: 1150px) {
  html {
    font-size: 10px !important; } }
* {
  -webkit-tap-highlight-color: transparent; }

a {
  color: inherit;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

p, dt, dd, li {
  word-break: break-word;
  word-wrap: normal; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: top; }

.title img {
  width: 100%; }

label {
  cursor: pointer; }

label > * {
  cursor: pointer; }

figure img {
  width: 100%;
  height: auto; }

picture img {
  width: 100%;
  height: auto; }

svg {
  width: 100%;
  height: auto; }

::placeholder {
  font-weight: 500; }

.ib {
  display: inline-block;
  line-height: inherit;
  font-weight: inherit; }

.ja {
  font-family: "Zen Kaku Gothic New", sans-serif; }

.txtBold {
  font-weight: 700; }

.sub {
  font-size: 0.7em;
  vertical-align: sub; }

.accordionTrigger {
  cursor: pointer;
  display: block; }

.accordionContent {
  display: none; }

input[type="submit"] {
  cursor: pointer; }

@media screen and (min-width: 769px) {
  /* mover */
  .mover {
    transition: opacity 0.2s ease-out;
    backface-visibility: hidden;
    zoom: 1; }
    .mover:hover {
      opacity: 0.7; }

  .moverContent > * {
    transition: all 0.2s ease-out;
    backface-visibility: hidden;
    zoom: 1; }
  .moverContent:hover > * {
    opacity: 0.7; } }
.modePC,
.modePCib {
  display: none; }
  .modePC.important,
  .modePCib.important {
    display: none !important; }

.modeSP {
  display: block; }
  .modeSP.important {
    display: block !important; }

@media screen and (min-width: 769px) {
  .modePC {
    display: block; }
    .modePC.important {
      display: block !important; }

  .modePCib {
    display: inline-block; }
    .modePCib.important {
      display: inline-block !important; }

  .modeSP {
    display: none; }
    .modeSP.important {
      display: none !important; } }
@keyframes bganime {
  0% {
    background-position: 0% center; }
  50% {
    background-position: -50% center; }
  100% {
    background-position: -100% center; } }
.wrapper {
  overflow: hidden;
  opacity: 0;
  position: relative;
  transition: opacity 0.3s; }
  .load_complete .wrapper {
    opacity: 1; }

.scrollPosition {
  position: absolute;
  margin: calc(-80 / 375 * 100vw) 0 0 0;
  padding: calc(80 / 375 * 100vw) 0 0 0; }

.contentInner {
  width: calc(335 / 375 * 100%);
  margin: auto; }

.fadeContent {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.4s ease-out; }

.fadeContent.current {
  opacity: 1;
  transform: translateY(0); }

@media screen and (min-width: 769px) {
  .scrollPosition {
    margin: -90px 0 0 0;
    padding: 90px 0 0 0; }

  .contentInner {
    width: 100%;
    max-width: 1080px;
    padding: 0 20px;
    box-sizing: border-box; } }
#header {
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 200;
  height: 0; }
  #header .content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0; }
  #header .contentInner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  #header .logoArea {
    flex-basis: calc(159 / 375 * 100%);
    position: relative;
    z-index: 1010;
    margin: 0 0 calc(3 / 375 * 100%) calc(20 / 375 * 100%); }
  .load_complete #header {
    opacity: 1;
    transition: all 0.4s ease-out 3s; }

#globalNav .bg {
  display: none; }
#globalNav .menuButton .button {
  cursor: pointer;
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1000;
  width: calc(48 / 375 * 100vw);
  background-color: rgba(255, 255, 255, 0.8);
  margin: calc(16 / 375 * 100%) calc(16 / 375 * 100%) 0 0;
  border-radius: 50%;
  box-sizing: border-box;
  aspect-ratio: 48 / 48;
  backdrop-filter: blur(5px) brightness(100%);
  -webkit-backdrop-filter: blur(5px) brightness(100%);
  filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.2)); }
  #globalNav .menuButton .button .wrap {
    display: flex;
    align-items: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: calc(16 / 48 * 100%);
    height: 0;
    padding: calc(16 / 48 * 100%) 0 0 0;
    margin: auto; }
    #globalNav .menuButton .button .wrap span {
      position: absolute;
      left: 0;
      right: 0;
      width: 100%;
      height: 2px;
      background-color: #1E1E1E;
      margin: auto;
      transition: all 0.2s; }
      #globalNav .menuButton .button .wrap span:nth-of-type(1) {
        top: 0; }
      #globalNav .menuButton .button .wrap span:nth-of-type(2) {
        top: calc(50% - 1px); }
      #globalNav .menuButton .button .wrap span:nth-of-type(3) {
        bottom: 0; }
#globalNav .menu {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  height: 100vh;
  max-height: 100vh;
  background-color: #FFFFFF !important; }
  #globalNav .menu .menuInner {
    overflow: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100vw;
    color: #FFFFFF;
    background-color: #767676;
    padding: calc(100 / 375 * 100%) 0;
    -webkit-overflow-scrolling: touch;
    box-sizing: border-box; }
  #globalNav .menu .list {
    width: calc(277 / 375 * 100%);
    text-align: center;
    margin: auto;
    padding: calc(30 / 375 * 100%) 0 0 0; }
    #globalNav .menu .list .item {
      font-size: 2rem;
      line-height: 1;
      letter-spacing: 0.18rem; }
      #globalNav .menu .list .item a {
        display: block;
        padding: 1.5rem 0; }
    #globalNav .menu .list .buttonWrap {
      padding: calc(30 / 277 * 100%) 0 0 0; }
      #globalNav .menu .list .buttonWrap .button {
        font-size: 2.4rem;
        line-height: 1;
        font-weight: 700;
        letter-spacing: 0.25rem;
        padding: 2px; }
        #globalNav .menu .list .buttonWrap .button .inner {
          padding: 0 0 0 1rem;
          box-sizing: border-box; }
          #globalNav .menu .list .buttonWrap .button .inner .icon {
            position: static;
            margin: 0 1rem 0 1rem; }
#globalNav.open .menuButton .button .wrap span:nth-of-type(1) {
  bottom: 0;
  transform: translateY(50%) translateY(-1px) rotate(-45deg); }
#globalNav.open .menuButton .button .wrap span:nth-of-type(2) {
  opacity: 0;
  left: 0; }
#globalNav.open .menuButton .button .wrap span:nth-of-type(3) {
  top: 0;
  left: 0;
  transform: translateY(-50%) translateY(1px) rotate(45deg); }
#globalNav.open .menu {
  left: 0; }
  #globalNav.open .menu .menuBg {
    left: 0; }

@media screen and (min-width: 769px) {
  #header {
    top: 20px;
    padding: 70px 0 0 0;
    filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.2)); }
    #header .content {
      height: 100%;
      padding: 0;
      transform: translateY(0); }
    #header .contentInner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      position: static;
      max-width: calc(1380 / 1440 * 100%);
      height: 100%;
      background: rgba(255, 255, 255, 0.8);
      margin: auto;
      backdrop-filter: blur(5px);
      border-radius: 35px;
      padding: 0; }
    #header .logoArea {
      flex-basis: 57px;
      margin: 0 0 0 calc(40 / 1380 * 100%); }
      #header .logoArea .logo .path1 {
        fill: #1E1E1E; }
    #header .logoArea2 {
      flex-basis: 87px;
      margin: 0 calc(40 / 1380 * 100%) 0 0; }
      #header .logoArea2 .logo .path1 {
        fill: #1E1E1E; }

  #globalNav .menuButton {
    display: none; }
  #globalNav .menu {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    position: relative;
    height: auto;
    background-color: transparent !important;
    padding: 0;
    aspect-ratio: auto; }
    #globalNav .menu .menuBg {
      display: none; }
    #globalNav .menu .menuInner {
      overflow: hidden;
      position: static;
      width: auto;
      max-width: 100%;
      color: #1E1E1E;
      background-color: transparent !important;
      margin: 0;
      padding: 0; }
    #globalNav .menu .list {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 2rem;
      padding: 0 0 0 3rem; }
      #globalNav .menu .list .item {
        flex-shrink: 0;
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0.12rem; }
        #globalNav .menu .list .item a {
          padding: 0.5rem 0; }
      #globalNav .menu .list .buttonWrap {
        flex-shrink: 0;
        padding: 0; }
        #globalNav .menu .list .buttonWrap .button {
          height: 3.7rem;
          font-size: 1.4rem;
          line-height: 1;
          letter-spacing: 0.1rem;
          padding: 0;
          border-radius: 1.9rem; }
          #globalNav .menu .list .buttonWrap .button:after {
            background: linear-gradient(90deg, #8A8A8A 0%, #8A8A8A 30%, transparent 30%, transparent 50%, #8A8A8A 50%, #8A8A8A 80%, transparent 80%, transparent 100%);
            background-size: 200% 200%;
            padding: 0.8px; }
          #globalNav .menu .list .buttonWrap .button .inner {
            color: #1E1E1E;
            background-color: transparent;
            padding: 0 0.8rem 0 1.5rem;
            border-radius: 1.9rem; }
            #globalNav .menu .list .buttonWrap .button .inner .icon {
              background: url(../img/icon_blank_black.svg) center center no-repeat;
              background-size: contain;
              margin: 0 0 0 1rem; }
          #globalNav .menu .list .buttonWrap .button:hover:after {
            background: #8A8A8A; }
  .open #globalNav .menu {
    height: auto; } }
#footer .text {
  font-size: 4rem;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.2rem;
  text-align: center;
  padding: calc(39 / 375 * 100%) 0 calc(7 / 375 * 100%) 0; }
#footer .wrap {
  margin: 0 0 calc(10 / 335 * 100%) 0; }
  #footer .wrap .block {
    text-align: center;
    padding: calc(30 / 335 * 100%) 0; }
    #footer .wrap .block.block2 {
      border-top: 1px solid #1E1E1E; }
      #footer .wrap .block.block2 .logo {
        width: calc(140 / 335 * 100%); }
        #footer .wrap .block.block2 .logo .path1 {
          fill: #1A274D; }
      #footer .wrap .block.block2 .sns .head {
        color: #1E1E1E; }
    #footer .wrap .block .logo {
      width: calc(91 / 335 * 100%);
      margin: 0 auto calc(25 / 335 * 100%) auto; }
      #footer .wrap .block .logo .path1 {
        fill: #DA0B17; }
    #footer .wrap .block .sns .head {
      color: #DA0B17;
      font-size: 1.4rem;
      line-height: 1;
      font-weight: 600;
      margin: 0 0 calc(12 / 335 * 100%) 0; }
    #footer .wrap .block .sns .cont .list {
      display: flex;
      justify-content: center;
      gap: calc(30 / 335 * 100%); }
      #footer .wrap .block .sns .cont .list .item {
        flex-basis: calc(30 / 335 * 100%); }
#footer .linkWrap {
  display: flex;
  flex-wrap: wrap; }
  #footer .linkWrap .copyright {
    order: 2;
    flex-basis: 100%;
    text-align: center;
    padding: calc(38 / 375 * 100%) 0 calc(20 / 375 * 100%) 0; }
    #footer .linkWrap .copyright small {
      display: block;
      font-size: 1rem;
      line-height: 1;
      letter-spacing: 0.12rem; }
  #footer .linkWrap .link {
    order: 1;
    flex-basis: 100%; }
    #footer .linkWrap .link .list {
      border-top: 1px solid #D9D9D9; }
      #footer .linkWrap .link .list .item {
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0.12rem;
        text-align: center;
        border-bottom: 1px solid #D9D9D9; }
        #footer .linkWrap .link .list .item a {
          display: block;
          padding: calc(26 / 375 * 100%) 0 calc(25 / 375 * 100%) 0; }

@media screen and (min-width: 769px) {
  #footer .contentInner {
    max-width: 1400px; }
  #footer .text {
    font-size: 7.3vw;
    line-height: 1;
    letter-spacing: -0.4rem;
    padding: 3.9rem 0 6rem 0; }
  #footer .wrap {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 679px;
    margin: 0 auto calc(30 / 1360 * 100%) auto;
    padding: 0 0 0 calc(75 / 1360 * 100%); }
    #footer .wrap .block {
      flex-basis: calc(200 / 679 * 100%);
      padding: 0; }
      #footer .wrap .block.block2 {
        flex-basis: calc(278 / 679 * 100%);
        position: relative;
        border-top: 0; }
        #footer .wrap .block.block2:before {
          content: "";
          display: block;
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          margin: 0 0 0 calc(-100 / 278 * 100%);
          border-left: 1px solid #1E1E1E; }
        #footer .wrap .block.block2 .logo {
          width: calc(175 / 278 * 100%);
          margin: 0 auto 4.4rem auto;
          padding: 3.1rem 0 0 0; }
        #footer .wrap .block.block2 .sns .head {
          color: #1E1E1E; }
        #footer .wrap .block.block2 .sns .cont .list {
          gap: calc(100% / 7); }
          #footer .wrap .block.block2 .sns .cont .list .item {
            flex-basis: calc(100% / 7); }
      #footer .wrap .block .logo {
        width: calc(113 / 200 * 100%);
        margin: 0 auto 4.2rem auto;
        padding: 2.8rem 0 0 0; }
      #footer .wrap .block .sns {
        padding: 0 0 3rem 0; }
        #footer .wrap .block .sns .head {
          font-size: 2rem;
          line-height: 1.4;
          margin: 0 0 2.1rem 0; }
        #footer .wrap .block .sns .cont .list {
          gap: calc(100% / 5); }
          #footer .wrap .block .sns .cont .list .item {
            flex-basis: calc(100% / 5); }
  #footer .linkWrap {
    display: flex;
    flex-wrap: wrap; }
    #footer .linkWrap .copyright {
      order: 1;
      text-align: right;
      padding: 1rem 0; }
      #footer .linkWrap .copyright small {
        font-size: 1.2rem;
        line-height: 1;
        letter-spacing: 0.12rem; }
    #footer .linkWrap .link {
      order: 2; }
      #footer .linkWrap .link .list {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 2rem 0; }
        #footer .linkWrap .link .list .item {
          font-size: 1.4rem;
          line-height: 1.43;
          letter-spacing: 0.12rem;
          border-bottom: 0;
          border-left: 1px solid #D9D9D9; }
          #footer .linkWrap .link .list .item:first-child {
            border-left: 0; }
          #footer .linkWrap .link .list .item a {
            padding: 0 2.3rem; } }
.buttonType01 {
  display: block;
  position: relative;
  height: 7.6rem;
  font-size: 3.6rem;
  line-height: 1;
  font-weight: 600;
  padding: 3px;
  border-radius: 3.8rem;
  box-sizing: border-box; }
  .buttonType01:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(90deg, rgba(255, 0, 0, 0.3) 0%, rgba(255, 0, 0, 0.3) 50%, rgba(41, 85, 198, 0.3) 50%, rgba(41, 85, 198, 0.3) 100%);
    filter: blur(15px); }
  .buttonType01:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(90deg, #FF0000 0%, #FF0000 25%, #2955C6 25%, #2955C6 50%, #FF0000 50%, #FF0000 75%, #2955C6 75%, #2955C6 100%);
    background-size: 200% 200%;
    padding: 3px;
    border-radius: 3.8rem;
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    animation: bganime 1.5s linear infinite; }
  .buttonType01 .inner {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 3;
    width: 100%;
    height: 100%;
    background-color: #FFFFFF;
    border-radius: 3.8rem; }
  .buttonType01.blank .icon {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1.8rem;
    z-index: 10;
    width: 1.8rem;
    height: 1.8rem;
    background: url(../img/icon_blank_black.svg) center center no-repeat;
    background-size: contain;
    margin: auto; }
  .buttonType01.mono:before {
    display: none; }
  .buttonType01.mono:after {
    background: linear-gradient(90deg, #FFFFFF 0%, #FFFFFF 30%, transparent 30%, transparent 50%, #FFFFFF 50%, #FFFFFF 80%, transparent 80%, transparent 100%);
    background-size: 200% 200%;
    animation: bganime 1.5s linear infinite; }
  .buttonType01.mono .inner {
    color: #FFFFFF;
    background-color: #767676; }
  .buttonType01.mono.blank .icon {
    background: url(../img/icon_blank.svg) center center no-repeat;
    background-size: contain; }
  .buttonType01.mono:hover:after {
    background: #FFFFFF; }
  .buttonType01.black {
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.5); }
    .buttonType01.black .inner {
      color: #FFFFFF;
      background-color: rgba(0, 0, 0, 0.5); }
    .buttonType01.black.blank .icon {
      background: url(../img/icon_blank.svg) center center no-repeat;
      background-size: contain; }
  .buttonType01:hover {
    opacity: 1; }
    .buttonType01:hover:after {
      background: #FF0000;
      animation-play-state: paused; }

.splitText {
  overflow: hidden; }
  .splitText span {
    opacity: 0;
    display: inline-block;
    min-width: 0.6rem;
    transform: translateX(var(--x, -5px));
    transition: all 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    transition-delay: calc(0.03s * var(--char-index) + 0.4s); }
  .current .splitText {
    --x: 0; }
    .current .splitText span {
      opacity: 1; }

@media screen and (min-width: 769px) {
  .splitText span {
    min-width: 1.5rem;
    transform: translateX(var(--x, -10px)); } }
#firstContent .wrap {
  overflow: hidden;
  position: relative;
  color: #FFFFFF;
  aspect-ratio: 750 / 1322; }
  #firstContent .wrap .bg1 {
    opacity: 0;
    position: relative;
    background: url(../img/img_mv1_sp.webp) center center no-repeat;
    background-size: cover;
    aspect-ratio: 750 / 661;
    transform: translateX(-200px); }
  #firstContent .wrap .bg2 {
    opacity: 0;
    position: relative;
    background: url(../img/img_mv2_sp.webp) center center no-repeat;
    background-size: cover;
    aspect-ratio: 750 / 661;
    transform: translateX(200px); }
  #firstContent .wrap .textWrap {
    opacity: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 5; }
  #firstContent .wrap .title {
    opacity: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 10;
    font-size: 4.5rem;
    line-height: 0.8;
    font-weight: 600;
    letter-spacing: -0.23rem;
    white-space: nowrap;
    text-align: center;
    mix-blend-mode: difference; }
  #firstContent .wrap .block {
    position: relative;
    width: 100%;
    aspect-ratio: 750 / 661; }
    #firstContent .wrap .block.block1 .place {
      bottom: 3.3rem; }
    #firstContent .wrap .block.block2 .logo {
      width: calc(149.7 / 375 * 100%); }
    #firstContent .wrap .block .logo {
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      width: calc(104.3 / 375 * 100%);
      margin: auto; }
      #firstContent .wrap .block .logo .path1 {
        fill: #FFFFFF; }
    #firstContent .wrap .block .place {
      opacity: 0;
      display: flex;
      align-items: center;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 1rem;
      transform: translateX(-50px); }
      #firstContent .wrap .block .place .list .item {
        position: relative;
        margin: 0 0 2rem 0; }
        #firstContent .wrap .block .place .list .item:last-child {
          margin-bottom: 0; }
        #firstContent .wrap .block .place .list .item .ja {
          font-size: 2.2rem;
          line-height: 1;
          margin: 0 0 0.9rem 0; }
        #firstContent .wrap .block .place .list .item .en {
          font-size: 1.6rem;
          line-height: 1; }
          #firstContent .wrap .block .place .list .item .en .area {
            opacity: 0.5;
            display: block;
            font-size: 1.4rem;
            line-height: 1;
            margin: 0.5rem 0 0 0; }
          #firstContent .wrap .block .place .list .item .en .soon {
            opacity: 0.5;
            position: absolute;
            top: 0.7rem;
            left: 5rem;
            font-size: 0.8rem;
            line-height: 1;
            font-weight: 600;
            white-space: nowrap; }
#firstContent .bottom {
  padding: calc(30 / 375 * 100%) 0; }
  #firstContent .bottom .buttonWrap {
    width: calc(335 / 375 * 100%);
    margin: 0 auto calc(19 / 375 * 100%) auto; }
  #firstContent .bottom .price {
    font-size: 2rem;
    line-height: 1.2;
    font-weight: 600;
    text-align: center; }
    #firstContent .bottom .price .tax {
      display: block;
      font-size: 1.2rem;
      line-height: 1.17; }
.load_complete #firstContent .wrap .bg1,
.load_complete #firstContent .wrap .bg2 {
  opacity: 1;
  transform: translateX(0);
  transition: all 1s cubic-bezier(0.42, 0.91, 0.69, 0.97) 1.5s; }
.load_complete #firstContent .wrap .textWrap {
  opacity: 1;
  transition: all 0.6s ease-out 2.2s; }
.load_complete #firstContent .wrap .title {
  opacity: 1;
  transition: all 1.3s linear; }
.load_complete #firstContent .wrap .block .place {
  opacity: 1;
  transform: translateX(0) !important;
  transition: all 0.4s ease-out 3s; }

@media screen and (min-width: 769px) {
  #firstContent .content {
    position: relative; }
  #firstContent .wrap {
    display: flex;
    position: static;
    color: #FFFFFF;
    background: url(../img/img_mv.webp) center center no-repeat;
    background-size: cover;
    aspect-ratio: 1440 / 900; }
    #firstContent .wrap .bg1 {
      flex-basis: 50%;
      position: relative;
      background: url(../img/img_mv1.webp) center center no-repeat;
      background-size: cover;
      aspect-ratio: 720 / 900;
      transform: translateX(0);
      transform: translateY(-200px); }
    #firstContent .wrap .bg2 {
      flex-basis: 50%;
      position: relative;
      background: url(../img/img_mv2.webp) center center no-repeat;
      background-size: contain;
      aspect-ratio: 720 / 900;
      transform: translateX(0);
      transform: translateY(200px); }
    #firstContent .wrap .textWrap {
      display: flex; }
    #firstContent .wrap .title {
      top: 112px;
      bottom: auto;
      font-size: 7.35vw;
      line-height: 1;
      font-weight: 600;
      letter-spacing: -0.53rem; }
      #firstContent .wrap .title .space {
        margin: 0 0 0 2rem; }
    #firstContent .wrap .block {
      aspect-ratio: 720 / 900; }
      #firstContent .wrap .block.block1 .place {
        bottom: 3.8rem; }
      #firstContent .wrap .block.block2 .logo {
        left: 0;
        right: auto;
        width: calc(234 / 720 * 100%);
        margin: auto 0 auto calc(26 / 720 * 100%);
        padding: calc(60 / 720 * 100%) 0 0 0; }
      #firstContent .wrap .block.block2 .place {
        bottom: 3.8rem;
        left: auto;
        right: 3rem;
        transform: translateX(50px); }
        #firstContent .wrap .block.block2 .place .list .item {
          justify-content: flex-end; }
          #firstContent .wrap .block.block2 .place .list .item .ja {
            order: 2;
            margin: 0 0 0 1.2rem; }
      #firstContent .wrap .block .logo {
        left: auto;
        right: 0;
        width: calc(164 / 720 * 100%);
        margin: auto calc(48 / 720 * 100%) auto 0;
        padding: calc(60 / 720 * 100%) 0 0 0; }
      #firstContent .wrap .block .place {
        top: auto;
        bottom: 0;
        left: 3rem; }
        #firstContent .wrap .block .place .list .item {
          display: flex;
          align-items: center;
          position: relative;
          margin: 0 0 4rem 0; }
          #firstContent .wrap .block .place .list .item:last-child {
            margin-bottom: 0; }
          #firstContent .wrap .block .place .list .item .ja {
            width: 1em;
            font-size: 4rem;
            line-height: 1.1;
            margin: 0 1.2rem 0 0; }
          #firstContent .wrap .block .place .list .item .en {
            font-size: 2rem;
            line-height: 1; }
            #firstContent .wrap .block .place .list .item .en .area {
              font-size: 1.4rem;
              line-height: 1;
              margin: 0.4rem 0 0 0; }
            #firstContent .wrap .block .place .list .item .en .soon {
              display: block;
              position: static;
              font-size: 1.4rem;
              line-height: 1;
              margin: 0.6rem 0 0.6rem 0; }
  #firstContent .bottom {
    padding: 0; }
    #firstContent .bottom:after {
      content: "";
      display: block;
      position: absolute;
      bottom: 13.6rem;
      left: calc(50% + 18.5rem);
      width: 2rem;
      height: 2rem;
      background: url(../img/icon_blank_black.svg) center center no-repeat;
      background-size: contain; }
    #firstContent .bottom .buttonWrap {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 10;
      width: 100%;
      color: #FFFFFF;
      text-align: center;
      margin: 0 0 8.8rem 0;
      mix-blend-mode: difference; }
      #firstContent .bottom .buttonWrap .button {
        display: inline-block;
        height: auto;
        font-size: 7.2rem;
        line-height: 1;
        letter-spacing: -0.2rem;
        padding: 0;
        border-bottom: 5px solid #FFFFFF;
        border-radius: 0;
        transition: all 0.4s ease-out; }
        #firstContent .bottom .buttonWrap .button:before {
          display: none; }
        #firstContent .bottom .buttonWrap .button:after {
          display: none; }
        #firstContent .bottom .buttonWrap .button .inner {
          background-color: transparent;
          border-radius: 0; }
          #firstContent .bottom .buttonWrap .button .inner .icon {
            display: none; }
        #firstContent .bottom .buttonWrap .button:hover {
          color: #FF0000;
          border-bottom-color: #FF0000; }
    #firstContent .bottom .price {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 10;
      color: #FFFFFF;
      margin: 0 0 2.8rem 0; }
  .load_complete #firstContent .wrap .bg1,
  .load_complete #firstContent .wrap .bg2 {
    transform: translateY(0); } }
@media screen and (min-width: 1300px) {
  #firstContent .wrap .block .place .list .item .ja {
    font-size: 6.4rem;
    line-height: 1.09;
    margin: 0 1.2rem 0 0; }
  #firstContent .wrap .block .place .list .item .en {
    font-size: 2.4rem;
    line-height: 1; }
    #firstContent .wrap .block .place .list .item .en .area {
      font-size: 1.6rem;
      line-height: 1;
      margin: 0.4rem 0 0 0; }
    #firstContent .wrap .block .place .list .item .en .soon {
      font-size: 1.6rem;
      line-height: 1;
      margin: 0.6rem 0 0.6rem 0; } }
#locations .contentInner {
  width: calc(355 / 375 * 100%); }
#locations .title {
  font-size: 5.2rem;
  line-height: 1;
  font-weight: 600;
  text-align: center;
  padding: calc(57 / 355 * 100%) 0; }
#locations .wrap {
  padding: 0 0 calc(188 / 355 * 100%) 0; }
  #locations .wrap .list {
    margin: 0 0 calc(12 / 355 * 100%) 0; }
    #locations .wrap .list.list2 .item .textWrap .name {
      color: #1E2B58; }
    #locations .wrap .list.list2 .item .textWrap .buttonArea .button {
      background-color: #D3DBED; }
    #locations .wrap .list.list2 .item .soon .name {
      color: #1E2B58; }
    #locations .wrap .list .item {
      position: relative;
      margin: 0 0 calc(58 / 355 * 100%) 0;
      padding: 0 0 4.8rem 0; }
      #locations .wrap .list .item:last-child {
        margin-bottom: 0; }
      #locations .wrap .list .item .textWrap .name {
        color: #E50000;
        font-size: 2.4rem;
        line-height: 1.21;
        font-weight: 600;
        margin: 0 0 calc(19 / 355 * 100%) 0; }
      #locations .wrap .list .item .textWrap .address {
        font-size: 1.4rem;
        line-height: 1.21;
        margin: 0 0 calc(16 / 355 * 100%) 0; }
      #locations .wrap .list .item .textWrap .buttonArea {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0; }
        #locations .wrap .list .item .textWrap .buttonArea .button {
          display: flex;
          align-items: center;
          justify-content: center;
          width: 100%;
          height: 4.8rem;
          font-size: 1.4rem;
          line-height: 1;
          font-weight: 600;
          background-color: #FAD9CF;
          border-radius: 2.4rem; }
          #locations .wrap .list .item .textWrap .buttonArea .button .icon {
            display: inline-block;
            width: 1.1rem;
            height: 1.4rem;
            background: url(../img/icon_map.svg) center center no-repeat;
            background-size: contain;
            margin: 0 0 0 1rem; }
      #locations .wrap .list .item .imageWrap {
        margin: 0 0 calc(7 / 355 * 100%) 0; }
        #locations .wrap .list .item .imageWrap iframe {
          width: 100%;
          height: auto;
          aspect-ratio: 355 / 200;
          border: 1px solid #DCDCDC;
          border-radius: 1rem;
          box-sizing: border-box;
          filter: grayscale(1); }
      #locations .wrap .list .item .soon {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: calc(19 / 355 * 100%) calc(10 / 355 * 100%);
        border-top: 1px solid #DCDCDC;
        border-bottom: 1px solid #DCDCDC; }
        #locations .wrap .list .item .soon .name {
          color: #E50000;
          font-size: 2rem;
          line-height: 1.2;
          font-weight: 600; }
        #locations .wrap .list .item .soon .text {
          flex-shrink: 0;
          font-size: 1.4rem;
          line-height: 1;
          font-weight: 500; }

@media screen and (min-width: 769px) {
  #locations .contentInner {
    width: 100%; }
  #locations .title {
    font-size: 6.4rem;
    line-height: 1;
    padding: calc(160 / 1040 * 100%) 0 calc(41 / 1040 * 100%) 0; }
  #locations .wrap {
    display: flex;
    justify-content: space-between;
    padding: 0 0 calc(161 / 1040 * 100%) 0; }
    #locations .wrap .list {
      flex-basis: calc(500 / 1040 * 100%);
      margin: 0; }
      #locations .wrap .list .item {
        display: flex;
        justify-content: space-between;
        margin: 0 0 calc(37 / 500 * 100%) 0;
        padding: 0; }
        #locations .wrap .list .item:last-child {
          margin-bottom: 0; }
        #locations .wrap .list .item .textWrap {
          flex-basis: calc(240 / 500 * 100%); }
          #locations .wrap .list .item .textWrap .name {
            font-size: 2.6rem;
            line-height: 1.19;
            margin: 0 0 calc(10 / 240 * 100%) 0; }
          #locations .wrap .list .item .textWrap .address {
            min-height: calc(1.7rem * 4);
            margin: 0 0 calc(9 / 240 * 100%) 0; }
          #locations .wrap .list .item .textWrap .buttonArea {
            position: static;
            max-width: 140px;
            margin: 0 0 0 auto; }
            #locations .wrap .list .item .textWrap .buttonArea .button {
              height: 3.4rem;
              border-radius: 1.7rem; }
        #locations .wrap .list .item .imageWrap {
          flex-basis: calc(240 / 500 * 100%);
          margin: 0; }
          #locations .wrap .list .item .imageWrap iframe {
            width: 100%;
            height: auto;
            aspect-ratio: 240 / 182;
            border: 1px solid #DCDCDC;
            border-radius: 1rem; }
        #locations .wrap .list .item .soon {
          width: 100%;
          padding: calc(19 / 500 * 100%) calc(10 / 500 * 100%);
          box-sizing: border-box; }
          #locations .wrap .list .item .soon .name .space {
            margin: 0 0 0 0.5rem; } }
.studio.studio2 .titleWrap {
  background: url(../img/bg_studio2_sp.webp) center top no-repeat;
  background-size: contain;
  background-color: #153066;
  padding: calc(77 / 375 * 100%) 0 calc(119 / 375 * 100%) 0; }
  .studio.studio2 .titleWrap .copy {
    font-size: 2.4rem;
    line-height: 1.42; }
  .studio.studio2 .titleWrap .title {
    width: calc(187 / 375 * 100%);
    padding: calc(29 / 375 * 100%) 0 calc(53 / 375 * 100%) 0; }
    .studio.studio2 .titleWrap .title .path1 {
      fill: #FFFFFF; }
.studio.studio2 .list {
  margin: calc(-79 / 335 * 100%) 0 0 0;
  padding: 0 0 calc(142 / 335 * 100%) 0; }
  .studio.studio2 .list .item:nth-child(2) .headline .icon {
    background: url(../img/icon_studio2_2.svg) center center no-repeat;
    background-size: contain; }
  .studio.studio2 .list .item:nth-child(3) .headline .icon {
    background: url(../img/icon_studio2_3.svg) center center no-repeat;
    background-size: contain; }
  .studio.studio2 .list .item .image img {
    box-shadow: 0px 20px 30px -10px rgba(93, 163, 255, 0.5); }
  .studio.studio2 .list .item .headline .icon {
    background: url(../img/icon_studio2_1.svg) center center no-repeat;
    background-size: contain; }
.studio .titleWrap {
  color: #FFFFFF;
  background: url(../img/bg_studio1_sp.webp) center top no-repeat;
  background-size: contain;
  background-color: #DC0101;
  padding: calc(41 / 375 * 100%) 0 calc(119 / 375 * 100%) 0; }
  .studio .titleWrap .copy {
    opacity: 0;
    font-size: 2rem;
    line-height: 1.4;
    font-weight: 600;
    text-align: center; }
  .studio .titleWrap .title {
    opacity: 0;
    width: calc(152 / 375 * 100%);
    margin: auto;
    padding: calc(29 / 375 * 100%) 0 calc(37 / 375 * 100%) 0; }
    .studio .titleWrap .title .path1 {
      fill: #FFFFFF; }
  .studio .titleWrap .desc {
    opacity: 0;
    width: calc(335 / 375 * 100%);
    font-size: 1.6rem;
    line-height: 1.19;
    font-weight: 500;
    margin: auto; }
  .studio .titleWrap.current .copy,
  .studio .titleWrap.current .title,
  .studio .titleWrap.current .desc {
    opacity: 1;
    transition: opacity 1s ease-out 0.2s; }
.studio .list {
  margin: calc(-60 / 335 * 100%) 0 0 0;
  padding: 0 0 calc(128 / 335 * 100%) 0; }
  .studio .list .item {
    margin: 0 0 calc(70 / 335 * 100%) 0; }
    .studio .list .item:nth-child(2) .headline .icon {
      background: url(../img/icon_studio1_2.svg) center center no-repeat;
      background-size: contain; }
    .studio .list .item:nth-child(3) .headline .icon {
      background: url(../img/icon_studio1_3.svg) center center no-repeat;
      background-size: contain; }
    .studio .list .item .image {
      margin: 0 0 calc(30 / 335 * 100%) 0; }
      .studio .list .item .image img {
        border-radius: 2rem;
        box-shadow: 0px 20px 30px -10px rgba(229, 0, 0, 0.5); }
    .studio .list .item .headline {
      font-size: 2rem;
      line-height: 1.2;
      font-weight: 500;
      text-align: center;
      margin: 0 0 calc(10 / 335 * 100%) 0; }
      .studio .list .item .headline .icon {
        display: block;
        width: 4rem;
        height: 4rem;
        background: url(../img/icon_studio1_1.svg) center center no-repeat;
        background-size: contain;
        margin: 0 auto calc(10 / 335 * 100%) auto; }
    .studio .list .item .text {
      font-size: 1.4rem;
      line-height: 1.21; }
      .studio .list .item .text + .text {
        margin: 1.7rem 0 0 0; }

@media screen and (min-width: 769px) {
  .studio.studio2 .titleWrap {
    background: url(../img/bg_studio2.webp) right center no-repeat;
    background-size: contain;
    background-color: transparent;
    padding: 8rem 0 0 0; }
    .studio.studio2 .titleWrap .copy {
      font-size: 3.2rem;
      line-height: 1; }
    .studio.studio2 .titleWrap .title {
      width: 23.4rem;
      padding: 3rem 0 2.6rem 0; }
  .studio.studio2 .list {
    margin: calc(-39 / 1040 * 100%) 0 0 0;
    padding: 0 0 calc(160 / 1040 * 100%) 0; }
    .studio.studio2 .list .item .image img {
      box-shadow: 0px 20px 30px -10px rgba(93, 163, 255, 0.5); }
  .studio .content {
    max-width: 1440px;
    margin: auto; }
  .studio .titleWrap {
    height: 50rem;
    background: url(../img/bg_studio1.webp) left center no-repeat;
    background-size: contain;
    background-color: transparent;
    padding: 8rem 0 0 0;
    box-sizing: border-box; }
    .studio .titleWrap .copy {
      font-size: 3.2rem;
      line-height: 1;
      font-weight: 600;
      text-align: center; }
    .studio .titleWrap .title {
      width: 16.3rem;
      padding: 3rem 0 2.6rem 0; }
    .studio .titleWrap .desc {
      width: 100%;
      max-width: 61.5rem;
      font-size: 1.4rem;
      line-height: 1.21; }
  .studio .list {
    display: flex;
    margin: calc(-39 / 1040 * 100%) 0 0 0;
    padding: 0 0 calc(160 / 1040 * 100%) 0; }
    .studio .list .item {
      flex-basis: calc(306 / 1040 * 100%);
      margin: 0;
      padding: 0 calc(30 / 1040 * 100%);
      border-left: 1px solid rgba(30, 30, 30, 0.3); }
      .studio .list .item:nth-child(1) {
        padding-left: 0;
        border-left: 0;
        transition-delay: 0.3s; }
      .studio .list .item:nth-child(2) {
        transition-delay: 0.6s; }
      .studio .list .item:nth-child(3) {
        padding-right: 0;
        transition-delay: 0.9s; }
      .studio .list .item .image {
        margin: 0 0 calc(30 / 306 * 100%) 0; }
        .studio .list .item .image img {
          border-radius: 2rem;
          box-shadow: 0px 20px 30px -10px rgba(229, 0, 0, 0.5); }
      .studio .list .item .headline {
        font-size: 2rem;
        line-height: 1.2;
        font-weight: 500;
        text-align: center;
        margin: 0 0 calc(9 / 306 * 100%) 0; }
        .studio .list .item .headline .icon {
          display: block;
          width: 4rem;
          height: 4rem;
          background: url(../img/icon_studio1_1.svg) center center no-repeat;
          background-size: contain;
          margin: 0 auto calc(10 / 306 * 100%) auto; }
      .studio .list .item .text {
        font-size: 1.4rem;
        line-height: 1.21; }
        .studio .list .item .text + .text {
          margin: 1.7rem 0 0 0; } }
#pricingArea .content {
  padding: 0 0 calc(200 / 375 * 100%) 0; }
  #pricingArea .content:before {
    content: "";
    opacity: 0;
    display: block;
    width: calc(340 / 375 * 100%);
    background: url(../img/bg_pricing1_sp.webp) left center no-repeat;
    background-size: contain;
    aspect-ratio: 340 / 160;
    transform: translateX(-200px); }
  #pricingArea .content:after {
    content: "";
    opacity: 0;
    display: block;
    width: calc(340 / 375 * 100%);
    background: url(../img/bg_pricing2_sp.webp) right center no-repeat;
    background-size: contain;
    margin: 0 0 0 auto;
    aspect-ratio: 340 / 160;
    transform: translateX(200px); }
  #pricingArea .content.current:before, #pricingArea .content.current:after {
    opacity: 1;
    transform: translateX(0);
    transition: 0.4s ease-out 0.3s; }
#pricingArea .title {
  font-size: 5.2rem;
  line-height: 1;
  font-weight: 600;
  text-align: center;
  padding: calc(57 / 375 * 100%) 0 calc(33 / 375 * 100%) 0; }
#pricingArea .textWrap {
  padding: 0 0 calc(33 / 375 * 100%) 0; }
  #pricingArea .textWrap .text {
    font-size: 4rem;
    line-height: 1;
    font-weight: 600;
    text-align: center;
    margin: 0 0 calc(10 / 335 * 100%) 0; }
    #pricingArea .textWrap .text:first-child:after {
      content: "";
      display: block;
      width: calc(240 / 335 * 100%);
      margin: auto;
      padding: calc(10 / 335 * 100%) 0 0 0;
      border-bottom: 1px solid #D2D2D2; }
    #pricingArea .textWrap .text .small {
      display: block;
      font-size: 1.4rem;
      line-height: 1.43; }

@media screen and (min-width: 769px) {
  #pricingArea .content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 15.6rem 0;
    padding: 0; }
    #pricingArea .content:before {
      flex-basis: calc(536 / 1440 * 100%);
      background: url(../img/bg_pricing1.webp) left center no-repeat;
      background-size: contain;
      aspect-ratio: 1072 / 734; }
    #pricingArea .content:after {
      flex-basis: calc(536 / 1440 * 100%);
      background: url(../img/bg_pricing2.webp) right center no-repeat;
      background-size: contain;
      margin: 0;
      aspect-ratio: 1072 / 734; }
  #pricingArea .contentInner {
    flex-basis: calc(368 / 1440 * 100%);
    flex-shrink: 0;
    padding: 0; }
  #pricingArea .title {
    font-size: 6.4rem;
    line-height: 1;
    font-weight: 600;
    text-align: center;
    padding: calc(49 / 368 * 100%) 0 calc(44 / 368 * 100%) 0; }
  #pricingArea .textWrap {
    padding: 0 0 calc(33 / 368 * 100%) 0; }
    #pricingArea .textWrap .text {
      margin: 0 0 calc(10 / 368 * 100%) 0; }
      #pricingArea .textWrap .text:first-child:after {
        width: calc(240 / 368 * 100%);
        padding: calc(10 / 368 * 100%) 0 0 0; } }
#reservationArea .content {
  background: url(../img/bg_reservation_sp.webp) center center no-repeat;
  background-size: cover; }
#reservationArea .title {
  color: #FFFFFF;
  font-size: 4rem;
  line-height: 1;
  font-weight: 600;
  text-align: center;
  padding: calc(100 / 335 * 100%) 0 calc(60 / 335 * 100%) 0; }
  #reservationArea .title .small {
    display: block;
    font-size: 2rem;
    line-height: 1;
    margin: 0 0 calc(10 / 335 * 100%) 0; }
#reservationArea .list {
  margin: 0 0 calc(45 / 335 * 100%) 0; }
  #reservationArea .list .item {
    display: flex;
    align-items: center;
    position: relative;
    background-color: #FFFFFF;
    margin: 0 0 calc(25 / 335 * 100%) 0;
    border-radius: 10rem; }
    #reservationArea .list .item:nth-child(1) .text {
      min-height: calc(1.9rem * 3); }
    #reservationArea .list .item:nth-child(2) .icon {
      background: url(../img/icon_reservation2.svg) center center no-repeat;
      background-size: contain; }
    #reservationArea .list .item:nth-child(3) .icon {
      background: url(../img/icon_reservation3.svg) center center no-repeat;
      background-size: contain; }
    #reservationArea .list .item:nth-child(4):after {
      display: none; }
    #reservationArea .list .item:nth-child(4) .icon {
      background: url(../img/icon_reservation4.svg) center center no-repeat;
      background-size: contain; }
    #reservationArea .list .item:after {
      content: "";
      position: absolute;
      top: 100%;
      left: 0;
      right: 0;
      width: calc(18 / 335 * 100%);
      background-color: #FFFFFF;
      margin: calc(-18 / 335 * 100%) auto 0 auto;
      border-radius: 0.2rem;
      aspect-ratio: 1 / 1;
      transform: scale(1, 2) rotate(45deg); }
    #reservationArea .list .item .num {
      flex-basis: calc(70 / 335 * 100%);
      color: #E50000;
      font-size: 2.4rem;
      line-height: 1;
      font-weight: 500;
      text-align: center; }
    #reservationArea .list .item .text {
      display: flex;
      align-items: center;
      flex-basis: calc(185 / 335 * 100%);
      position: relative;
      z-index: 2;
      min-height: calc(1.9rem * 5.2);
      font-size: 1.6rem;
      line-height: 1.19;
      font-weight: 500; }
    #reservationArea .list .item .icon {
      flex-basis: calc(80 / 335 * 100%);
      background: url(../img/icon_reservation1.svg) center center no-repeat;
      background-size: contain;
      aspect-ratio: 1 / 1; }
#reservationArea .noteWrap {
  color: #FFFFFF;
  font-size: 1.2rem;
  line-height: 1.42;
  margin: 0 0 calc(60 / 335 * 100%) 0; }
#reservationArea .buttonArea {
  padding: 0 0 calc(99 / 335 * 100%) 0; }
  #reservationArea .buttonArea .button {
    margin: 0 0 calc(20 / 335 * 100%) 0; }
  #reservationArea .buttonArea .price {
    color: #FFFFFF;
    font-size: 2rem;
    line-height: 1.2;
    text-align: center; }
    #reservationArea .buttonArea .price .tax {
      display: block;
      font-size: 1.2rem;
      line-height: 1.17; }

@media screen and (min-width: 769px) {
  #reservationArea .content {
    background: url(../img/bg_reservation.webp) center center no-repeat;
    background-size: cover; }
  #reservationArea .contentInner {
    max-width: 730px; }
  #reservationArea .title {
    padding: calc(100 / 690 * 100%) 0 calc(30 / 690 * 100%) 0; }
    #reservationArea .title .small {
      margin: 0 0 calc(10 / 690 * 100%) 0; }
  #reservationArea .list {
    margin: 0 0 calc(20 / 690 * 100%) 0; }
    #reservationArea .list .item {
      margin: 0 0 calc(28 / 690 * 100%) 0; }
      #reservationArea .list .item:nth-child(1) .text {
        min-height: calc(2.4rem * 2); }
      #reservationArea .list .item:nth-child(4) {
        margin-bottom: 0; }
      #reservationArea .list .item:after {
        width: calc(20 / 690 * 100%);
        margin: calc(-18 / 690 * 100%) auto 0 auto;
        transform: scale(1, 1.8) rotate(45deg); }
      #reservationArea .list .item .num {
        flex-basis: calc(95 / 690 * 100%);
        font-size: 3.2rem;
        line-height: 1; }
      #reservationArea .list .item .text {
        flex-basis: calc(499 / 690 * 100%);
        min-height: calc(2.4rem * 2);
        font-size: 2rem;
        line-height: 1.2; }
      #reservationArea .list .item .icon {
        flex-basis: calc(96 / 690 * 100%); }
  #reservationArea .noteWrap {
    margin: 0 0 calc(79 / 690 * 100%) 0; }
  #reservationArea .buttonArea {
    max-width: 386px;
    margin: auto;
    padding: 0 0 calc(99 / 690 * 100%) 0; }
    #reservationArea .buttonArea .button {
      height: 8.8rem;
      font-size: 4.8rem;
      line-height: 1;
      margin: 0 0 calc(20 / 386 * 100%) 0;
      border-radius: 4.4rem; }
      #reservationArea .buttonArea .button:after {
        border-radius: 4.4rem; }
      #reservationArea .buttonArea .button .inner {
        border-radius: 4.4rem; } }
