/*!**********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/styles/style.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100;0,400;0,500;0,700;1,100;1,400;1,500;1,700&display=swap);
/*!**************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/styles/style.scss (1) ***!
  \**************************************************************************************************************************************************************************************************************************************************/
@import url(https://unpkg.com/swiper@8/swiper-bundle.min.css);
/*!**************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/styles/style.scss (2) ***!
  \**************************************************************************************************************************************************************************************************************************************************/
@import url(https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/4.1.3/css/flag-icons.min.css);
/*!***************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/styles/foundation/vendor/perfect-scrollbar.css ***!
  \***************************************************************************************************************************************************************************************************************************************************************************/
/*
 * Container style
 */
.ps {
  -ms-overflow-style: none;
  -ms-touch-action: auto;
  overflow: hidden !important;
  overflow-anchor: none;
  touch-action: auto;
}

/*
 * Scrollbar rail styles
 */
.ps__rail-x {
  -webkit-transition: background-color 0.2s linear, opacity 0.2s linear;
  display: none;
  /* please don't change 'position' */
  position: absolute;
  /* there must be 'bottom' or 'top' for ps__rail-x */
  bottom: 0px;
  height: 15px;
  opacity: 0;
  transition: background-color 0.2s linear, opacity 0.2s linear;
}

.ps__rail-y {
  -webkit-transition: background-color 0.2s linear, opacity 0.2s linear;
  display: none;
  /* please don't change 'position' */
  position: absolute;
  /* there must be 'right' or 'left' for ps__rail-y */
  right: 0;
  width: 15px;
  opacity: 0;
  transition: background-color 0.2s linear, opacity 0.2s linear;
}

.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
  display: block;
  background-color: transparent;
}

.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
  opacity: 0.6;
}

.ps .ps__rail-x:hover,
.ps .ps__rail-y:hover,
.ps .ps__rail-x:focus,
.ps .ps__rail-y:focus,
.ps .ps__rail-x.ps--clicking,
.ps .ps__rail-y.ps--clicking {
  background-color: #eee;
  opacity: 0.9;
}

/*
 * Scrollbar thumb styles
 */
.ps__thumb-x {
  -webkit-transition: background-color 0.2s linear, height 0.2s ease-in-out;
  /* please don't change 'position' */
  position: absolute;
  /* there must be 'bottom' for ps__thumb-x */
  bottom: 2px;
  height: 6px;
  border-radius: 6px;
  background-color: #aaa;
  transition: background-color 0.2s linear, height 0.2s ease-in-out;
}

.ps__thumb-y {
  -webkit-transition: background-color 0.2s linear, width 0.2s ease-in-out;
  /* please don't change 'position' */
  position: absolute;
  /* there must be 'right' for ps__thumb-y */
  right: 2px;
  width: 6px;
  border-radius: 6px;
  background-color: #aaa;
  transition: background-color 0.2s linear, width 0.2s ease-in-out;
}

.ps__rail-x:hover > .ps__thumb-x,
.ps__rail-x:focus > .ps__thumb-x,
.ps__rail-x.ps--clicking .ps__thumb-x {
  height: 11px;
  background-color: #999;
}

.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
  width: 11px;
  background-color: #999;
}

/* MS supports */
@supports (-ms-overflow-style: none) {
  .ps {
    overflow: auto !important;
  }
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps {
    overflow: auto !important;
  }
}
/*!**************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/styles/style.scss (3) ***!
  \**************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  -webkit-text-size-adjust: 100%;
  line-height: 1.15;
}

body {
  margin: 0;
}

main {
  display: block;
}

h1 {
  margin: 0;
  font-size: 2em;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-size: 1em;
  font-family: monospace, monospace;
}

a {
  background-color: transparent;
}

abbr[title] {
  -webkit-text-decoration: underline dotted;
  border-bottom: none;
  text-decoration: underline;
          text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-size: 1em;
  font-family: monospace, monospace;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

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

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

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

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

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  display: table;
  max-width: 100%;
  padding: 0;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

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] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

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

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

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

a {
  color: inherit;
  text-decoration: none;
}

ol, ul {
  list-style: none;
}

h1, h2, h3, h4, h5, h6,
p, ul, ol, dl, dd, figure {
  margin: 0;
  padding: 0;
  font-size: inherit;
}

::-moz-selection {
  background-color: #b3d4fc;
  color: inherit;
  text-shadow: none;
}

::selection {
  background-color: #b3d4fc;
  color: inherit;
  text-shadow: none;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "palt";
  -webkit-overflow-scrolling: touch;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  font-size: 62.5%;
}

body {
  background: #fff;
  color: #000;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1.5;
  font-family: "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  font-kerning: normal;
  letter-spacing: 0;
  word-break: normal;
}

address {
  font-style: normal;
}

img,
svg,
video {
  max-width: 100%;
  height: auto;
}

iframe {
  max-width: 100%;
}

svg {
  transform: translate(0, 0);
}

svg:not(:root) {
  overflow: hidden;
}

a[href^="tel:"] {
  pointer-events: none;
}

@font-face {
  font-weight: 400;
  src: url("../fonts/fontawesome/fa-regular-400.woff2") format("woff2"), url("../fonts/fontawesome/fa-regular-400.ttf") format("truetype");
  font-family: "Font Awesome 5 Free";
  font-display: block;
}
@font-face {
  font-weight: 900;
  src: url("../fonts/fontawesome/fa-solid-900.woff2") format("woff2"), url("../fonts/fontawesome/fa-solid-900.ttf") format("truetype");
  font-family: "Font Awesome 5 Free";
  font-display: block;
}
@font-face {
  font-weight: 400;
  src: url("../fonts/fontawesome/fa-brands-400.woff2") format("woff2"), url("../fonts/fontawesome/fa-brands-400.ttf") format("truetype");
  font-family: "Font Awesome 5 Brands";
  font-display: block;
}
@font-face {
  font-style: normal;
  font-weight: normal;
  src: url("../fonts/fontawesome/fontawesome-webfont.eot?v=4.3.0");
  src: url("../fonts/fontawesome/fontawesome-webfont.eot?#iefix&v=4.3.0") format("embedded-opentype"), url("../fonts/fontawesome/fontawesome-webfont.woff2?v=4.3.0") format("woff2"), url("../fonts/fontawesome/fontawesome-webfont.woff?v=4.3.0") format("woff"), url("../fonts/fontawesome/fontawesome-webfont.ttf?v=4.3.0") format("truetype"), url("../fonts/fontawesome/fontawesome-webfont.svg?v=4.3.0#fontawesomeregular") format("svg");
  font-family: "FontAwesome";
}
@font-face {
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Regular.woff") format("woff");
  font-family: "NotoSerifCJKjp";
  font-display: swap;
}
@font-face {
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Medium.woff") format("woff");
  font-family: "NotoSerifCJKjp";
  font-display: swap;
}
@font-face {
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Bold.woff") format("woff");
  font-family: "NotoSerifCJKjp";
  font-display: swap;
}
.p-language-select__inner input, .p-form-main input, .p-review-select input, .p-index-main__select input, .c-form-text input,
.p-language-select__inner textarea,
.p-form-main textarea,
.p-review-select textarea,
.p-index-main__select textarea,
.c-form-text textarea,
.p-language-select__inner select,
.p-form-main select,
.p-review-select select,
.p-index-main__select select,
.c-form-text select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
  font-size: inherit;
  font-family: "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-language-select__inner button, .p-form-main button, .p-review-select button, .p-index-main__select button, .c-form-text button {
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  font: inherit;
  font-family: "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  cursor: pointer;
}
.p-language-select__inner select::-ms-expand, .p-form-main select::-ms-expand, .p-review-select select::-ms-expand, .p-index-main__select select::-ms-expand, .c-form-text select::-ms-expand {
  display: none;
}

.p-breadcrumbs__inner > ol > li:not(:last-child) a, .p-common-notfound__button a {
  position: relative;
}
.p-breadcrumbs__inner > ol > li:not(:last-child) a:after, .p-common-notfound__button a:after {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #000;
  content: "";
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-breadcrumbs__inner > ol > li:not(:last-child) a:hover:after, .p-common-notfound__button a:hover:after {
  width: 0;
}

.p-about-contact__list a, .p-footer-menu a, .p-header-nav__menu a, .p-header-main__menu a {
  position: relative;
}
.p-about-contact__list a:after, .p-footer-menu a:after, .p-header-nav__menu a:after, .p-header-main__menu a:after {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background: #000;
  content: "";
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-about-contact__list a:hover:after, .p-footer-menu a:hover:after, .p-header-nav__menu a:hover:after, .p-header-main__menu a:hover:after {
  width: 100%;
}

@keyframes pound {
  to {
    transform: scale(1.85);
  }
}
@keyframes shake {
  0% {
    transform: skew(0deg, 0deg);
  }
  2% {
    transform: skew(1.5deg, 1.5deg);
  }
  4% {
    transform: skew(-1.5deg, -1.5deg);
  }
  6% {
    transform: skew(0deg, 0deg);
  }
  10% {
    transform: skew(0deg, 0deg);
  }
  12% {
    transform: skew(1.5deg, 1.5deg);
  }
  14% {
    transform: skew(-1.5deg, -1.5deg);
  }
  18% {
    transform: skew(0deg, 0deg);
  }
  20% {
    transform: skew(0deg, 0deg);
  }
  22% {
    transform: skew(1.5deg, 1.5deg);
  }
  24% {
    transform: skew(-1.5deg, -1.5deg);
  }
  28% {
    transform: skew(0deg, 0deg);
  }
  to {
    transform: skew(0deg, 0deg);
  }
}
.svg-symbol {
  display: none;
}

.menu-opened {
  overflow: hidden;
}
.menu-opened body {
  position: fixed;
  left: 0;
  width: 100%;
  height: 100%;
}

.l-wrapper {
  display: flex;
  visibility: hidden;
  position: relative;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  padding-top: constant(safe-area-inset-top);
  padding-right: constant(safe-area-inset-right);
  padding-bottom: constant(safe-area-inset-bottom);
  padding-left: constant(safe-area-inset-left);
  overflow: hidden;
  opacity: 0;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.page-loaded .l-wrapper {
  visibility: visible;
  opacity: 1;
}
.page-loading .l-wrapper {
  position: fixed;
  top: 0;
  overflow: hidden;
}

.page-top .l-footer {
  z-index: 1;
}

.l-main {
  display: block;
  z-index: 2;
  position: relative;
  flex: 1 1 auto;
}

.l-loading {
  display: none;
  z-index: 2000;
  position: fixed;
  top: 0;
  left: 0;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #fff;
  transition: 1s ease;
}

.p-profile-visual__inner, .p-breadcrumbs__container, .p-gal-list__container, .p-gal-datelist__container, .p-common-notfound__container, .p-common-content__inner, .p-common-text__container {
  max-width: 1180px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 40px;
  padding-left: 40px;
}

.p-access-map__container, .p-bottom__container, .p-gal-today__container, .p-pickup__container, .p-news__container, .p-footer-banner__container, .p-footer__container, .p-header-main__container {
  max-width: 1580px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 40px;
  padding-left: 40px;
}

.p-ranking-content__heading, .p-bottom-content__heading, .p-gal-today__heading, .p-pickup__heading, .p-news__heading {
  display: block;
  font-weight: 700;
  font-size: 6rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
}
.p-ranking-content__heading:before, .p-bottom-content__heading:before, .p-gal-today__heading:before, .p-pickup__heading:before, .p-news__heading:before {
  display: block;
  width: 15px;
  height: 4px;
  margin-right: auto;
  margin-bottom: 10px;
  margin-left: auto;
  background: #e20000;
  content: "";
}
.p-ranking-content__heading > *, .p-bottom-content__heading > *, .p-gal-today__heading > *, .p-pickup__heading > *, .p-news__heading > * {
  display: inline-block;
}
.on-screen .js-screen-heading.p-ranking-content__heading > *, .on-screen .js-screen-heading.p-bottom-content__heading > *, .on-screen .js-screen-heading.p-gal-today__heading > *, .on-screen .js-screen-heading.p-pickup__heading > *, .on-screen .js-screen-heading.p-news__heading > * {
  overflow: hidden;
}
.on-screen .js-screen-heading.p-ranking-content__heading > * > span, .on-screen .js-screen-heading.p-bottom-content__heading > * > span, .on-screen .js-screen-heading.p-gal-today__heading > * > span, .on-screen .js-screen-heading.p-pickup__heading > * > span, .on-screen .js-screen-heading.p-news__heading > * > span {
  display: inline-block;
  opacity: 0;
}
.on-screen.is-screen .js-screen-heading.p-ranking-content__heading > * > span, .on-screen.is-screen .js-screen-heading.p-bottom-content__heading > * > span, .on-screen.is-screen .js-screen-heading.p-gal-today__heading > * > span, .on-screen.is-screen .js-screen-heading.p-pickup__heading > * > span, .on-screen.is-screen .js-screen-heading.p-news__heading > * > span {
  opacity: 1;
  transition: 0.1s linear;
}

.p-price-content__heading, .p-profile-content__heading, .p-about-contact__heading, .p-about-content__heading {
  display: flex;
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}
.p-price-content__heading:before, .p-profile-content__heading:before, .p-about-contact__heading:before, .p-about-content__heading:before {
  display: block;
  position: relative;
  top: 12px;
  flex: 0 0 auto;
  width: 15px;
  height: 4px;
  margin-right: 10px;
  background: #e20000;
  content: "";
}
.on-screen .p-price-content__heading:before, .on-screen .p-profile-content__heading:before, .on-screen .p-about-contact__heading:before, .on-screen .p-about-content__heading:before {
  visibility: hidden;
  transform: rotate(360deg);
  opacity: 0;
}
.on-screen.is-screen .p-price-content__heading:before, .on-screen.is-screen .p-profile-content__heading:before, .on-screen.is-screen .p-about-contact__heading:before, .on-screen.is-screen .p-about-content__heading:before {
  visibility: visible;
  transform: rotate(0deg);
  opacity: 1;
  transition: 0.5s ease;
}
.on-screen .p-price-content__heading > *, .on-screen .p-profile-content__heading > *, .on-screen .p-about-contact__heading > *, .on-screen .p-about-content__heading > * {
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
}
.on-screen.is-screen .p-price-content__heading > *, .on-screen.is-screen .p-profile-content__heading > *, .on-screen.is-screen .p-about-contact__heading > *, .on-screen.is-screen .p-about-content__heading > * {
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
  transition: 0.5s ease;
}

.p-gal-today__back-title, .p-pickup__back-title {
  width: 100%;
}
.p-gal-today__back-title svg, .p-pickup__back-title svg {
  fill: #d9d9d9;
  display: block;
  width: 100%;
  isolation: isolate;
  opacity: 0.28;
}

.c-form-text {
  display: inline-block;
  width: 100%;
  max-width: 100%;
  padding: 0.5em;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
  font-size: 1.4rem;
  vertical-align: middle;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition-property: color, background-color, border;
}
.c-form-text:hover {
  border-color: #aaa;
}
.c-form-text:focus {
  border-color: #1e87f0;
  outline: 0;
}

.c-form-button {
  display: inline-flex;
  position: relative;
  align-items: center;
  justify-content: center;
  height: 2.5em;
  padding-top: calc(0.5em - 1px);
  padding-right: calc(0.75em - 1px);
  padding-bottom: calc(0.5em - 1px);
  padding-left: calc(0.75em - 1px);
  border: 1px solid #666;
  border-radius: 0.375em;
  background-color: #fff;
  box-shadow: none;
  font-size: 1.4rem;
  line-height: 1.5;
  vertical-align: top;
  cursor: pointer;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.c-form-button:hover {
  background-color: #e5e5e5;
}
.c-form-button[data-button=submit] {
  border-color: transparent;
  background-color: #485fc7;
  color: #fff;
}
.c-form-button[data-button=submit]:hover {
  background-color: #3e56c4;
}
.c-form-button.--submit {
  background-color: #485fc7;
  color: #fff;
}
.c-form-button.--submit:hover {
  background-color: #3e56c4;
}
.c-form-button.--full {
  width: 100%;
  text-align: center;
}

.c-form-buttonset {
  display: inline-block;
  overflow: hidden;
  border: 1px solid #666;
  border-radius: 5px;
}
.c-form-buttonset > ul {
  display: flex;
}
.c-form-buttonset > ul > li {
  flex: 0 1 auto;
}
.c-form-buttonset > ul > li:not(:last-child) {
  border-right: 1px solid #666;
}
.c-form-buttonset input {
  display: none;
}
.c-form-buttonset input + span {
  display: inline-flex;
  position: relative;
  align-items: center;
  justify-content: center;
  height: 2.5em;
  padding-top: calc(0.5em - 1px);
  padding-right: calc(0.75em - 1px);
  padding-bottom: calc(0.5em - 1px);
  padding-left: calc(0.75em - 1px);
  background-color: #fff;
  box-shadow: none;
  font-size: 1.4rem;
  line-height: 1.5;
  vertical-align: top;
  cursor: pointer;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.c-form-buttonset input + span:hover {
  background-color: #e5e5e5;
}
.c-form-buttonset input:checked + span {
  background-color: #485fc7;
  color: #fff;
}
.c-form-buttonset input:checked + span:hover {
  background-color: #3e56c4;
}

.p-header-main {
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100px;
  transition: 0.5s ease;
}
.page-top .p-header-main {
  display: none;
}
.screen-visual-over .p-header-main {
  height: 65px;
  background: #fff;
}
.p-header-main__container {
  height: 100%;
}
.p-header-main__row {
  display: flex;
  align-items: center;
  height: 100%;
}
.p-header-main__col-logo {
  flex: 1 1 auto;
}
.p-header-main__col-main {
  display: flex;
  flex: 0 0 auto;
  margin-right: -20px;
  margin-left: -20px;
}
.p-header-main__col-menu {
  flex: 0 0 auto;
  padding-right: 20px;
  padding-left: 20px;
}
.p-header-main__col-side {
  flex: 0 0 auto;
  padding-right: 20px;
  padding-left: 20px;
}
.p-header-main__row-side {
  display: flex;
  align-items: center;
  margin-right: -10px;
  margin-left: -10px;
}
.p-header-main__col-sns {
  flex: 0 0 auto;
  padding-right: 10px;
  padding-left: 10px;
}
.p-header-main__col-lang {
  flex: 0 0 auto;
  padding-right: 10px;
  padding-left: 10px;
}
.p-header-main__logo {
  width: 200px;
}
.p-header-main__logo a {
  display: block;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-header-main__logo a:hover {
  opacity: 0.75;
}
.p-header-main__logo svg {
  fill: #fff;
  display: block;
  width: 100%;
  transition: 0.5s ease;
}
.screen-visual-over .p-header-main__logo svg {
  fill: #000;
}
.p-header-main__menu {
  color: #fff;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
  transition: 0.5s ease;
}
.screen-visual-over .p-header-main__menu {
  color: #000;
}
.p-header-main__menu > ul {
  display: flex;
  align-items: center;
  margin-right: -17.5px;
  margin-left: -17.5px;
}
.p-header-main__menu > ul > li {
  flex: 0 0 auto;
  padding-right: 17.5px;
  padding-left: 17.5px;
}
.p-header-main__menu a {
  display: inline-block;
}
.p-header-main__menu a:after {
  height: 2px;
  background: #fff;
}
.screen-visual-over .p-header-main__menu a:after {
  background: #000;
}
.p-header-main__sns > ul {
  display: flex;
  margin-right: -10px;
  margin-left: -10px;
}
.p-header-main__sns > ul > li {
  flex: 0 0 auto;
  padding-right: 10px;
  padding-left: 10px;
}
.p-header-main__sns a {
  display: block;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-header-main__sns a:hover {
  opacity: 0.75;
}
.p-header-main__sns svg {
  fill: #fff;
  display: block;
  width: 100%;
  height: 100%;
  transition: 0.5s ease;
}
.screen-visual-over .p-header-main__sns svg {
  fill: #000;
}
.p-header-main__sns [data-sns=twitter] {
  width: 20px;
  height: 21px;
}
.screen-visual-over .p-header-main__sns [data-sns=twitter] svg {
  fill: #1d9bf0;
}
.p-header-main__sns [data-sns=instagram] {
  width: 18px;
  height: 21px;
}

.p-header-button {
  display: none;
  z-index: 1002;
  position: fixed;
  top: 15px;
  right: 15px;
  width: 80px;
  height: 80px;
}
.page-top .p-header-button {
  display: block;
}
.menu-opened .p-header-button {
  display: block;
}
.p-header-button a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #000;
  transition: 0.5s ease;
}
.p-header-button a > span {
  display: block;
  position: relative;
  width: 60px;
  height: 16px;
  transition: inherit;
}
.p-header-button a > span > span {
  display: block;
  position: absolute;
  height: 2px;
  background: #fff;
  transition: inherit;
}
.screen-visual-over .p-header-button a > span > span {
  filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.5));
}
.p-header-button a > span > span:nth-child(1) {
  top: 0;
  right: 0;
  width: 60px;
}
.p-header-button a > span > span:nth-child(2) {
  top: 14px;
  left: 0;
  width: 30px;
}
.p-header-button a:hover > span > span:nth-child(1) {
  width: 30px;
}
.p-header-button a:hover > span > span:nth-child(2) {
  width: 60px;
}
.menu-ready .p-header-button a > span {
  transform: rotateX(360deg);
}
.menu-ready .p-header-button a > span > span:nth-child(1) {
  top: 4px;
  right: -2px;
  width: 30px;
  transform: rotate(30deg);
}
.menu-ready .p-header-button a > span > span:nth-child(2) {
  top: 11px;
  right: 0;
  left: auto;
  width: 60px;
}

.p-header-nav {
  display: none;
  z-index: 1001;
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  transform: translateX(100%);
  opacity: 0;
  transition: 0.3s ease;
}
.menu-ready .p-header-nav {
  display: block;
}
.menu-opened .p-header-nav {
  transform: translateX(0);
  opacity: 1;
}
.p-header-nav__content {
  width: 100%;
  max-width: 1200px;
  height: 100%;
  margin-left: auto;
  overflow: auto;
  background: #000;
}
.p-header-nav__inner {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 900px;
  height: 100%;
  margin-right: auto;
  margin-left: auto;
  padding: 150px 50px 0;
}
.p-header-nav__inner:after {
  display: block;
  flex: 0 0 auto;
  width: 100%;
  height: 150px;
  content: "";
}
.p-header-nav__col-menu {
  flex: 1 1 auto;
}
.p-header-nav__col-bottom {
  flex: 0 0 auto;
  margin-top: 100px;
}
.p-header-nav__row-bottom {
  display: flex;
}
.p-header-nav__col-sns {
  flex: 1 1 auto;
}
.p-header-nav__col-lang {
  flex: 0 0 auto;
  width: 200px;
}
.p-header-nav__menu {
  display: flex;
  color: #fff;
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}
.p-header-nav__menu > ul {
  margin-right: -55px;
  margin-bottom: -35px;
  margin-left: -55px;
}
.p-header-nav__menu > ul > li {
  margin-bottom: 35px;
  padding-right: 55px;
  padding-left: 55px;
}
.p-header-nav__menu a:after {
  height: 2px;
  background: #fff;
}
.p-header-nav__booking {
  display: none;
}
.p-header-nav__sns > ul {
  display: flex;
  margin-right: -10px;
  margin-left: -10px;
}
.p-header-nav__sns > ul > li {
  flex: 0 0 auto;
  padding-right: 10px;
  padding-left: 10px;
}
.p-header-nav__sns a {
  display: block;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-header-nav__sns a:hover {
  opacity: 0.75;
}
.p-header-nav__sns [data-sns=twitter] {
  width: 20px;
  height: 21px;
}
.p-header-nav__sns [data-sns=instagram] {
  width: 18px;
  height: 21px;
}
.p-header-nav__sns svg {
  fill: #fff;
  display: block;
  width: 100%;
  height: 100%;
}

.p-header-booking {
  padding: 4vw 3.3333vw;
  background: #6a6a6a;
  color: #fff;
}
.p-header-booking__head {
  margin-bottom: 2.6667vw;
}
.p-header-booking__heading {
  font-weight: 700;
  font-size: 3.2vw;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}
.p-header-booking__note {
  margin-bottom: 3.3333vw;
  font-weight: 700;
  font-size: 2.4vw;
  line-height: 1.5;
}
.p-header-booking__tel {
  margin-bottom: 3.3333vw;
  font-weight: 500;
  font-size: 2.6667vw;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
  text-align: center;
}
.p-header-booking__list > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.6667vw;
  margin-bottom: -2vw;
  margin-left: -0.6667vw;
}
.p-header-booking__list > ul > li {
  flex: 0 0 auto;
  width: 25%;
  margin-bottom: 2vw;
  padding-right: 0.6667vw;
  padding-left: 0.6667vw;
}
.p-header-booking__list a {
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-header-booking__list a dl dt {
  display: block;
  height: 8vw;
  font-size: 0;
  text-align: center;
}
.p-header-booking__list a dl dt svg {
  fill: #fff;
  display: inline-block;
  height: 100%;
}
.p-header-booking__list a dl dd {
  margin-top: 1.3333vw;
  font-size: 2.1333vw;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}

.p-footer {
  padding-top: 80px;
  padding-bottom: 100px;
}
.page-top .p-footer {
  color: #fff;
}
.page-top .p-footer svg {
  fill: #fff;
}
.p-footer__row {
  display: flex;
}
.p-footer__row:not(:last-child) {
  margin-bottom: 25px;
}
.p-footer__col-info {
  flex: 1 1 auto;
}
.p-footer__col-sns {
  flex: 0 0 auto;
  padding-top: 10px;
}
.p-footer__col-menu {
  flex: 1 1 auto;
}
.p-footer__col-copyright {
  flex: 0 0 auto;
}

.p-footer-info__logo {
  width: 241px;
}
.p-footer-info__logo svg {
  display: block;
  width: 100%;
}
.p-footer-info__tel {
  margin-top: 30px;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
}
.p-footer-info__tel > ul {
  display: flex;
  margin-right: -0.5em;
  margin-left: -0.5em;
}
.p-footer-info__tel > ul > li {
  flex: 0 0 auto;
  padding-right: 0.5em;
  padding-left: 0.5em;
}
.p-footer-info__tel-another {
  margin-top: 10px;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
}

.p-footer-sns > ul {
  display: flex;
  margin-right: -10px;
  margin-left: -10px;
}
.p-footer-sns > ul > li {
  flex: 0 0 auto;
  padding-right: 10px;
  padding-left: 10px;
}
.p-footer-sns a {
  display: block;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-footer-sns a:hover {
  opacity: 0.75;
}
.p-footer-sns a[data-sns=twitter] {
  width: 20px;
}
.p-footer-sns a[data-sns=twitter] svg {
  fill: #1d9bf0;
}
.page-top .p-footer-sns a[data-sns=twitter] svg {
  fill: #fff;
}
.p-footer-sns a[data-sns=instagram] {
  width: 20px;
}
.p-footer-sns a svg {
  display: block;
  width: 100%;
}

.p-footer-menu > ul {
  display: flex;
  margin-right: -14.5px;
  margin-left: -14.5px;
}
.p-footer-menu > ul > li {
  flex: 0 0 auto;
  padding-right: 14.5px;
  padding-left: 14.5px;
}
.p-footer-menu a {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
}
.p-footer-menu a:after {
  height: 2px;
  background: #000;
}
.page-top .p-footer-menu a:after {
  background: #fff;
}
.p-footer-copyright small {
  font-weight: 500;
  font-size: 1.2rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.page-index .p-footer-copyright {
  z-index: 1;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding-bottom: 50px;
  text-align: center;
}
.page-index .p-footer-copyright small {
  color: #fff;
}

.p-footer-banner {
  padding-top: 70px;
}
.p-footer-banner.on-screen {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.p-footer-banner.on-screen.is-screen {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}
.p-footer-banner__main {
  font-size: 0;
  text-align: center;
}
.p-footer-banner__main img {
  display: inline-block;
}

.p-common-text__container {
  font-size: 1.5rem;
  line-height: 1.85;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}

.p-common-content__container {
  max-width: 1500px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 50px;
  padding-bottom: 80px;
  background: #000;
  color: #fff;
}
.--none-top .p-common-content__container {
  padding-top: 0;
}
.p-common-notfound {
  font-size: 1.5rem;
  line-height: 1.85;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}
.p-common-notfound__head {
  margin-bottom: 30px;
  font-weight: 700;
  font-size: 2.6rem;
  text-align: center;
}
.p-common-notfound__body {
  text-align: center;
}
.p-common-notfound__button {
  margin-top: 30px;
  font-size: 0;
  text-align: center;
}
.p-common-notfound__button a {
  display: inline-block;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}
.p-common-notfound__button a:after {
  height: 2px;
}

.p-section:not(:last-child) {
  margin-bottom: 50px;
}
.page-loaded .p-section {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.page-loaded.page-loaded-transition .p-section {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}
.page-loaded.page-loaded-transition .p-section:nth-of-type(1) {
  transition-delay: 250ms;
}
.page-loaded.page-loaded-transition .p-section:nth-of-type(2) {
  transition-delay: 500ms;
}
.page-loaded.page-loaded-transition .p-section:nth-of-type(3) {
  transition-delay: 750ms;
}

.p-index-main {
  display: flex;
  z-index: 1;
  position: relative;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  min-height: 750px;
}
.p-index-main__head {
  margin-bottom: 60px;
}
.p-index-main__logo {
  width: 592px;
  height: 103px;
  margin-right: auto;
  margin-left: auto;
}
.p-index-main__logo svg {
  fill: #fff;
  display: block;
  width: 100%;
  height: 100%;
}
.p-index-main__catch {
  margin-top: 30px;
  color: #fff;
  font-weight: 700;
  font-size: 2.3rem;
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}
.p-index-main__enter {
  margin-bottom: 60px;
}
.p-index-main__lang {
  width: 250px;
  margin-right: auto;
  margin-left: auto;
}
.p-index-main__select {
  position: relative;
  width: 100%;
  height: 40px;
}
.p-index-main__select:before {
  display: block;
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  width: 11px;
  height: 6px;
  margin: auto;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20384%20224%22%20fill%3D%22%23000%22%3E%3Cpath%20d%3D%22M191.99%2C224c-8.19%2C0-16.38-3.12-22.62-9.38L9.37%2C54.62C-3.12%2C42.12-3.12%2C21.88%2C9.37%2C9.38s32.75-12.5%2C45.25%2C0L191.99%2C146.8%2C329.38%2C9.4c12.5-12.5%2C32.75-12.5%2C45.25%2C0s12.5%2C32.75%2C0%2C45.25L214.63%2C214.65c-6.25%2C6.25-14.45%2C9.35-22.65%2C9.35Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.p-index-main__select select {
  display: block;
  width: 100%;
  height: 100%;
  padding: 12px 20px;
  border-radius: 8px;
  background: #fff;
  color: #000;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}
.p-index-main__select i[data-icon=earth]:before {
  display: block;
  width: 15px;
  height: 15px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20512%20512%22%3E%3Cpath%20d%3D%22M512%2C256c0%2C141.4-114.6%2C256-256%2C256S0%2C397.4%2C0%2C256%2C114.6%2C0%2C256%2C0s256%2C114.6%2C256%2C256ZM51.68%2C295.1l31.73%2C6.4c7.86%2C1.6%2C16-.9%2C21.69-6.6l15.4-15.4c11.5-12.4%2C31.1-8.4%2C38.4%2C6.3l9.3%2C18.5c3.9%2C9.6%2C14.6%2C14.8%2C25.3%2C14.8%2C15.2%2C0%2C26.1-13.7%2C21.7-28.3l-5.9-19.9c-4.7-15.4%2C6.9-30.9%2C23-30.9h2.3c12.5%2C0%2C25.9-6.7%2C33.3-17.8l10.7-16.1c5.6-8.4%2C5.3-19.5-.8-27.7l-16.1-21.5c-10.3-13.7-3.3-33.5%2C13.4-37.7l17-5.1c7.5-1%2C13.6-6.3%2C16.5-13.5l16.3-40.91c-21.5-7.57-44.7-11.69-69.8-11.69-114%2C0-208%2C93.1-208%2C208%2C0%2C13.4%2C2.16%2C26.5%2C4.58%2C39.1h0Zm398.72%2C5.3l-15.8%2C4.5c-6.7%2C1.8-13.8-.9-17.5-6.7l-2-3.1c-6-9.4-16.4-16-27.6-16s-22.4%2C6.6-27.6%2C16l-6.1%2C9.5c-1.4%2C2.2-3.3%2C4.1-5.6%2C4.5l-37.1%2C21c-17.2%2C10.1-24.6%2C32.4-17%2C51.3l6.4%2C12.4c8.6%2C19.2%2C30.7%2C28.5%2C49.6%2C21.1l3.4-1.8c10.1-2.9%2C21.3-1.3%2C30%2C5l1.5%2C1.1c37.2-29.5%2C64.1-71.4%2C74.4-119.5-3-.3-6-.1-9%2C.7h0Zm-294.3%2C67.1l32%2C8c8.6%2C2.2%2C17.3-3%2C19.4-11.6%2C2.2-8.6-3-17.3-11.6-19.4l-32-8c-8.6-2.2-17.3%2C3-19.4%2C11.6-2.2%2C8.6%2C3%2C17.3%2C11.6%2C19.4h0Zm80.4-39.4c-2.2%2C8.6%2C3%2C17.3%2C11.6%2C19.4%2C8.6%2C2.2%2C17.3-3%2C19.4-11.6l8-32c2.2-8.6-3-17.3-11.6-19.4-8.6-2.2-17.3%2C3-19.4%2C11.6l-8%2C32Zm85.2-207.3l-16%2C32c-4%2C7.9-.8%2C17.6%2C7.1%2C21.5%2C7.9%2C4%2C17.6%2C.8%2C21.5-7.1l16-32c4-7.9%2C.8-17.6-7.1-21.5-7.9-4-17.6-.8-21.5%2C7.1h0Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.p-index-main__note {
  margin-top: 25px;
  color: #fff;
  font-weight: 700;
  font-size: 1.3rem;
  line-height: 1.6;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
}

.p-index-enter {
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-index-enter__col-under, .p-index-enter__col-over {
  flex: 0 0 auto;
  width: 200px;
}
.p-index-enter__col-age {
  flex: 0 0 auto;
  padding-right: 45px;
  padding-left: 45px;
}
.p-index-enter__age {
  color: #fff;
  font-weight: 200;
  font-size: 10.5rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}
.p-index-enter__under a, .p-index-enter__over a {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 70px;
  border: 3px solid #fff;
  color: #fff;
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-index-enter__under a:before, .p-index-enter__over a:before {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 8px;
  height: 15px;
  margin: auto;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.p-index-enter__under a {
  border-color: #a3a3a3;
  background: #a3a3a3;
}
.p-index-enter__under a:before {
  left: 20px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20224%20384%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M191.98%2C384c-8.19%2C0-16.38-3.12-22.62-9.38L9.37%2C214.62c-12.5-12.5-12.5-32.75%2C0-45.25L169.36%2C9.38c12.5-12.5%2C32.75-12.5%2C45.25%2C0s12.5%2C32.75%2C0%2C45.25L77.24%2C192l137.39%2C137.4c12.5%2C12.5%2C12.5%2C32.75%2C0%2C45.25-6.25%2C6.25-14.45%2C9.35-22.65%2C9.35Z%22%2F%3E%3C%2Fsvg%3E");
}
.p-index-enter__under a:hover {
  background: transparent;
}
.p-index-enter__over a {
  border-color: #e20000;
  background: #e20000;
}
.p-index-enter__over a:before {
  right: 20px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20224%20384%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M32%2C384c-8.19%2C0-16.38-3.12-22.62-9.37-12.5-12.5-12.5-32.75%2C0-45.25L146.8%2C192.01%2C9.38%2C54.62C-3.12%2C42.12-3.12%2C21.87%2C9.38%2C9.37s32.75-12.5%2C45.25%2C0L214.63%2C169.36c12.5%2C12.5%2C12.5%2C32.75%2C0%2C45.25L54.63%2C374.6c-6.25%2C6.3-14.44%2C9.4-22.63%2C9.4Z%22%2F%3E%3C%2Fsvg%3E");
}
.p-index-enter__over a:hover {
  background: transparent;
}

.p-index-background {
  position: absolute;
  width: 100%;
  height: 100%;
}
.p-index-background:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  content: "";
}
.p-index-background img {
  -o-object-fit: cover;
  display: block;
  width: 100%;
  height: 100%;
     object-fit: cover;
}

.p-firstview {
  display: block;
  width: 100%;
}
.p-firstview__top {
  position: relative;
}
.page-loaded .p-firstview__top:before {
  display: block;
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  content: "";
  transition: 0.5s ease;
}
.page-loaded.page-loaded-transition .p-firstview__top:before {
  visibility: hidden;
  opacity: 0;
}
.p-firstview__slide {
  position: relative;
}
.p-firstview__bottom {
  margin-top: 50px;
}
.p-firstview__more {
  margin-top: 30px;
  font-size: 0;
  text-align: center;
}

.p-firstview-logo {
  z-index: 2;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 592px;
  transform: translate(-50%, -50%);
}
.p-firstview-logo svg {
  fill: #000;
  display: block;
  width: 100%;
}
.no-js .p-firstview-logo svg {
  fill: #fff;
}
.page-loaded .p-firstview-logo svg {
  fill: #000;
  transition: 0.5s ease;
}
.page-loaded.page-loaded-transition .p-firstview-logo svg {
  fill: #fff;
}

.p-firstview-slide {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 600px;
  overflow: hidden;
}
.p-firstview-slide__pager {
  display: flex;
  z-index: 1;
  position: absolute;
  top: 0;
  right: 40px;
  align-items: center;
  width: 8px;
  height: 100%;
}
.p-firstview-slide__pager .swiper-pagination-bullets .swiper-pagination-bullet {
  display: block;
  width: 8px;
  height: 8px;
  margin: 0;
  background: #fff;
  opacity: 1;
}
.p-firstview-slide__pager .swiper-pagination-bullets .swiper-pagination-bullet:not(:last-child) {
  margin-bottom: 15px;
}
.p-firstview-slide__pager .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #e20000;
}

.p-firstview-slide-item {
  display: block;
  width: 100%;
  height: 100%;
  transition: 5s linear;
}
.p-firstview-slide-item img,
.p-firstview-slide-item video {
  -o-object-fit: cover;
  display: block;
  width: 100%;
  height: 100%;
     object-fit: cover;
}
.p-firstview-slide-item__movie {
  width: 100%;
  height: 100%;
}
.p-firstview-slide-item__movie [data-fv-movie] {
  width: 100%;
  height: 100%;
}
.swiper-slide-active .p-firstview-slide-item {
  transform: scale(1.05);
}

.p-firstview-bottom {
  width: 100%;
  overflow: hidden;
}
.p-firstview-bottom__inner .swiper-wrapper {
  transition-timing-function: linear;
}
.p-firstview-bottom__inner img {
  display: block;
  width: 100%;
}

.p-firstview-lower {
  display: block;
  z-index: 1;
  position: relative;
  width: 100%;
  height: 360px;
  overflow: hidden;
}
.p-firstview-lower__visual {
  width: 100%;
  height: 100%;
  background: #000;
}
.p-firstview-lower__visual [data-fv-lower] {
  width: 100%;
  height: 100%;
}
.p-firstview-lower__visual [data-fv-lower=pc] {
  display: block;
}
.p-firstview-lower__visual [data-fv-lower=sp] {
  display: none;
}
.p-firstview-lower__visual a {
  display: block;
  width: 100%;
  height: 100%;
}
.p-firstview-lower__visual img,
.p-firstview-lower__visual video {
  -o-object-fit: cover;
  display: block;
  width: 100%;
  height: 100%;
     object-fit: cover;
}
.p-firstview-lower__heading {
  display: flex;
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #fff;
  font-weight: 700;
  font-size: 6rem;
  line-height: 0.8;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
  pointer-events: none;
}
.p-firstview-lower__heading > * {
  display: inline-block;
}
.p-firstview-lower__heading > * > span {
  display: inline-block;
  transform: translateY(100%);
  opacity: 0;
}
.no-js .p-firstview-lower__heading > * > span {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
}
.page-loaded.page-loaded-transition .p-firstview-lower__heading > * > span {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.2s linear;
}

.p-firstview-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 1.4rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.16em;
}
.p-firstview-more__text {
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateX(12.5px);
}
.p-firstview-more__text:after {
  display: block;
  width: 80px;
  height: 1px;
  margin-left: 10px;
  background: #e20000;
  content: "";
}
.p-firstview-more__text span {
  display: inline-block;
  position: relative;
}
.p-firstview-more__text span:before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background: #000;
  content: "";
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-firstview-more__circle {
  position: relative;
  width: 50px;
  height: 50px;
  transform: translateX(-12.5px);
  border: 1px solid #e20000;
  border-radius: 100px;
}
.p-firstview-more__circle:before {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 7px;
  height: 7px;
  margin: auto;
  border-radius: 100px;
  background: #e20000;
  content: "";
}
.p-firstview-more:hover .p-firstview-more__text span:before {
  width: 100%;
}
.p-firstview-more:hover .p-firstview-more__circle:before {
  animation: pound 0.7s ease infinite;
}

[data-top-section=news] {
  padding-top: 120px;
}

.p-news {
  display: block;
  width: 100%;
}
.p-news__head {
  margin-bottom: 35px;
}
.p-news__body.on-screen {
  transform: translateY(20px);
  opacity: 0;
}
.p-news__body.on-screen.is-screen {
  transform: translateY(0%);
  opacity: 1;
  transition: 0.5s ease;
}
.p-news__slide > ul {
  display: flex;
}
.p-news__slide > ul > li {
  flex: 0 0 auto;
  width: 270px;
}
.p-news__pager {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 40px;
}
.p-news__pager .js-news-slide__prev,
.p-news__pager .js-news-slide__next {
  display: block;
  flex: 0 0 auto;
  width: 25px;
  height: 10px;
  cursor: pointer;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-news__pager .js-news-slide__prev svg,
.p-news__pager .js-news-slide__next svg {
  fill: #e20000;
  display: block;
  width: 100%;
}
.p-news__pager .js-news-slide__prev.swiper-button-disabled,
.p-news__pager .js-news-slide__next.swiper-button-disabled {
  opacity: 0;
}
.p-news__pager .js-news-slide__pager {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  justify-content: center;
  width: auto;
  margin-bottom: -5px;
}
.p-news__pager .js-news-slide__pager .swiper-pagination-bullet {
  display: block;
  width: 7px;
  height: 7px;
  margin: 0 7.5px 5px;
  background: #fff;
  opacity: 1;
}
.p-news__pager .js-news-slide__pager .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #e20000;
}

.p-news-item {
  display: block;
  position: relative;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-news-item__head {
  width: calc(100% - 20px);
}
.p-news-item__image img {
  display: block;
  width: 100%;
}
.p-news-item__body {
  margin-top: -20px;
  padding-left: 20px;
}
.p-news-item__inner {
  position: relative;
  width: 100%;
  min-height: 140px;
  padding: 15px 35px;
  background: #efefef;
}
.p-news-item__date {
  position: absolute;
  top: 40px;
  left: 0;
  transform: translateX(-50%);
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  filter: drop-shadow(-2px 5px 5px #fff);
}
.p-news-item__date time {
  writing-mode: vertical-rl;
}
.p-news-item__title {
  -webkit-box-orient: vertical;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  overflow: hidden;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}

.p-news-modal {
  display: none;
  visibility: hidden;
  z-index: 1010;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(106, 106, 106, 0.8);
  opacity: 0;
  transition: 0.3s ease;
}
.news-ready .p-news-modal {
  display: block;
}
.news-opened .p-news-modal {
  visibility: visible;
  opacity: 1;
}
.p-news-modal__content {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  max-width: 1080px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 40px;
  padding-left: 40px;
}
.p-news-modal__close a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin-left: auto;
  color: #fff;
  font-size: 4rem;
  text-align: center;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-news-modal__close a:before {
  display: block;
  width: 1em;
  height: 1em;
  content: "\f00d";
  font-weight: 700;
  line-height: 1;
  font-family: "Font Awesome 5 Free", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
  text-align: center;
}
.p-news-modal__close a:hover {
  color: #000;
}
.p-news-modal__inner {
  background: #fff;
  color: #000;
}

.p-news-detail {
  padding: 50px;
}
.p-news-detail__head {
  margin-bottom: 30px;
}
.p-news-detail__date {
  display: flex;
  align-items: center;
  margin-bottom: 5px;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
}
.p-news-detail__date:before {
  display: block;
  width: 10px;
  height: 1px;
  margin-right: 7px;
  background: #000;
  content: "";
}
.p-news-detail__title {
  font-weight: 500;
  font-size: 2.6rem;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-news-detail__image {
  margin-bottom: 20px;
  font-size: 0;
  text-align: center;
}
.p-news-detail__image img {
  display: inline-block;
}
.p-news-detail__article {
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.75;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}

[data-top-section=pickup] {
  padding-top: 200px;
}

.p-pickup {
  display: block;
  width: 100%;
}
.p-pickup__row {
  display: flex;
  z-index: 1;
  position: relative;
}
.p-pickup__back {
  z-index: -1;
  position: absolute;
  top: -85px;
  left: 0;
  width: 100%;
  transition: 100ms ease;
}
.p-pickup__head {
  flex: 0 0 auto;
  width: 360px;
  padding-top: 150px;
}
.p-pickup__heading {
  display: inline-block;
  filter: drop-shadow(1px 1px 5px rgba(255, 255, 255, 0.75));
}
.p-pickup__heading:before {
  margin-left: 0;
}
.p-pickup__body {
  flex: 1 1 auto;
}
.p-pickup__list > ul {
  display: flex;
  margin-right: -30px;
  margin-left: -30px;
}
.p-pickup__list > ul > li {
  flex: 0 0 auto;
  width: 33.3333333333%;
  padding-right: 30px;
  padding-left: 30px;
}
.on-screen .p-pickup__list > ul > li {
  transform: translateY(20px);
  opacity: 0;
  transition: 0.5s ease;
}
.on-screen.is-screen .p-pickup__list > ul > li {
  transform: translateY(0%);
  opacity: 1;
}

.p-pickup-item {
  display: block;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-pickup-item__head {
  position: relative;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-pickup-item__image img {
  display: block;
  width: 100%;
}
.p-pickup-item__class-label {
  z-index: 1;
  position: absolute;
  top: 10px;
  right: 10px;
}
.p-pickup-item__class-label[data-cast-class="1"] {
  width: 50px;
  height: 47px;
}
.p-pickup-item__class-label[data-cast-class="2"] {
  width: 36px;
  height: 47px;
}
.p-pickup-item__class-label[data-cast-class="3"] {
  width: 47px;
  height: 47px;
}
.p-pickup-item__class-label img {
  -o-object-fit: cover;
  -o-object-position: center center;
  display: block;
  width: 100%;
  height: 100%;
     object-fit: cover;
     object-position: center center;
}
.p-pickup-item__body {
  position: relative;
  margin-top: -42px;
  padding-left: 20px;
}
.p-pickup-item__date {
  display: flex;
  align-items: center;
  margin-bottom: 5px;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
}
.p-pickup-item__date:before {
  display: block;
  width: 10px;
  height: 1px;
  margin-right: 7px;
  background: #000;
  content: "";
}
.p-pickup-item__name {
  margin-bottom: 10px;
  color: #fff;
  font-weight: 500;
  font-size: 5rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.6));
}
.p-pickup-item__age {
  margin-bottom: 10px;
  color: #fff;
  font-weight: 500;
  font-size: 1.3rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.6));
}
.p-pickup-item__size {
  color: #fff;
  font-weight: 500;
  font-size: 1.3rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.6));
}
.p-pickup-item__arrow {
  position: absolute;
  right: 0;
  bottom: 35px;
  width: 25px;
}
.p-pickup-item__arrow svg {
  fill: #e20000;
  display: block;
}

[data-top-section=todaysgal] {
  padding-top: 137px;
}

.p-gal-today {
  z-index: 1;
  position: relative;
}
.p-gal-today__head {
  margin-bottom: 30px;
  font-size: 0;
  text-align: right;
}
.p-gal-today__back {
  z-index: -1;
  position: absolute;
  top: -75px;
  left: 0;
  width: 100%;
  transition: 100ms ease;
}
.p-gal-today__heading {
  display: inline-block;
  filter: drop-shadow(1px 1px 5px rgba(255, 255, 255, 0.75));
}
.p-gal-today__heading:before {
  margin-right: 0;
}
.p-gal-today__body.on-screen {
  transform: translateY(20px);
  opacity: 0;
}
.p-gal-today__body.on-screen.is-screen {
  transform: translateY(0%);
  opacity: 1;
  transition: 0.5s ease;
}
.p-gal-today__list > ul {
  display: flex;
  flex-wrap: wrap;
}
.p-gal-today__list > ul > li {
  flex: 0 0 auto;
  width: 20%;
}

.p-gal-today-item {
  display: block;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-gal-today-item__head {
  position: relative;
}
.p-gal-today-item__image img {
  display: block;
  width: 100%;
}
.p-gal-today-item__name {
  position: absolute;
  bottom: -30px;
  left: 25px;
  font-weight: 500;
  font-size: 4rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-gal-today-item__name span {
  writing-mode: vertical-rl;
}
.p-gal-today-item__class-label {
  z-index: 1;
  position: absolute;
  right: 10px;
  bottom: 65px;
}
.p-gal-today-item__class-label[data-cast-class="1"] {
  width: 50px;
  height: 47px;
}
.p-gal-today-item__class-label[data-cast-class="2"] {
  width: 36px;
  height: 47px;
}
.p-gal-today-item__class-label[data-cast-class="3"] {
  width: 47px;
  height: 47px;
}
.p-gal-today-item__class-label img {
  -o-object-fit: cover;
  -o-object-position: center center;
  display: block;
  width: 100%;
  height: 100%;
     object-fit: cover;
     object-position: center center;
}
.p-gal-today-item__body {
  margin-top: -50px;
  padding-left: 80px;
}
.p-gal-today-item__inner {
  position: relative;
  width: 100%;
  padding: 31.25px 25px;
  background: #fff;
}
.p-gal-today-item__age {
  margin-bottom: 5px;
  font-weight: 700;
  font-size: 1.3rem;
  line-height: 1.25;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-gal-today-item__size {
  margin-bottom: 5px;
  font-weight: 500;
  font-size: 1.3rem;
  line-height: 1.25;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-gal-today-item__schedule {
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.25;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-gal-today-item__arrow {
  position: absolute;
  top: 0;
  right: 28px;
  bottom: 0;
  width: 25px;
  height: 10px;
  margin: auto;
}
.p-gal-today-item__arrow svg {
  fill: #e20000;
  display: block;
}

.p-gal-content__container {
  max-width: 1500px;
  margin-right: auto;
  margin-left: auto;
}
.p-gal-content__tab {
  padding-right: 40px;
  padding-left: 40px;
}
.p-gal-content__datelist {
  margin-bottom: 1px;
}
.p-gal-tab {
  padding-top: 45px;
}
.p-gal-tab > ul {
  display: flex;
  justify-content: center;
}
.p-gal-tab > ul > li {
  flex: 0 0 auto;
}

.p-gal-tab-item {
  display: inline-block;
  position: relative;
  height: 100%;
}
.p-gal-tab-item__popup {
  display: inline-block;
  z-index: 1;
  position: absolute;
  top: -11px;
  left: 50%;
  width: 88px;
  padding: 11px 8px;
  transform: translate(-50%, -100%);
  background: #e20000;
  color: #fff;
  font-weight: 700;
  font-size: 1.2rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
  pointer-events: none;
}
.p-gal-tab-item__popup:after {
  display: block;
  z-index: -1;
  position: absolute;
  bottom: -5px;
  left: 50%;
  width: 10px;
  height: 10px;
  transform: rotate(45deg) translateX(-50%);
  background: #e20000;
  content: "";
}
.p-gal-tab-item > span {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 20px 30px;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-gal-tab-item:hover > span {
  background: #000;
  color: #fff;
}
.p-gal-tab-item.is-current > span {
  background: #000;
  color: #fff;
}
.p-gal-tab-item.is-current > span:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: #e20000;
  content: "";
}

.p-gal-datelist {
  z-index: 2;
  position: relative;
}
.p-gal-datelist__main > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5px;
  margin-bottom: -1px;
  margin-left: -0.5px;
}
.p-gal-datelist__main > ul > li {
  flex: 0 0 auto;
  width: 14.2857142857%;
  padding-right: 0.5px;
  padding-left: 0.5px;
  border-bottom: 1px solid #fff;
}
.datelist-ready .p-gal-datelist__main > ul {
  overflow: visible;
}
.datelist-opened .p-gal-datelist__main > ul {
  height: 100%;
}
.p-gal-datelist__item {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  padding: 18px 15px 25px;
  background: #000;
  color: #fff;
  font-weight: 700;
  line-height: 1.45;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
  text-align: center;
}
.p-gal-datelist__item:after {
  display: block;
  position: absolute;
  right: 0;
  bottom: 13px;
  left: 0;
  width: 12px;
  height: 7px;
  margin: auto;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2012%207%22%20fill%3D%22%23e20000%22%3E%3Cpath%20d%3D%22M6%2C7c-.26%2C0-.51-.1-.71-.29L.29%2C1.71C-.1%2C1.32-.1%2C.68%2C.29%2C.29S1.32-.1%2C1.71%2C.29L6%2C4.59%2C10.29%2C.29c.39-.39%2C1.02-.39%2C1.41%2C0s.39%2C1.02%2C0%2C1.41L6.71%2C6.71c-.2%2C.2-.45%2C.29-.71%2C.29Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-gal-datelist__item:hover:after {
  transform: translateY(3px);
}
.is-current .p-gal-datelist__item:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: #e20000;
  content: "";
}
.p-gal-datelist__date {
  display: block;
  font-size: 1.8rem;
}
.p-gal-datelist__week {
  display: block;
  font-size: 1.5rem;
}
.p-gal-datelist__lg {
  display: block;
}
.p-gal-datelist__sm {
  display: none;
}

.p-gal-datalist-sm {
  position: relative;
  height: 12vw;
}
.p-gal-datalist-sm__inner {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  max-width: 90.6667vw;
  margin: 0 auto;
}
.p-gal-datalist-sm__body {
  height: 0;
  margin-top: 1px;
  overflow: hidden;
  background: #fff;
  pointer-events: none;
}
.is-open .p-gal-datalist-sm__body {
  pointer-events: auto;
}
.p-gal-datalist-sm__body > ul > li:not(:last-child) {
  margin-bottom: 1px;
}

.p-gal-datelist-item {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  padding: 18px 15px 25px;
  background: #000;
  color: #fff;
  font-weight: 700;
  line-height: 1.45;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
  text-align: center;
}
.p-gal-datelist-item:after {
  display: block;
  position: absolute;
  right: 0;
  bottom: 13px;
  left: 0;
  width: 12px;
  height: 7px;
  margin: auto;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2012%207%22%20fill%3D%22%23e20000%22%3E%3Cpath%20d%3D%22M6%2C7c-.26%2C0-.51-.1-.71-.29L.29%2C1.71C-.1%2C1.32-.1%2C.68%2C.29%2C.29S1.32-.1%2C1.71%2C.29L6%2C4.59%2C10.29%2C.29c.39-.39%2C1.02-.39%2C1.41%2C0s.39%2C1.02%2C0%2C1.41L6.71%2C6.71c-.2%2C.2-.45%2C.29-.71%2C.29Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.is-open .p-gal-datelist-item:after {
  transform: rotate(180deg);
}
.p-gal-datelist-item.is-current:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: #e20000;
  content: "";
}
.p-gal-datelist-item.is-current:after {
  display: block;
}
.p-gal-datelist-item__date {
  display: block;
  font-size: 1.8rem;
}
.p-gal-datelist-item__week {
  display: block;
  font-size: 1.5rem;
}

.p-gal-list {
  background: #000;
}
.p-gal-list__main {
  padding-top: 70px;
  padding-bottom: 70px;
}
.p-gal-list__main > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -16.5px;
  margin-bottom: -30px;
  margin-left: -16.5px;
}
.p-gal-list__main > ul > li {
  width: 25%;
  margin-bottom: 30px;
  padding-right: 16.5px;
  padding-left: 16.5px;
}

.p-gal-item {
  display: block;
  color: #fff;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-gal-item__head {
  z-index: 1;
  position: relative;
}
.p-gal-item__body {
  padding-top: 10px;
}
.p-gal-item__newface-label {
  z-index: 1;
  position: absolute;
  top: 0;
  right: 0;
  padding: 5px 10px;
  background: #e20000;
  color: #fff;
  font-weight: 700;
  font-size: 1.1rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-gal-item__class-label {
  z-index: 1;
  position: absolute;
  right: 10px;
  bottom: 10px;
}
.p-gal-item__class-label[data-cast-class="1"] {
  width: 50px;
  height: 47px;
}
.p-gal-item__class-label[data-cast-class="2"] {
  width: 36px;
  height: 47px;
}
.p-gal-item__class-label[data-cast-class="3"] {
  width: 47px;
  height: 47px;
}
.p-gal-item__class-label img {
  -o-object-fit: cover;
  -o-object-position: center center;
  display: block;
  width: 100%;
  height: 100%;
     object-fit: cover;
     object-position: center center;
}
.p-gal-item__image {
  z-index: 0;
  position: relative;
  overflow: hidden;
}
.p-gal-item__image img {
  display: block;
  width: 100%;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-gal-item__top {
  display: flex;
  align-items: flex-end;
  margin-bottom: 5px;
}
.p-gal-item__col-name {
  flex: 1 1 auto;
}
.p-gal-item__col-age {
  flex: 0 0 auto;
  padding-bottom: 8px;
}
.p-gal-item__name {
  font-weight: 500;
  font-size: 3rem;
  line-height: 1.5;
  letter-spacing: 0.08em;
}
.p-gal-item__age {
  margin-left: 0.5em;
  font-weight: 700;
  font-size: 1.3rem;
  line-height: 1.5;
  letter-spacing: 0.08em;
}
.p-gal-item__size {
  margin-bottom: 10px;
  font-weight: 500;
  font-size: 1.3rem;
  line-height: 1.5;
  letter-spacing: 0.08em;
}
.p-gal-item__comment {
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.75;
  letter-spacing: 0.1em;
}
.p-gal-item__multilingual {
  margin-top: 20px;
  font-weight: 700;
  font-size: 1.3rem;
  line-height: 1;
  letter-spacing: 0.08em;
}
.p-gal-item__multilingual dl {
  display: flex;
  border: 1px solid #fff;
}
.p-gal-item__multilingual dl dt {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  padding: 12px 15px;
  border-right: 1px solid #fff;
}
.p-gal-item__multilingual dl dd {
  flex: 1 1 auto;
  padding: 10px 15px;
}
.p-gal-item__multilingual dl dd > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.25em;
  margin-bottom: -0.25em;
  margin-left: -0.25em;
}
.p-gal-item__multilingual dl dd > ul > li {
  flex: 0 0 auto;
  margin-bottom: 0.25em;
  padding-right: 0.25em;
  padding-left: 0.25em;
  font-weight: 500;
  line-height: 1.25;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-gal-item__multilingual dl dd > ul > li .flag-icon {
  display: block;
  font-size: 1.7rem;
}
.p-gal-item__brought {
  margin-top: 10px;
  font-weight: 500;
  font-size: 1.3rem;
  line-height: 1.5;
  letter-spacing: 0.08em;
}
.p-gal-item__brought span {
  font-weight: 700;
}
.p-gal-item__schedule {
  margin-top: 10px;
}
.p-gal-item__schedule span {
  display: flex;
  padding: 9px 15px;
  border: 1px solid #6a6a6a;
  color: #fff;
  font-weight: 500;
  font-size: 1.3rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}
.p-gal-item__schedule dl {
  display: flex;
  border: 1px solid #6a6a6a;
  color: #fff;
  font-size: 1.3rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-gal-item__schedule dl dt {
  flex: 0 0 auto;
  padding: 9px 20px;
  background: #6a6a6a;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.p-gal-item__schedule dl dd {
  flex: 1 1 auto;
  padding: 9px 15px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.p-gal-item:hover {
  transform: translateY(-5px);
}
.p-gal-item:hover .p-gal-item__image img {
  transform: scale(1.15);
}

[data-top-section=bottom] {
  padding-top: 122px;
  padding-bottom: 60px;
}

.p-bottom__row {
  display: flex;
  margin-right: -30px;
  margin-left: -30px;
}
.p-bottom__col {
  flex: 0 0 auto;
  width: 33.3333333333%;
  padding-right: 30px;
  padding-left: 30px;
}
.p-bottom__col.on-screen {
  transform: translateY(30px);
  opacity: 0;
}
.p-bottom__col.on-screen.is-screen {
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}

.p-bottom-content__head {
  margin-bottom: 15px;
}
.p-bottom-content__heading {
  font-size: 2rem;
  text-align: left;
}
.p-bottom-content__heading > * {
  filter: drop-shadow(1px 1px 5px rgba(255, 255, 255, 0.75));
}
.p-bottom-content__heading:before {
  margin-bottom: 15px;
  margin-left: 0;
}
.p-sns-twitter-image > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5px;
  margin-bottom: -1px;
  margin-left: -0.5px;
}
.p-sns-twitter-image > ul > li {
  flex: 0 0 auto;
  width: 33.3333333333%;
  margin-bottom: 1px;
  padding-right: 0.5px;
  padding-left: 0.5px;
}
.p-sns-twitter-image img {
  -o-object-fit: cover;
  display: block;
  width: 100%;
     object-fit: cover;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-sns-twitter-image a {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-sns-twitter-image a:before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}
.p-sns-twitter-image a:after {
  display: block;
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  content: "";
}
.p-sns-twitter-image a img {
  -o-object-fit: cover;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
     object-fit: cover;
}
.p-sns-twitter-image a:hover img {
  transform: scale(1.1);
  opacity: 0.75;
}

.p-sns-twitter-timeline {
  width: 100%;
  height: 750px;
  overflow: auto;
}
.p-sns-twitter-timeline__inner iframe {
  display: block;
  width: 100%;
}

.p-update li:not(:last-child) {
  margin-bottom: 5px;
}

.p-update-item {
  display: flex;
  background: #fff;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-update-item__col-image {
  flex: 0 0 auto;
  width: 180px;
}
.p-update-item__col-body {
  flex: 1 1 auto;
  padding: 30px 30px 30px 20px;
}
.p-update-item__image {
  height: 100%;
}
.p-update-item__image img {
  -o-object-fit: contain;
  -o-object-position: top center;
  display: block;
  width: 100%;
  height: 100%;
     object-fit: contain;
     object-position: top center;
}
.p-update-item__date {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  font-weight: 500;
  font-size: 1.1rem;
  line-height: 1.2;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-update-item__date:before {
  display: block;
  width: 8px;
  height: 2px;
  margin-right: 5px;
  background: #e20000;
  content: "";
}
.p-update-item__title {
  margin-bottom: 5px;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.45;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-update-item__cast {
  display: flex;
}
.p-update-item__col-name {
  flex: 0 0 auto;
}
.p-update-item__col-age {
  flex: 0 0 auto;
  align-self: flex-end;
  margin-left: 10px;
}
.p-update-item__name {
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 1.2;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-update-item__age {
  font-weight: 700;
  font-size: 1.1rem;
  line-height: 1.75;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-update-item__size {
  margin-bottom: 13px;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-update-item__text {
  font-weight: 500;
  font-size: 1.3rem;
  line-height: 1.45;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}

.p-banner > ul > li:not(:last-child) {
  margin-bottom: 15px;
}
.p-banner img {
  display: block;
  width: 100%;
}
.p-banner a {
  display: block;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-banner a:hover {
  opacity: 0.75;
}

.p-background {
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p-background [data-background] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.p-background [data-background] span {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}
.p-background [data-background="1"] span:before {
  display: block;
  z-index: -1;
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  height: 77.1%;
  transform: skewY(-28.6deg) translateX(-50%) translateY(0);
  background: #1a1311;
  content: "";
}
.p-background [data-background="2"] span:before {
  display: block;
  z-index: -1;
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  height: 119%;
  transform: skewY(28.6deg) translateX(-50%) translateY(60%);
  background: #efefef;
  content: "";
}
.p-background [data-background="3"] span:before {
  display: block;
  z-index: -1;
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  height: 300%;
  transform: skewY(-28.6deg) translateX(-50%) translateY(-10.7%);
  background: #1a1311;
  content: "";
}

.p-breadcrumbs {
  padding-top: 30px;
  padding-bottom: 30px;
  font-size: 1.4rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}
.p-breadcrumbs__inner > ol {
  display: inline-flex;
  align-items: center;
}
.page-loaded .p-breadcrumbs__inner > ol {
  -webkit-clip-path: inset(0 100% 0 0);
  visibility: hidden;
          clip-path: inset(0 100% 0 0);
  opacity: 0;
}
.page-loaded.page-loaded-transition .p-breadcrumbs__inner > ol {
  -webkit-clip-path: inset(0);
  visibility: visible;
          clip-path: inset(0);
  opacity: 1;
  transition: 0.5s ease 250ms;
}
.p-breadcrumbs__inner > ol > li {
  display: flex;
  align-items: center;
}
.p-breadcrumbs__inner > ol > li:last-child a {
  color: #e20000;
  pointer-events: none;
}
.p-breadcrumbs__inner > ol > li:last-child a:after {
  background: #e20000;
}
.p-breadcrumbs__inner > ol > li:not(:last-child):after {
  display: block;
  width: 10px;
  height: 1px;
  margin-right: 10px;
  margin-left: 10px;
  background: #000;
  content: "";
}
.p-access-map__inner {
  height: 650px;
  overflow: hidden;
}
.p-access-map__inner iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
}

.p-ranking__container {
  max-width: 1500px;
  margin-right: auto;
  margin-left: auto;
}
.p-ranking__content > ul > li:not(:last-child) {
  margin-bottom: 60px;
}
.p-ranking__content > ul > li.on-screen {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.p-ranking__content > ul > li.on-screen.is-screen {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}

.p-ranking-content {
  background: #000;
}
.p-ranking-content__head {
  padding-top: 80px;
  padding-bottom: 50px;
}
.p-ranking-content__heading {
  color: #fff;
  font-size: 3rem;
}
.p-ranking-content__list > ul {
  display: flex;
  flex-wrap: wrap;
}
.p-ranking-content__list > ul > li {
  flex: 0 0 auto;
  width: 25%;
}
.p-ranking-content__list > ul > li[data-ranking-no="1"] {
  width: 100%;
}

.p-ranking-item {
  display: block;
  z-index: 1;
  position: relative;
}
.p-ranking-item__head {
  position: relative;
}
.p-ranking-item__image img {
  display: block;
  width: 100%;
}
.p-ranking-item__no {
  display: flex;
  position: absolute;
  top: 25px;
  right: 25px;
  align-items: center;
  justify-content: center;
  width: 111px;
  height: 62px;
  color: #000;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-ranking-item__no svg {
  fill: #000;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
[data-ranking-no="1"] .p-ranking-item__no {
  top: 50px;
  right: 200px;
  width: 155px;
  height: 78px;
  color: #ffcd4f;
  font-size: 3rem;
}
[data-ranking-no="1"] .p-ranking-item__no svg {
  fill: #ffcd4f;
}
[data-ranking-no="2"] .p-ranking-item__no {
  color: #aaa;
}
[data-ranking-no="2"] .p-ranking-item__no svg {
  fill: #aaa;
}
[data-ranking-no="3"] .p-ranking-item__no {
  color: #c47022;
}
[data-ranking-no="3"] .p-ranking-item__no svg {
  fill: #c47022;
}
.p-ranking-item__body {
  z-index: 2;
  position: relative;
  width: 100%;
  margin-top: -25px;
  color: #fff;
}
[data-ranking-no="1"] .p-ranking-item__body {
  position: absolute;
  bottom: 0;
  left: 0;
  margin-top: 0;
}
.p-ranking-item__inner {
  max-width: 1170px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 35px;
  padding-bottom: 80px;
  padding-left: 35px;
}
[data-ranking-no="1"] .p-ranking-item__inner {
  padding-top: 0;
  padding-bottom: 45px;
}
[data-ranking-no="1"] .p-ranking-item__row {
  display: flex;
  align-items: center;
}
[data-ranking-no="1"] .p-ranking-item__col-name {
  flex: 0 0 auto;
}
[data-ranking-no="1"] .p-ranking-item__col-data {
  flex: 1 1 auto;
  padding-left: 20px;
}
.p-ranking-item__name {
  margin-bottom: 8px;
  font-weight: 500;
  font-size: 4rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
[data-ranking-no="1"] .p-ranking-item__name {
  margin-bottom: 0;
  font-size: 6rem;
}
.p-ranking-item__age {
  margin-bottom: 3px;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-ranking-item__size {
  margin-bottom: 10px;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
[data-ranking-no="1"] .p-ranking-item__size {
  margin-bottom: 0;
}
.p-ranking-item__text {
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}

.p-about-content:not(:last-child) {
  margin-bottom: 80px;
}
.p-about-content__head {
  margin-bottom: 20px;
}
.p-about-content__body.on-screen {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.p-about-content__body.on-screen.is-screen {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}

.p-about-article {
  line-height: 2;
}
.p-about-article > p:not(:last-child) {
  margin-bottom: 1.5em;
}

.p-about-list > ul > li:not(:last-child) {
  margin-bottom: 35px;
}
.p-about-list > ul > li.on-screen {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.p-about-list > ul > li.on-screen.is-ready {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}
.p-about-list dl {
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}
.p-about-list dl dt {
  display: flex;
  font-weight: 700;
  font-size: 1.7rem;
}
.p-about-list dl dt:before {
  display: block;
  position: relative;
  top: 7px;
  flex: 0 0 auto;
  width: 4px;
  height: 16px;
  margin-right: 10px;
  background: #fff;
  content: "";
}
.p-about-list dl dd {
  font-weight: 500;
  font-size: 1.5rem;
}

.p-about-member > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -35px;
  margin-bottom: -35px;
  margin-left: -35px;
}
.p-about-member > ul > li {
  flex: 0 0 auto;
  width: 33.3333333333%;
  margin-bottom: 35px;
  padding-right: 35px;
  padding-left: 35px;
}
.p-about-member > ul > li.on-screen {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.p-about-member > ul > li.on-screen.is-screen {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}
.p-about-member > ul > li.on-screen.is-screen:nth-child(2) {
  transition-delay: 250ms;
}
.p-about-member > ul > li.on-screen.is-screen:nth-child(3) {
  transition-delay: 500ms;
}

.p-about-member-item {
  display: block;
  width: 100%;
}
.p-about-member-item__head {
  margin-bottom: 20px;
}
.p-about-member-item__body dl {
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}
.p-about-member-item__body dl dt {
  display: flex;
  font-weight: 700;
  font-size: 1.7rem;
}
.p-about-member-item__body dl dt:before {
  display: block;
  position: relative;
  top: 7px;
  flex: 0 0 auto;
  width: 4px;
  height: 16px;
  margin-right: 10px;
  background: #fff;
  content: "";
}
.p-about-member-item__body dl dd {
  font-weight: 500;
  font-size: 1.5rem;
}
.p-about-member-item__image {
  position: relative;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  overflow: hidden;
  border-radius: 320px;
}
.p-about-member-item__image:before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}
.p-about-member-item__image img {
  -o-object-fit: cover;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
     object-fit: cover;
}
.p-about-member-item__name {
  margin-bottom: 15px;
}
.p-about-member-item__name dl dd {
  font-size: 1.8rem;
  letter-spacing: 0.15em;
}
.p-about-member-item__comment {
  margin-bottom: 15px;
}
.p-about-member-item__sns dl {
  display: flex;
  align-items: center;
}
.p-about-member-item__sns dl dt {
  flex: 0 0 auto;
}
.p-about-member-item__sns dl dd {
  display: flex;
  flex: 1 1 auto;
  justify-content: flex-end;
}
.p-about-member-item__sns a {
  display: block;
  width: 18px;
  height: 18px;
}
.p-about-member-item__sns a svg {
  fill: #1d9bf0;
  display: block;
  width: 100%;
  height: 100%;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-about-member-item__sns a:hover svg {
  fill: #fff;
}

.p-about-contact {
  display: flex;
  padding: 35px 0;
  border: 1px solid #6a6a6a;
}
.p-about-contact__head {
  display: flex;
  position: relative;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 300px;
}
.p-about-contact__head:after {
  display: block;
  flex: 0 0 auto;
  width: 1px;
  height: 70px;
  margin: auto;
  background: #6a6a6a;
  content: "";
}
.p-about-contact__heading {
  flex: 1 1 auto;
  justify-content: center;
}
.p-about-contact__list {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  padding-right: 80px;
  padding-left: 80px;
}
.p-about-contact__list > ul {
  display: flex;
  align-items: center;
  margin-right: -30px;
  margin-left: -30px;
}
.p-about-contact__list > ul > li {
  flex: 0 0 auto;
  padding-right: 30px;
  padding-left: 30px;
}
.p-about-contact__list dl {
  display: flex;
  align-items: center;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}
.p-about-contact__list dl dt:after {
  content: "：";
}
.p-about-contact__list a {
  display: inline-block;
}
.p-about-contact__list a:after {
  background: #fff;
}
.p-about-contact__tel {
  margin-top: 20px;
  padding-right: 80px;
  padding-left: 80px;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
  text-align: center;
}
.p-about-contact__tel a {
  font-weight: bold;
}

.p-review__select {
  width: 200px;
  margin-left: auto;
  padding-bottom: 25px;
}
.p-review__pager {
  padding-bottom: 25px;
}
.p-review__list {
  padding-bottom: 25px;
}

.p-review-select {
  position: relative;
  width: 100%;
}
.p-review-select:before {
  display: block;
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  width: 11px;
  height: 6px;
  margin: auto;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20384%20224%22%20fill%3D%22%23000%22%3E%3Cpath%20d%3D%22M191.99%2C224c-8.19%2C0-16.38-3.12-22.62-9.38L9.37%2C54.62C-3.12%2C42.12-3.12%2C21.88%2C9.37%2C9.38s32.75-12.5%2C45.25%2C0L191.99%2C146.8%2C329.38%2C9.4c12.5-12.5%2C32.75-12.5%2C45.25%2C0s12.5%2C32.75%2C0%2C45.25L214.63%2C214.65c-6.25%2C6.25-14.45%2C9.35-22.65%2C9.35Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.p-review-select select {
  display: block;
  width: 100%;
  padding: 12.5px 20px;
  border-radius: 8px;
  background: #fff;
  color: #000;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}

.p-review-pager {
  display: flex;
  margin-right: -7.5px;
  margin-left: -7.5px;
  font-size: 0;
}
.p-review-pager .arrow-left {
  display: flex;
  flex: 1 1 auto;
  justify-content: flex-start;
}
.p-review-pager .arrow-right {
  display: flex;
  flex: 1 1 auto;
  justify-content: flex-end;
}
.p-review-pager .navigation {
  display: flex;
  flex: 0 0 auto;
}
.p-review-pager a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 35px;
  height: 35px;
  margin-right: 7.5px;
  margin-left: 7.5px;
  border-radius: 35px;
  background: #6a6a6a;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
}
.p-review-pager a.curpagerbox {
  background: #e20000;
  pointer-events: none;
}

.p-review-list > ul {
  margin-bottom: -20px;
}
.p-review-list > ul > li {
  margin-bottom: 20px;
}
.p-review-list > ul > li.on-screen {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.p-review-list > ul > li.on-screen.is-ready {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}

.p-review-item {
  display: flex;
  border: 1px solid #6a6a6a;
}
.p-review-item__head {
  display: flex;
  position: relative;
  flex: 0 0 auto;
  width: 480px;
  padding: 20px;
}
.p-review-item__head:after {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background: #6a6a6a;
  content: "";
}
.--profile .p-review-item__head {
  width: 330px;
}
.p-review-item__col-image {
  flex: 0 0 auto;
  width: 160px;
}
.p-review-item__col-data {
  flex: 1 1 auto;
  padding-left: 25px;
}
.--profile .p-review-item__col-data {
  padding-left: 0;
}
.p-review-item__body {
  flex: 1 1 auto;
  max-height: 200px;
  padding: 23px 30px 23px 25px;
}
.p-review-item__body.ps {
  position: relative;
}
.p-review-item__body.ps:hover .ps__rail-y, .p-review-item__body.ps:focus .ps__rail-y {
  opacity: 1;
}
.p-review-item__body .ps__rail-y {
  width: 10px;
  background-color: #6a6a6a;
  opacity: 1;
}
.p-review-item__body .ps__rail-y:hover, .p-review-item__body .ps__rail-y:focus, .p-review-item__body .ps__rail-y.ps--clicking {
  width: 10px;
}
.p-review-item__body .ps__rail-y:hover .ps__thumb-y, .p-review-item__body .ps__rail-y:focus .ps__thumb-y, .p-review-item__body .ps__rail-y.ps--clicking .ps__thumb-y {
  width: 100%;
  background-color: #e20000;
}
.p-review-item__body .ps__thumb-y {
  right: 0;
  width: 100%;
  border-radius: 0;
  background-color: #e20000;
}
.p-review-item__image {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
}
.p-review-item__image[href] img {
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-review-item__image[href]:hover img {
  transform: scale(1.1);
}
.p-review-item__image:before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}
.p-review-item__image img {
  -o-object-fit: cover;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: auto;
     object-fit: cover;
}
.p-review-item__data {
  padding-top: 7px;
}
.p-review-item__data > ul > li:not(:last-child) {
  margin-bottom: 5px;
}
.p-review-item__data dl {
  display: flex;
  font-size: 1.3rem;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-review-item__data dl dt {
  flex: 0 0 auto;
  width: 160px;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.p-review-item__data dl dd {
  flex: 1 1 auto;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.p-review-item__data dl a {
  text-decoration: underline;
}
.p-review-item__data dl a:hover {
  text-decoration: none;
}
.p-review-item__country {
  display: flex;
  align-items: center;
  height: 100%;
}
.p-review-item__country > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}
.p-review-item__country > ul > li {
  flex: 0 0 auto;
  padding-right: 5px;
  padding-left: 5px;
}
.p-review-item__country .flag-icon {
  display: block;
  font-size: 1.7rem;
}
.p-review-item__country svg {
  display: block;
  width: 25px;
}
.p-review-item__text {
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}
.p-review-item__star {
  display: flex;
  position: relative;
  align-items: center;
  height: 100%;
}
.p-review-item__star:before {
  display: block;
  width: 70px;
  height: 11px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2014%2011%22%20fill%3D%22%23888%22%3E%3Cpath%20d%3D%22M5.6%2C0C5.5%2C0%2C5.3%2C0%2C5.3%2C0.1%09c0%2C0-0.1%2C0.1-0.1%2C0.1l0%2C0l0%2C0l0%2C0.1L4.9%2C0.8C4.7%2C1.1%2C4.6%2C1.4%2C4.4%2C1.6L3.6%2C3.3L1.9%2C3.6L1%2C3.7L0.5%2C3.8l-0.1%2C0h0l0%2C0%09c-0.1%2C0-0.1%2C0-0.2%2C0.1C0%2C4-0.1%2C4.3%2C0%2C4.5c0%2C0.1%2C0%2C0.1%2C0.1%2C0.2l0%2C0l0%2C0l0%2C0l0.3%2C0.3l0.7%2C0.7l1.3%2C1.3L2.2%2C8.9l-0.1%2C1L2%2C10.4l0%2C0.1%09c0%2C0%2C0%2C0%2C0%2C0.1c0%2C0.1%2C0%2C0.1%2C0%2C0.2C2%2C10.9%2C2.2%2C11%2C2.5%2C11c0.1%2C0%2C0.1%2C0%2C0.1%2C0c0%2C0%2C0%2C0%2C0.1%2C0l0.1%2C0l0.4-0.2L4%2C10.2l1.6-0.9l1.6%2C0.9%09L8%2C10.6l0.4%2C0.2c0%2C0%2C0.1%2C0%2C0.1%2C0.1c0%2C0%2C0.1%2C0%2C0.1%2C0c0.2%2C0%2C0.4-0.1%2C0.4-0.3c0%2C0%2C0-0.1%2C0-0.1c0%2C0%2C0-0.1%2C0-0.1L9%2C9.9l-0.2-1L8.5%2C7.1%09l0.6-0.6l0.6-0.6l1.2-1.2C11%2C4.5%2C11%2C4.4%2C11%2C4.3C11%2C4.1%2C10.9%2C4%2C10.7%2C4l-0.3%2C0l-1-0.2c-0.7-0.1-1.3-0.2-2-0.4L6.6%2C1.7L6.2%2C0.8L6%2C0.4%09l0-0.1l0%2C0l0%2C0c0%2C0-0.1-0.1-0.1-0.1C5.8%2C0%2C5.7%2C0%2C5.6%2C0z%22%2F%3E%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: repeat-x;
  content: "";
}
.p-review-item__star:after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 0;
  height: 11px;
  margin-top: auto;
  margin-bottom: auto;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2014%2011%22%20fill%3D%22%23fbab01%22%3E%3Cpath%20d%3D%22M5.6%2C0C5.5%2C0%2C5.3%2C0%2C5.3%2C0.1%09c0%2C0-0.1%2C0.1-0.1%2C0.1l0%2C0l0%2C0l0%2C0.1L4.9%2C0.8C4.7%2C1.1%2C4.6%2C1.4%2C4.4%2C1.6L3.6%2C3.3L1.9%2C3.6L1%2C3.7L0.5%2C3.8l-0.1%2C0h0l0%2C0%09c-0.1%2C0-0.1%2C0-0.2%2C0.1C0%2C4-0.1%2C4.3%2C0%2C4.5c0%2C0.1%2C0%2C0.1%2C0.1%2C0.2l0%2C0l0%2C0l0%2C0l0.3%2C0.3l0.7%2C0.7l1.3%2C1.3L2.2%2C8.9l-0.1%2C1L2%2C10.4l0%2C0.1%09c0%2C0%2C0%2C0%2C0%2C0.1c0%2C0.1%2C0%2C0.1%2C0%2C0.2C2%2C10.9%2C2.2%2C11%2C2.5%2C11c0.1%2C0%2C0.1%2C0%2C0.1%2C0c0%2C0%2C0%2C0%2C0.1%2C0l0.1%2C0l0.4-0.2L4%2C10.2l1.6-0.9l1.6%2C0.9%09L8%2C10.6l0.4%2C0.2c0%2C0%2C0.1%2C0%2C0.1%2C0.1c0%2C0%2C0.1%2C0%2C0.1%2C0c0.2%2C0%2C0.4-0.1%2C0.4-0.3c0%2C0%2C0-0.1%2C0-0.1c0%2C0%2C0-0.1%2C0-0.1L9%2C9.9l-0.2-1L8.5%2C7.1%09l0.6-0.6l0.6-0.6l1.2-1.2C11%2C4.5%2C11%2C4.4%2C11%2C4.3C11%2C4.1%2C10.9%2C4%2C10.7%2C4l-0.3%2C0l-1-0.2c-0.7-0.1-1.3-0.2-2-0.4L6.6%2C1.7L6.2%2C0.8L6%2C0.4%09l0-0.1l0%2C0l0%2C0c0%2C0-0.1-0.1-0.1-0.1C5.8%2C0%2C5.7%2C0%2C5.6%2C0z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center left;
  background-size: contain;
  background-repeat: repeat-x;
  content: "";
}
.p-review-item__star[data-star="0"]:after {
  width: 0px;
}
.p-review-item__star[data-star="1"]:after {
  width: 14px;
}
.p-review-item__star[data-star="2"]:after {
  width: 28px;
}
.p-review-item__star[data-star="3"]:after {
  width: 42px;
}
.p-review-item__star[data-star="4"]:after {
  width: 56px;
}
.p-review-item__star[data-star="5"]:after {
  width: 70px;
}

.p-howto__section:not(:last-child) {
  margin-bottom: 80px;
}
.p-howto__section.on-screen {
  transform: translateY(20px);
  opacity: 0;
  transition: 1s ease;
}
.p-howto__section.on-screen.is-screen {
  transform: translateY(0);
  opacity: 1;
}

.p-howto-movie__inner {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}
.p-howto-movie__inner video {
  display: block;
  width: 100%;
  height: 100%;
}

.p-howto-flow > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.5px;
  margin-bottom: -1px;
  margin-left: -0.5px;
}
.p-howto-flow > ul > li {
  flex: 0 0 auto;
  width: 50%;
  margin-bottom: 1px;
  padding-right: 0.5px;
  padding-left: 0.5px;
}

.p-howto-flow-item {
  display: block;
  position: relative;
  width: 100%;
  min-height: 280px;
  overflow: hidden;
}
.p-howto-flow-item[data-howto-type=half], .p-howto-flow-item[data-howto-type=half-reverse] {
  display: flex;
}
.p-howto-flow-item__num {
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  background: #e20000;
  color: #fff;
  font-weight: 700;
  font-size: 3.1rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
}
[data-howto-type=half] .p-howto-flow-item__head, [data-howto-type=half-reverse] .p-howto-flow-item__head {
  flex: 0 0 auto;
  width: 260px;
}
[data-howto-type=full] .p-howto-flow-item__head {
  width: 100%;
}
.p-howto-flow-item__body {
  display: flex;
  align-items: center;
  justify-content: center;
}
[data-howto-type=half] .p-howto-flow-item__body, [data-howto-type=half-reverse] .p-howto-flow-item__body {
  flex: 1 1 auto;
  background: linear-gradient(135deg, #1F1F1F, #404040);
}
[data-howto-type=full] .p-howto-flow-item__body {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  min-height: 80px;
  padding: 12px 30px;
  background: rgba(34, 34, 34, 0.8);
}
.p-howto-flow-item__image {
  width: 100%;
  height: 100%;
}
.p-howto-flow-item__image img {
  -o-object-fit: cover;
  display: block;
  width: 100%;
  height: 100%;
     object-fit: cover;
}
[data-howto-type=full] .p-howto-flow-item__image img {
  height: 280px;
}
.p-howto-flow-item__text {
  color: #fff;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.7;
  letter-spacing: 0.08em;
}
[data-howto-type=half] .p-howto-flow-item__text, [data-howto-type=half-reverse] .p-howto-flow-item__text {
  max-width: 170px;
  margin-right: auto;
  margin-left: auto;
}

.p-service__section:not(:last-child) {
  margin-bottom: 80px;
}
.p-service__section.on-screen {
  transform: translateY(20px);
  opacity: 0;
  transition: 1s ease;
}
.p-service__section.on-screen.is-screen {
  transform: translateY(0);
  opacity: 1;
}

.p-service-movie__inner {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}
.p-service-movie__inner video {
  display: block;
  width: 100%;
  height: 100%;
}
.p-service-movie__text {
  margin-bottom: 30px;
  font-size: 1.5rem;
  line-height: 1.75;
  letter-spacing: 0.1em;
}

.p-service-list > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -30px;
  margin-bottom: -60px;
  margin-left: -30px;
}
.p-service-list > ul > li {
  flex: 0 0 auto;
  width: 50%;
  margin-bottom: 60px;
  padding-right: 30px;
  padding-left: 30px;
}

.p-service-item {
  position: relative;
}
.p-service-item__num {
  position: absolute;
  top: -25px;
  left: -25px;
  font-weight: 700;
  font-size: 7rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
}
.p-service-item__body {
  position: relative;
  margin-top: -70px;
}
.p-service-item__image {
  overflow: hidden;
}
.p-service-item__image img {
  display: block;
  width: 100%;
}
.p-service-item__article {
  position: relative;
  width: 88.4615384615%;
  margin-left: auto;
  padding: 0 40px 15px;
  background: #000;
}
.p-service-item__article dl {
  transform: translateY(-15px);
}
.p-service-item__article dt {
  display: flex;
  margin-bottom: 10px;
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}
.p-service-item__article dt:before {
  display: block;
  flex: 0 0 auto;
  width: 12px;
  height: 3px;
  margin-right: 10px;
  transform: translateY(0.65em);
  background: #e20000;
  content: "";
}
.p-service-item__article dt [data-service-head=main] {
  display: block;
}
.p-service-item__article dt [data-service-head=sub] {
  display: block;
  margin-top: 5px;
  font-size: 1.3rem;
}
.p-service-item__article dd {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}

.p-profile-content:not(:last-child) {
  margin-bottom: 60px;
}
.p-profile-content.--top-short {
  margin-top: -30px;
}
.p-profile-content__head {
  margin-bottom: 15px;
}
.p-profile-content__body.on-screen {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.p-profile-content__body.on-screen.is-screen {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}

.p-profile-visual {
  margin-bottom: 30px;
  overflow: hidden;
}
.p-profile-visual__image {
  position: relative;
  overflow: hidden;
}
.p-profile-visual__image:before {
  display: block;
  width: 100%;
  padding-top: 56.25%;
  content: "";
}
.p-profile-visual__image img {
  -o-object-fit: cover;
  -o-object-position: center center;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
     object-fit: cover;
     object-position: center center;
}
.p-profile-visual__inner {
  z-index: 1;
  position: relative;
  margin-top: -77px;
}
.p-profile-visual__thumb {
  padding: 27px;
  background: #fff;
}
.p-profile-visual__thumb-inner {
  overflow: hidden;
}
.p-profile-visual__thumb-inner > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -2.5px;
  margin-bottom: -5px;
  margin-left: -2.5px;
}
.p-profile-visual__thumb-inner > ul > li {
  flex: 0 0 auto;
  width: 10%;
  margin-bottom: 5px;
  padding-right: 2.5px;
  padding-left: 2.5px;
}
.p-profile-visual__thumb-item {
  display: block;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.p-profile-visual__thumb-item:before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}
.p-profile-visual__thumb-item img {
  -o-object-fit: cover;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: auto;
     object-fit: cover;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-visual__thumb-item:after {
  display: block;
  position: absolute;
  top: 3px;
  right: 3px;
  width: 18px;
  height: 20px;
  content: "\f00e";
  color: #333;
  font-weight: 400;
  font-size: 2rem;
  line-height: 1;
  font-family: "Fontawesome", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  filter: drop-shadow(0 0 0.3em rgba(255, 255, 255, 0.8));
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-visual__thumb-item:hover img {
  transform: scale(1.05);
  opacity: 0.75;
}
.p-profile-visual__thumb-item:hover:after {
  color: #000;
}

.profile-visual-opened {
  overflow: hidden;
}

.p-profile-visual-modal {
  display: none;
  visibility: hidden;
  z-index: 1010;
  position: fixed;
  top: 0;
  left: 0;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  overflow: auto;
  background: rgba(106, 106, 106, 0.8);
  opacity: 0;
  transition: 0.3s ease;
}
.profile-visual-ready .p-profile-visual-modal {
  display: block;
}
.profile-visual-opened .p-profile-visual-modal {
  visibility: visible;
  opacity: 1;
}
.p-profile-visual-modal__content {
  display: flex;
  align-items: center;
  max-width: 1500px;
  height: 100%;
  margin-right: auto;
  margin-left: auto;
  padding: 60px 40px;
}
.p-profile-visual-modal__inner {
  z-index: 1;
  position: relative;
  width: 100%;
  overflow: hidden;
}
.p-profile-visual-modal__close {
  z-index: 2;
  position: fixed;
  top: 15px;
  right: 15px;
}
.p-profile-visual-modal__close a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin-left: auto;
  color: #fff;
  font-size: 4rem;
  text-align: center;
  filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.5));
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-visual-modal__close a:before {
  display: block;
  width: 1em;
  height: 1em;
  content: "\f00d";
  font-weight: 700;
  line-height: 1;
  font-family: "Font Awesome 5 Free", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
  text-align: center;
}
.p-profile-visual-modal__close a:hover {
  color: #000;
}
.p-profile-visual-modal__image-item {
  display: block;
  position: relative;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}
.p-profile-visual-modal__image-item:before {
  display: block;
  width: 100%;
  padding-top: 56.25%;
  content: "";
}
.p-profile-visual-modal__image-item img {
  -o-object-fit: contain;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
     object-fit: contain;
}
.p-profile-visual-modal__prev, .p-profile-visual-modal__next {
  display: flex;
  z-index: 1;
  position: absolute;
  top: 0;
  bottom: 0;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 150px;
  margin: auto;
  filter: drop-shadow(0 0 0 rgba(0, 0, 0, 0.5));
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-visual-modal__prev.swiper-button-disabled, .p-profile-visual-modal__next.swiper-button-disabled {
  opacity: 0;
}
.p-profile-visual-modal__prev:before, .p-profile-visual-modal__next:before {
  display: block;
  width: 14px;
  height: 26px;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-visual-modal__prev {
  left: 0;
}
.p-profile-visual-modal__prev:before {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20224%20384%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M191.98%2C384c-8.19%2C0-16.38-3.12-22.62-9.38L9.37%2C214.62c-12.5-12.5-12.5-32.75%2C0-45.25L169.36%2C9.38c12.5-12.5%2C32.75-12.5%2C45.25%2C0s12.5%2C32.75%2C0%2C45.25L77.24%2C192l137.39%2C137.4c12.5%2C12.5%2C12.5%2C32.75%2C0%2C45.25-6.25%2C6.25-14.45%2C9.35-22.65%2C9.35Z%22%2F%3E%3C%2Fsvg%3E");
}
.p-profile-visual-modal__prev:hover:before {
  transform: translateX(-50%);
}
.p-profile-visual-modal__next {
  right: 0;
}
.p-profile-visual-modal__next:before {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20224%20384%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M32%2C384c-8.19%2C0-16.38-3.12-22.62-9.37-12.5-12.5-12.5-32.75%2C0-45.25L146.8%2C192.01%2C9.38%2C54.62C-3.12%2C42.12-3.12%2C21.87%2C9.38%2C9.37s32.75-12.5%2C45.25%2C0L214.63%2C169.36c12.5%2C12.5%2C12.5%2C32.75%2C0%2C45.25L54.63%2C374.6c-6.25%2C6.3-14.44%2C9.4-22.63%2C9.4Z%22%2F%3E%3C%2Fsvg%3E");
}
.p-profile-visual-modal__next:hover:before {
  transform: translateX(50%);
}

.p-profile-data__head {
  margin-bottom: 30px;
}
.p-profile-data__row {
  display: flex;
  justify-content: space-between;
}
.p-profile-data__col-name {
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  align-items: flex-end;
}
.p-profile-data__col-neardate {
  flex: 0 0 auto;
  padding-left: 20px;
}
.p-profile-data__name-inner {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  align-items: flex-end;
}
.p-profile-data__class-label {
  flex: 0 0 auto;
  margin-top: 5px;
  margin-right: 20px;
  margin-left: 20px;
}
.p-profile-data__class-label[data-cast-class="1"] {
  width: 50px;
  height: 47px;
}
.p-profile-data__class-label[data-cast-class="2"] {
  width: 36px;
  height: 47px;
}
.p-profile-data__class-label[data-cast-class="3"] {
  width: 47px;
  height: 47px;
}
.p-profile-data__class-label img {
  -o-object-fit: cover;
  -o-object-position: center center;
  display: block;
  width: 100%;
  height: 100%;
     object-fit: cover;
     object-position: center center;
}
.p-profile-data__name {
  font-weight: 500;
  font-size: 6rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-profile-data__age {
  position: relative;
  bottom: 5px;
  margin-top: 0.5em;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-profile-data__neardate > ul {
  display: flex;
  margin-right: -10px;
  margin-left: -10px;
}
.p-profile-data__neardate > ul > li {
  flex: 0 0 auto;
  padding-right: 10px;
  padding-left: 10px;
}
.p-profile-data__neardate dl {
  display: flex;
  border: 1px solid #6a6a6a;
  color: #fff;
  font-size: 1.8rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-profile-data__neardate dl dt {
  flex: 0 0 auto;
  padding: 12px 30px;
  background: #6a6a6a;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.p-profile-data__neardate dl dd {
  flex: 1 1 auto;
  padding: 12px 30px;
  font-weight: 500;
  letter-spacing: 0.1em;
}

.p-profile-schedule > ul {
  display: flex;
  border-right: 1px solid #6a6a6a;
  border-bottom: 1px solid #6a6a6a;
  border-left: 1px solid #6a6a6a;
}
.p-profile-schedule > ul:first-child {
  border-top: 1px solid #6a6a6a;
}
.p-profile-schedule > ul > li {
  flex: 0 0 auto;
}
.p-profile-schedule > ul:nth-child(1) > li {
  width: 20%;
}
.p-profile-schedule > ul:nth-child(2) > li {
  width: 14.2857142857%;
}
.p-profile-schedule dl {
  padding: 16px;
  line-height: 1.35;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-profile-schedule dl dt {
  font-weight: 700;
  font-size: 1.8rem;
}
.p-profile-schedule dl dt span {
  font-size: 1.5rem;
}
.p-profile-schedule dl dd {
  font-weight: 500;
  font-size: 1.6rem;
}

.p-profile-manual > ul > li:not(:last-child) {
  margin-bottom: 10px;
}
.p-profile-manual > ul > li.on-screen {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.p-profile-manual > ul > li.on-screen.is-screen {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}
.p-profile-manual dl {
  display: flex;
  border: 1px solid #6a6a6a;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-profile-manual dl dt {
  flex: 0 0 auto;
  width: 248px;
  padding: 14.25px 25px;
  background: #6a6a6a;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-profile-manual dl dd {
  flex: 1 1 auto;
  padding: 14.25px 25px;
  font-weight: 500;
  letter-spacing: 0.1em;
}

.p-profile-comment {
  font-size: 1.5rem;
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}

.p-profile-list > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -12.5px;
  margin-bottom: -25px;
  margin-left: -12.5px;
}
.p-profile-list > ul > li {
  flex: 0 0 auto;
  width: 33.3333333333%;
  margin-bottom: 25px;
  padding-right: 12.5px;
  padding-left: 12.5px;
}

.p-profile-item {
  display: block;
  height: 100%;
  border: 1px solid #6a6a6a;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-profile-item dt {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-height: 80px;
  padding: 10.75px 25px;
  background: #6a6a6a;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-profile-item dd {
  flex: 1 1 auto;
  padding: 10px 25px 20px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.1em;
}

.p-profile-option > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -12.5px;
  margin-bottom: -15px;
  margin-left: -12.5px;
}
.p-profile-option > ul > li {
  flex: 0 0 auto;
  width: 33.3333333333%;
  margin-bottom: 15px;
  padding-right: 12.5px;
  padding-left: 12.5px;
}
.p-profile-option dl {
  display: flex;
  border: 1px solid #6a6a6a;
  font-weight: 700;
  font-size: 1.5rem;
}
.p-profile-option dl dt {
  flex: 1 1 auto;
  padding: 11.25px;
  background: #6a6a6a;
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-profile-option dl dd {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 65px;
  line-height: 1.3;
  letter-spacing: 0;
}
.p-profile-option i {
  display: block;
}
.p-profile-option i:before {
  display: inline-block;
  font-weight: 700;
}
.p-profile-option i[data-option=ok]:before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-profile-option i[data-option=ng]:before {
  content: "-";
}

.p-profile-review-list {
  position: relative;
}
.p-profile-review-list > ul {
  margin-bottom: -20px;
}
.p-profile-review-list > ul > li {
  margin-bottom: 20px;
}
.p-profile-review-list__more {
  display: none;
  padding-top: 40px;
  font-size: 0;
  text-align: center;
}
.p-profile-review-list__more.is-active {
  display: block;
}
.p-profile-review-list__more a {
  display: inline-flex;
  position: relative;
  align-items: center;
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
}
.p-profile-review-list__more a:after {
  margin-left: 0.5em;
  content: "\f107";
  font-weight: 700;
  font-family: "Font Awesome 5 Free", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-profile-review-list__more a:before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background: #fff;
  content: "";
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-review-list__more a:hover:before {
  width: 100%;
}
.p-profile-review-list__prev, .p-profile-review-list__next {
  display: none;
  z-index: 1;
  position: absolute;
  top: 26.6667vw;
  align-items: center;
  justify-content: center;
  width: 6.6667vw;
  height: 20vw;
  background: #e20000;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-review-list__prev.swiper-button-disabled, .p-profile-review-list__next.swiper-button-disabled {
  opacity: 0;
}
.p-profile-review-list__prev:before, .p-profile-review-list__next:before {
  display: block;
  width: 1.8667vw;
  height: 3.4667vw;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.p-profile-review-list__prev {
  left: -4.6667vw;
}
.p-profile-review-list__prev:before {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20224%20384%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M191.98%2C384c-8.19%2C0-16.38-3.12-22.62-9.38L9.37%2C214.62c-12.5-12.5-12.5-32.75%2C0-45.25L169.36%2C9.38c12.5-12.5%2C32.75-12.5%2C45.25%2C0s12.5%2C32.75%2C0%2C45.25L77.24%2C192l137.39%2C137.4c12.5%2C12.5%2C12.5%2C32.75%2C0%2C45.25-6.25%2C6.25-14.45%2C9.35-22.65%2C9.35Z%22%2F%3E%3C%2Fsvg%3E");
}
.p-profile-review-list__next {
  right: -4.6667vw;
}
.p-profile-review-list__next:before {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20224%20384%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M32%2C384c-8.19%2C0-16.38-3.12-22.62-9.37-12.5-12.5-12.5-32.75%2C0-45.25L146.8%2C192.01%2C9.38%2C54.62C-3.12%2C42.12-3.12%2C21.87%2C9.38%2C9.37s32.75-12.5%2C45.25%2C0L214.63%2C169.36c12.5%2C12.5%2C12.5%2C32.75%2C0%2C45.25L54.63%2C374.6c-6.25%2C6.3-14.44%2C9.4-22.63%2C9.4Z%22%2F%3E%3C%2Fsvg%3E");
}

.p-profile-diary-pic__iframe iframe {
  display: block;
  width: 100%;
}
.p-profile-diary-pic > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -8px;
  margin-bottom: -10px;
  margin-left: -8px;
}
.p-profile-diary-pic > ul > li {
  flex: 0 0 auto;
  width: 16.6666666667%;
  margin-bottom: 10px;
  padding-right: 8px;
  padding-left: 8px;
}

.p-profile-diary-pic-item {
  position: relative;
  overflow: hidden;
}
.p-profile-diary-pic-item:before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}
.p-profile-diary-pic-item img {
  -o-object-fit: cover;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: auto;
     object-fit: cover;
}

.p-profile-other__body {
  padding: 40px 50px 50px;
  background: #6a6a6a;
}

.p-profile-other-tab > ul {
  display: flex;
  border: 1px solid #6a6a6a;
}
.p-profile-other-tab > ul > li {
  flex: 0 0 auto;
  width: 33.3333333333%;
}
.p-profile-other-tab > ul > li:not(:last-child) {
  border-right: 1px solid #6a6a6a;
}
.p-profile-other-tab a {
  display: block;
  position: relative;
  height: 100%;
  padding: 20px;
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-other-tab a:hover {
  background: rgba(106, 106, 106, 0.5);
}
.p-profile-other-tab a.is-active {
  background: #6a6a6a;
}
.p-profile-other-tab a.is-active:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: #e20000;
  content: "";
}

.p-profile-other-content:not([data-profile-other-content="1"]) {
  display: none;
}

.p-profile-booking__head {
  margin-bottom: 40px;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.4;
  text-align: center;
}
.p-profile-booking__tel {
  margin-bottom: 20px;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
  text-align: center;
}
.p-profile-booking__tel a {
  font-weight: 700;
}
.p-profile-booking__list > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -10px;
  margin-bottom: -20px;
  margin-left: -10px;
}
.p-profile-booking__list > ul > li {
  flex: 0 0 auto;
  width: 16.6666666667%;
  margin-bottom: 20px;
  padding-right: 10px;
  padding-left: 10px;
}

.p-profile-booking-item {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 20px;
  overflow: hidden;
  border: 2px solid #000;
  background: #000;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
  text-align: center;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-booking-item svg {
  fill: #fff;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-booking-item__inner {
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-booking-item:hover {
  background: transparent;
  color: #000;
}
.p-profile-booking-item:hover svg {
  fill: #000;
}
.p-profile-booking-item:hover .p-profile-booking-item__inner {
  transform: scale(1.1);
}
.p-profile-booking-item__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
}
.p-profile-booking-item__icon svg {
  display: block;
  height: 100%;
}
.p-profile-booking-item__name {
  margin-top: 10px;
}

.p-profile-link a {
  display: block;
  padding: 14.25px 25px;
  border: 1px solid #6a6a6a;
  background: #6a6a6a;
  color: #fff;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
  text-align: center;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-profile-link a:hover {
  background: transparent;
  color: #6a6a6a;
}

.p-form-main form {
  display: block;
}
.p-form-main__body input[type=text],
.p-form-main__body input[type=email],
.p-form-main__body input[type=date],
.p-form-main__body textarea,
.p-form-main__body select {
  display: block;
  width: 100%;
  max-width: 260px;
  height: 40px;
  padding: 12.5px 20px;
  border-radius: 8px;
  background: #fff;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
}
.p-form-main__body textarea {
  max-width: 450px;
  height: 150px;
}
.p-form-main__select {
  display: block;
  position: relative;
  width: 100%;
  max-width: 340px;
  color: #000;
}
.p-form-main__select select {
  max-width: none;
  color: inherit;
}
.p-form-main__select:before {
  display: block;
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  width: 11px;
  height: 6px;
  margin: auto;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20384%20224%22%20fill%3D%22%23000%22%3E%3Cpath%20d%3D%22M191.99%2C224c-8.19%2C0-16.38-3.12-22.62-9.38L9.37%2C54.62C-3.12%2C42.12-3.12%2C21.88%2C9.37%2C9.38s32.75-12.5%2C45.25%2C0L191.99%2C146.8%2C329.38%2C9.4c12.5-12.5%2C32.75-12.5%2C45.25%2C0s12.5%2C32.75%2C0%2C45.25L214.63%2C214.65c-6.25%2C6.25-14.45%2C9.35-22.65%2C9.35Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.p-form-main__check {
  display: block;
  padding-top: 5px;
  font-size: 0;
}
.p-form-main__check > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -10px;
  margin-bottom: -10px;
  margin-left: -10px;
}
.p-form-main__check > ul > li {
  flex: 0 0 auto;
  margin-bottom: 10px;
  padding-right: 10px;
  padding-left: 10px;
}
.p-form-main__check label input {
  display: none;
}
.p-form-main__check label input + span {
  display: flex;
  position: relative;
  font-size: 1.5rem;
}
.p-form-main__check label input + span:before {
  display: block;
  width: 25px;
  height: 25px;
  margin-right: 10px;
  border-radius: 6px;
  background: #fff;
  content: "";
}
.p-form-main__check label input + span:after {
  display: block;
  position: absolute;
  top: 7px;
  left: 5px;
  width: 14px;
  height: 10px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20448%20320%22%20fill%3D%22%23e20000%22%3E%3Cpath%20d%3D%22M438.62%2C9.39c12.5%2C12.5%2C12.5%2C32.7%2C0%2C45.2L182.61%2C310.62c-12.5%2C12.5-32.7%2C12.5-45.2%2C0L9.37%2C182.61c-12.5-12.5-12.5-32.7%2C0-45.2%2C12.5-12.5%2C32.76-12.5%2C45.26%2C0l104.48%2C105.31L393.42%2C9.39c12.5-12.52%2C32.7-12.52%2C45.2%2C0h0Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
  opacity: 0;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-form-main__check label input:checked + span:after {
  opacity: 1;
}
.p-form-main__bottom {
  margin-top: 30px;
}
.p-form-main__submit {
  display: flex;
  justify-content: flex-end;
}
.p-form-main__submit > ul {
  display: flex;
  margin-right: -10px;
  margin-left: -10px;
}
.p-form-main__submit > ul > li {
  flex: 0 0 auto;
  padding-right: 10px;
  padding-left: 10px;
}
.p-form-main__submit button {
  display: block;
  width: 150px;
}
.p-form-main__submit button span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 50px;
  border: 1px solid #efefef;
  background: #efefef;
  color: #000;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-form-main__submit button:hover span {
  background: transparent;
  color: #efefef;
}
.p-form-main__submit button[data-form=submit] span {
  border-color: #e20000;
  background: #e20000;
  color: #fff;
}
.p-form-main__submit button[data-form=submit]:hover span {
  background: transparent;
  color: #e20000;
}

.p-form-main-item {
  display: flex;
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}
.p-form-main-item:not(:last-child) {
  margin-bottom: 20px;
}
.p-form-main-item__label {
  flex: 1 1 auto;
  padding-right: 20px;
}
.p-form-main-item__label span {
  display: inline-block;
  padding-top: 8px;
}
.p-form-main-item__input {
  flex: 0 0 auto;
  width: 450px;
}

.p-price-content:not(:last-child) {
  margin-bottom: 60px;
}
.p-price-content__head {
  margin-bottom: 15px;
}
.p-price-content__body.on-screen {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.p-price-content__body.on-screen.is-screen {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}
.p-price-content__section:not(:last-child) {
  margin-bottom: 30px;
}

.p-price-table {
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-price-table__note {
  margin-top: 20px;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.85;
  letter-spacing: 0.05em;
  text-align: right;
}
.p-price-table__note[data-align=left] {
  text-align: left;
}
.p-price-table table {
  width: 100%;
  border: 1px solid #6a6a6a;
  border-collapse: collapse;
  color: #fff;
  table-layout: fixed;
}
.p-price-table table thead {
  font-weight: 700;
  font-size: 1.9rem;
  line-height: 1.15;
  letter-spacing: 0.08em;
}
.p-price-table table tbody {
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
.p-price-table table tr th, .p-price-table table tr td {
  padding: 14px 20px;
}
.p-price-table table tr th {
  background: #6a6a6a;
}
.p-price-table table tr th:not(:last-child) {
  border-right: 1px solid #000;
}
.p-price-table table tr td {
  text-align: right;
}
.p-price-table table tr td:not(:last-child) {
  border-right: 1px solid #6a6a6a;
}
.p-price-table table tr:not(:last-child) th {
  border-bottom: 1px solid #000;
}
.p-price-table table tr:not(:last-child) td {
  border-bottom: 1px solid #6a6a6a;
}

.p-price-class > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -12.5px;
  margin-left: -12.5px;
}
.p-price-class > ul > li {
  flex: 0 0 auto;
  width: 33.3333333333%;
  padding-right: 12.5px;
  padding-left: 12.5px;
}
.p-price-class dl {
  display: flex;
  flex-direction: column;
  height: 100%;
  border: 1px solid #6a6a6a;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}
.p-price-class dl dt {
  flex: 0 0 auto;
  padding: 10px 25px;
  background: #6a6a6a;
  font-weight: 700;
  font-size: 1.7rem;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-price-class dl dd {
  flex: 1 1 auto;
  padding: 15px 25px 25px;
}

.p-price-option > ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -12.5px;
  margin-bottom: -20px;
  margin-left: -12.5px;
}
.p-price-option > ul > li {
  flex: 0 0 auto;
  width: 20%;
  margin-bottom: 20px;
  padding-right: 12.5px;
  padding-left: 12.5px;
}
.p-price-option[data-price-option=other] > ul {
  margin-right: -10px;
  margin-left: -10px;
}
.p-price-option[data-price-option=other] > ul > li {
  width: 50%;
  padding-right: 10px;
  padding-left: 10px;
}

.p-price-option-item {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  color: #000;
}
.p-price-option-item__head {
  flex: 0 0 auto;
}
.p-price-option-item__body {
  flex: 1 1 auto;
}
.p-price-option-item__image img {
  display: block;
  width: 100%;
}
.p-price-option-item__body {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 10px;
  font-size: 1.4rem;
  line-height: 1.1;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-price-option-item__body span {
  font-size: 1rem;
}
.p-price-option-item__body dl dt {
  font-weight: 700;
}
.p-price-option-item__body dl dd {
  font-weight: 400;
}
[data-price-option=other] .p-price-option-item__body {
  padding: 14px 5px;
}
[data-price-option=other] .p-price-option-item__body span {
  display: block;
  font-size: 1.4rem;
}
[data-price-option=other] .p-price-option-item__body dl {
  line-height: 1.5;
}
[data-price-option=other] .p-price-option-item__body dl dt {
  margin-bottom: 5px;
}
[data-price-option=other] .p-price-option-item__body dl dt span {
  font-weight: 400;
}

.p-price-transport__row {
  display: flex;
}
.p-price-transport__col-price {
  flex: 1 1 auto;
  padding-right: 40px;
}
.p-price-transport__col-map {
  flex: 0 0 auto;
  width: 554px;
}
.p-price-transport__price > ul > li:not(:last-child) {
  margin-bottom: 15px;
}
.p-price-transport__price dl {
  display: flex;
  font-size: 1.5rem;
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-price-transport__price dl dt {
  flex: 0 0 auto;
  width: 100px;
  font-weight: 700;
  letter-spacing: 0.05em;
}
.p-price-transport__price dl dd {
  flex: 1 1 auto;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.p-price-transport__map img {
  display: block;
  width: 100%;
}

.p-price-prohibit {
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.7;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}
.p-price-prohibit__text {
  margin-bottom: 30px;
}
.p-price-prohibit__list > ul > li {
  display: flex;
}
.p-price-prohibit__list > ul > li:before {
  display: block;
  position: relative;
  top: 10px;
  flex: 0 0 auto;
  width: 10px;
  height: 2px;
  margin-right: 10px;
  background: #fff;
  content: "";
}
.p-price-prohibit__list > ul > li:not(:last-child) {
  margin-bottom: 10px;
}
.p-price-prohibit__note {
  margin-top: 30px;
}

.p-price-payment {
  font-size: 0;
  text-align: center;
}
.p-price-payment__credit a {
  display: inline-block;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-price-payment__credit a:hover {
  filter: brightness(0.5);
  opacity: 0.75;
}
.p-price-payment__credit img {
  display: inline-block;
}
.p-price-payment__cvs {
  margin-top: 40px;
}
.p-price-payment__cvs > ul {
  display: flex;
  justify-content: center;
  margin-right: -20px;
  margin-left: -20px;
}
.p-price-payment__cvs > ul > li {
  flex: 0 1 auto;
  padding-right: 20px;
  padding-left: 20px;
  text-align: center;
}
.p-price-payment__cvs-item {
  display: inline-block;
}
.p-price-payment__cvs-item a {
  display: block;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-price-payment__cvs-item a:hover {
  filter: brightness(0.5);
  opacity: 0.75;
}
.p-price-payment__cvs-item img {
  display: block;
}

.p-price-datecourse-intro {
  margin-bottom: 60px;
}
.p-price-datecourse-intro.on-screen {
  opacity: 0;
}
.p-price-datecourse-intro.on-screen.is-screen {
  opacity: 1;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition-property: opacity;
}
.p-price-datecourse-intro__head {
  margin-bottom: 35px;
}
.p-price-datecourse-intro__heading {
  font-weight: 500;
  font-size: 4.2rem;
  line-height: 1.45;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  text-align: center;
}
.p-price-datecourse-intro__lead {
  max-width: 780px;
  margin: 35px auto 0;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.75;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}
.p-price-datecourse-intro__body {
  max-width: 750px;
  margin: 0 auto;
}
.p-price-datecourse-intro__slide {
  z-index: 1;
  position: relative;
  padding: 20px 0;
}
.p-price-datecourse-intro__slide .js-datecourse-slide__prev, .p-price-datecourse-intro__slide .js-datecourse-slide__next {
  display: flex;
  z-index: 1;
  position: absolute;
  top: 0;
  bottom: 0;
  align-items: center;
  justify-content: center;
  width: 65px;
  height: 65px;
  margin: auto;
  border-radius: 150px;
  background: #000;
  cursor: pointer;
  filter: drop-shadow(0 0 0 rgba(0, 0, 0, 0.5));
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-price-datecourse-intro__slide .js-datecourse-slide__prev.swiper-button-disabled, .p-price-datecourse-intro__slide .js-datecourse-slide__next.swiper-button-disabled {
  opacity: 0;
}
.p-price-datecourse-intro__slide .js-datecourse-slide__prev:before, .p-price-datecourse-intro__slide .js-datecourse-slide__next:before {
  display: block;
  width: 14px;
  height: 26px;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-price-datecourse-intro__slide .js-datecourse-slide__prev:hover, .p-price-datecourse-intro__slide .js-datecourse-slide__next:hover {
  opacity: 0.5;
}
.p-price-datecourse-intro__slide .js-datecourse-slide__prev {
  left: 0;
}
.p-price-datecourse-intro__slide .js-datecourse-slide__prev:before {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20224%20384%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M191.98%2C384c-8.19%2C0-16.38-3.12-22.62-9.38L9.37%2C214.62c-12.5-12.5-12.5-32.75%2C0-45.25L169.36%2C9.38c12.5-12.5%2C32.75-12.5%2C45.25%2C0s12.5%2C32.75%2C0%2C45.25L77.24%2C192l137.39%2C137.4c12.5%2C12.5%2C12.5%2C32.75%2C0%2C45.25-6.25%2C6.25-14.45%2C9.35-22.65%2C9.35Z%22%2F%3E%3C%2Fsvg%3E");
}
.p-price-datecourse-intro__slide .js-datecourse-slide__next {
  right: 0;
}
.p-price-datecourse-intro__slide .js-datecourse-slide__next:before {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20224%20384%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M32%2C384c-8.19%2C0-16.38-3.12-22.62-9.37-12.5-12.5-12.5-32.75%2C0-45.25L146.8%2C192.01%2C9.38%2C54.62C-3.12%2C42.12-3.12%2C21.87%2C9.38%2C9.37s32.75-12.5%2C45.25%2C0L214.63%2C169.36c12.5%2C12.5%2C12.5%2C32.75%2C0%2C45.25L54.63%2C374.6c-6.25%2C6.3-14.44%2C9.4-22.63%2C9.4Z%22%2F%3E%3C%2Fsvg%3E");
}
.p-price-datecourse-intro__slide .js-datecourse-slide__pagination {
  z-index: 1;
  position: absolute;
  bottom: 20px;
  left: 0;
  padding: 15px 20px;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  text-align: right;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.5));
}
.p-price-datecourse-intro__slide .js-datecourse-slide__background {
  display: block;
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  background: #f3ebeb;
}
.p-price-datecourse-intro__slide-item {
  display: block;
  aspect-ratio: 1052/645;
  width: 100%;
  overflow: hidden;
}
.p-price-datecourse-intro__slide-item img {
  -o-object-fit: cover;
  display: block;
  width: 100%;
  height: 100%;
     object-fit: cover;
}

.p-pagetop {
  display: block;
  visibility: hidden;
  z-index: 1000;
  position: fixed;
  right: 20px;
  bottom: 50px;
  opacity: 0;
  transition: 0.5s ease;
}
.p-pagetop.is-show {
  visibility: visible;
  opacity: 1;
}
.p-pagetop a {
  display: block;
  text-align: center;
}
.p-pagetop a dt {
  display: block;
  width: 13px;
  height: 57px;
  margin-right: auto;
  margin-left: auto;
  transform: translateX(-50%);
  transition: 0.5s ease;
}
.p-pagetop a dt svg {
  fill: #e20000;
  display: block;
  width: 100%;
  height: 100%;
}
.p-pagetop a dd {
  margin-top: 8px;
  color: #e20000;
  font-weight: 700;
  font-size: 1.2rem;
  line-height: 2.35;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-pagetop a:hover dt {
  transform: translateX(-50%) translateY(-25%);
}

.p-langage-modal {
  z-index: 1200;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
.p-language-select__inner {
  position: relative;
  width: 100%;
  height: 40px;
}
.p-language-select__inner:before {
  display: block;
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  width: 11px;
  height: 6px;
  margin: auto;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20384%20224%22%20fill%3D%22%23000%22%3E%3Cpath%20d%3D%22M191.99%2C224c-8.19%2C0-16.38-3.12-22.62-9.38L9.37%2C54.62C-3.12%2C42.12-3.12%2C21.88%2C9.37%2C9.38s32.75-12.5%2C45.25%2C0L191.99%2C146.8%2C329.38%2C9.4c12.5-12.5%2C32.75-12.5%2C45.25%2C0s12.5%2C32.75%2C0%2C45.25L214.63%2C214.65c-6.25%2C6.25-14.45%2C9.35-22.65%2C9.35Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.p-language-select__inner select {
  display: block;
  width: 100%;
  height: 100%;
  padding: 12px 20px;
  border-radius: 8px;
  background: #fff;
  color: #000;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.1em;
}
.p-language-select__inner i[data-icon=earth]:before {
  display: block;
  width: 15px;
  height: 15px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20512%20512%22%3E%3Cpath%20d%3D%22M512%2C256c0%2C141.4-114.6%2C256-256%2C256S0%2C397.4%2C0%2C256%2C114.6%2C0%2C256%2C0s256%2C114.6%2C256%2C256ZM51.68%2C295.1l31.73%2C6.4c7.86%2C1.6%2C16-.9%2C21.69-6.6l15.4-15.4c11.5-12.4%2C31.1-8.4%2C38.4%2C6.3l9.3%2C18.5c3.9%2C9.6%2C14.6%2C14.8%2C25.3%2C14.8%2C15.2%2C0%2C26.1-13.7%2C21.7-28.3l-5.9-19.9c-4.7-15.4%2C6.9-30.9%2C23-30.9h2.3c12.5%2C0%2C25.9-6.7%2C33.3-17.8l10.7-16.1c5.6-8.4%2C5.3-19.5-.8-27.7l-16.1-21.5c-10.3-13.7-3.3-33.5%2C13.4-37.7l17-5.1c7.5-1%2C13.6-6.3%2C16.5-13.5l16.3-40.91c-21.5-7.57-44.7-11.69-69.8-11.69-114%2C0-208%2C93.1-208%2C208%2C0%2C13.4%2C2.16%2C26.5%2C4.58%2C39.1h0Zm398.72%2C5.3l-15.8%2C4.5c-6.7%2C1.8-13.8-.9-17.5-6.7l-2-3.1c-6-9.4-16.4-16-27.6-16s-22.4%2C6.6-27.6%2C16l-6.1%2C9.5c-1.4%2C2.2-3.3%2C4.1-5.6%2C4.5l-37.1%2C21c-17.2%2C10.1-24.6%2C32.4-17%2C51.3l6.4%2C12.4c8.6%2C19.2%2C30.7%2C28.5%2C49.6%2C21.1l3.4-1.8c10.1-2.9%2C21.3-1.3%2C30%2C5l1.5%2C1.1c37.2-29.5%2C64.1-71.4%2C74.4-119.5-3-.3-6-.1-9%2C.7h0Zm-294.3%2C67.1l32%2C8c8.6%2C2.2%2C17.3-3%2C19.4-11.6%2C2.2-8.6-3-17.3-11.6-19.4l-32-8c-8.6-2.2-17.3%2C3-19.4%2C11.6-2.2%2C8.6%2C3%2C17.3%2C11.6%2C19.4h0Zm80.4-39.4c-2.2%2C8.6%2C3%2C17.3%2C11.6%2C19.4%2C8.6%2C2.2%2C17.3-3%2C19.4-11.6l8-32c2.2-8.6-3-17.3-11.6-19.4-8.6-2.2-17.3%2C3-19.4%2C11.6l-8%2C32Zm85.2-207.3l-16%2C32c-4%2C7.9-.8%2C17.6%2C7.1%2C21.5%2C7.9%2C4%2C17.6%2C.8%2C21.5-7.1l16-32c4-7.9%2C.8-17.6-7.1-21.5-7.9-4-17.6-.8-21.5%2C7.1h0Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}

.p-language-button {
  position: relative;
  overflow: hidden;
  transition: 0.5s ease;
}
.p-language-button:hover {
  overflow: visible;
}
.p-language-button__main {
  display: block;
  color: #fff;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.05em;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.screen-visual-over .p-language-button__main {
  color: #000;
}
.p-language-button__main dl {
  display: flex;
  align-items: center;
}
.p-language-button__main dt {
  flex: 0 0 auto;
  width: 20px;
}
.p-language-button__main dd {
  position: relative;
  flex: 1 1 auto;
  padding-left: 10px;
}
.p-language-button__main svg {
  fill: #fff;
  display: block;
  width: 100%;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.screen-visual-over .p-language-button__main svg {
  fill: #000;
}
.p-language-button__content {
  position: absolute;
  right: 0;
  min-width: 200px;
  padding-top: 10px;
  opacity: 0;
  transition: 0.5s ease;
}
.p-language-button:hover .p-language-button__content {
  opacity: 1;
}
.p-language-button__list {
  padding: 10px 15px;
  background: #fff;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.5));
}
.is-active .p-language-button__list {
  display: block;
}
.p-language-button__list > ul > li:not(:last-child) {
  border-bottom: 1px solid #6a6a6a;
}
.p-language-button__list a {
  display: block;
  padding: 15px 10px;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-language-button__list a:hover {
  background: #000;
  color: #fff;
}

.p-enquete-castdata__row {
  display: flex;
}
.p-enquete-castdata__col-image {
  flex: 0 0 auto;
  width: 250px;
}
.p-enquete-castdata__col-main {
  flex: 1 1 auto;
  padding-left: 20px;
}
.p-enquete-castdata__image {
  position: relative;
  overflow: hidden;
}
.p-enquete-castdata__image:before {
  display: block;
  width: 100%;
  padding-top: 100%;
  content: "";
}
.p-enquete-castdata__image img {
  -o-object-fit: cover;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
     object-fit: cover;
}
.p-enquete-castdata__top {
  display: flex;
  align-items: flex-end;
  margin-bottom: 5px;
}
.p-enquete-castdata__col-name {
  flex: 0 0 auto;
}
.p-enquete-castdata__col-age {
  flex: 0 0 auto;
  margin-left: 20px;
  padding-bottom: 8px;
}
.p-enquete-castdata__name {
  font-weight: 500;
  font-size: 3rem;
  line-height: 1.5;
  letter-spacing: 0.08em;
}
.p-enquete-castdata__age {
  font-weight: 700;
  font-size: 1.3rem;
  line-height: 1.5;
  letter-spacing: 0.08em;
}
.p-enquete-castdata__size {
  margin-bottom: 10px;
  font-weight: 500;
  font-size: 1.3rem;
  line-height: 1.5;
  letter-spacing: 0.08em;
}
.p-enquete-castdata__comment {
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.75;
  letter-spacing: 0.1em;
}

.p-enquete-result__container {
  max-width: 1000px;
  margin-right: auto;
  margin-left: auto;
}
.p-enquete-result__head {
  margin-bottom: 50px;
}
.p-enquete-result__section {
  margin-bottom: 40px;
}

.p-enquete-result-section.on-screen {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.p-enquete-result-section.on-screen.is-screen {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}
.p-enquete-result-section > ul {
  border: 1px solid #6a6a6a;
}
.p-enquete-result-section dl {
  display: flex;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-enquete-result-section dl dt {
  flex: 0 0 auto;
  width: 248px;
  padding: 14.25px 25px;
  background: #6a6a6a;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.p-enquete-result-section dl dd {
  flex: 1 1 auto;
  padding: 14.25px 25px;
  font-weight: 500;
  letter-spacing: 0.1em;
}

.p-enquete-result-backlink {
  margin-bottom: 15px;
  font-size: 0;
  text-align: right;
}
.p-enquete-result-backlink.on-screen {
  visibility: hidden;
  transform: translateY(20px);
  opacity: 0;
}
.p-enquete-result-backlink.on-screen.is-screen {
  visibility: visible;
  transform: translateY(0);
  opacity: 1;
  transition: 0.5s ease;
}
.p-enquete-result-backlink a {
  display: inline-flex;
  align-items: center;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-enquete-result-backlink a > span {
  position: relative;
}
.p-enquete-result-backlink a > span:after {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background: #fff;
  content: "";
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-enquete-result-backlink a:after {
  display: block;
  margin-left: 0.5em;
  content: "\f105";
  font-weight: 700;
  font-family: "Font Awesome 5 Free", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
}
.p-enquete-result-backlink a:hover > span:after {
  width: 100%;
}

.p-dialog {
  visibility: hidden;
  z-index: 1010;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(106, 106, 106, 0.8);
  opacity: 0;
  transition: 0.3s ease;
}
.dialog-opened .p-dialog {
  visibility: visible;
  opacity: 1;
}
.p-dialog__content {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  max-width: 600px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 40px;
  padding-left: 40px;
  transform: translateY(-50%);
}
.p-dialog__inner {
  background: #fff;
  color: #000;
}

.p-dialog-content__main {
  padding: 25px;
  color: #000;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.5;
  letter-spacing: 0.08em;
}
.p-dialog-content__bottom {
  padding: 0 25px 25px;
  font-size: 0;
}
.p-dialog-content__bottom > ul {
  display: flex;
  justify-content: flex-end;
  margin-right: -5px;
  margin-left: -5px;
}
.p-dialog-content__bottom > ul > li {
  flex: 0 0 auto;
  padding-right: 5px;
  padding-left: 5px;
}
.p-dialog-content__bottom a {
  display: inline-block;
  min-width: 100px;
  padding: 5px 10px;
  border: 1px solid #6a6a6a;
  border-radius: 15px;
  font-weight: 500;
  font-size: 1.8rem;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  text-align: center;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-dialog-content__bottom a:hover {
  background: #000;
  color: #fff;
}

.booking-ready {
  overflow: hidden;
}

.p-booking {
  display: none;
  visibility: hidden;
  z-index: 1200;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background: rgba(255, 255, 255, 0.9);
  opacity: 0;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.booking-ready .p-booking {
  display: block;
}
.booking-opened .p-booking {
  visibility: visible;
  opacity: 1;
}
.p-booking__wrap {
  width: 100%;
  height: 100%;
  padding: 100px 0;
}
.p-booking__content {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 980px;
  height: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 40px;
  padding-left: 40px;
}
.p-booking__close {
  position: absolute;
  top: 20px;
  right: 20px;
}
.p-booking__close a {
  display: block;
  position: relative;
  width: 50px;
  height: 50px;
}
.p-booking__close a:before, .p-booking__close a:after {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  margin: auto;
  background: #000;
  content: "";
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-booking__close a:before {
  transform: rotate(45deg);
}
.p-booking__close a:after {
  transform: rotate(-45deg);
}
.p-booking__close a:hover:before {
  transform: rotate(60deg);
}
.p-booking__close a:hover:after {
  transform: rotate(-60deg);
}

.p-booking-list__head {
  visibility: hidden;
  margin-bottom: 40px;
  color: #000;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.6;
  letter-spacing: 0;
  text-align: center;
  opacity: 0;
  transition: 1s cubic-bezier(0.23, 1, 0.32, 1);
  transition-delay: 0.5s;
}
.booking-opened .p-booking-list__head {
  visibility: visible;
  opacity: 1;
}
.p-booking-list__tel {
  visibility: hidden;
  margin-bottom: 20px;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.5;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0;
  text-align: center;
  opacity: 0;
  transition: 1s cubic-bezier(0.23, 1, 0.32, 1);
  transition-delay: 1s;
}
.booking-opened .p-booking-list__tel {
  visibility: visible;
  opacity: 1;
}
.p-booking-list__tel a {
  font-weight: bold;
}
.p-booking-list__list {
  visibility: hidden;
  opacity: 0;
  transition: 1s cubic-bezier(0.23, 1, 0.32, 1);
  transition-delay: 1s;
}
.booking-opened .p-booking-list__list {
  visibility: visible;
  opacity: 1;
}
.p-booking-list__list > ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-right: -10px;
  margin-bottom: -20px;
  margin-left: -10px;
}
.p-booking-list__list > ul > li {
  flex: 0 0 auto;
  margin-bottom: 20px;
  padding-right: 10px;
  padding-left: 10px;
}

.p-booking-item {
  display: block;
  width: 140px;
  padding: 20px;
  overflow: hidden;
  border: 2px solid #000;
  background: #000;
  color: #fff;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.3;
  font-family: "Jost", "游ゴシック Medium", Yu Gothic Medium, YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  letter-spacing: 0.08em;
  text-align: center;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-booking-item svg {
  fill: #fff;
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-booking-item__inner {
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-booking-item:hover {
  background: transparent;
  color: #000;
}
.p-booking-item:hover svg {
  fill: #000;
}
.p-booking-item:hover .p-profile-booking-item__inner {
  transform: scale(1.1);
}
.p-booking-item__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
}
.p-booking-item__icon svg {
  display: block;
  height: 100%;
}
.p-booking-item__name {
  margin-top: 10px;
}

.p-booking-button {
  z-index: 1000;
  position: fixed;
  right: 10px;
  bottom: 250px;
  transition: 1s cubic-bezier(0.23, 1, 0.32, 1);
}
.is-scrolling .p-booking-button {
  visibility: hidden;
  opacity: 0;
}
.booking-ready .p-booking-button {
  transform: translateX(calc(100% + 10px));
  opacity: 0;
}
.p-booking-button a {
  display: flex;
  z-index: 1;
  position: relative;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 90px;
  height: 90px;
  background: #e20000;
  color: #fff;
  font-weight: 700;
  font-size: 1.3rem;
  line-height: 1.3;
  letter-spacing: 0.1em;
  text-align: center;
  animation: shake 10s linear infinite;
  filter: drop-shadow(0 6px 5px rgba(0, 0, 0, 0.25));
  transition: 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
.p-booking-button a:before {
  display: block;
  width: 20px;
  height: 30px;
  margin-bottom: 5px;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2030%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M3.75%2C30c-1.01%2C0-1.95-.43-2.66-1.2C.39%2C28.03%2C0%2C27%2C0%2C25.91V4.09C0%2C1.85%2C1.67%2C0%2C3.74%2C0h12.51c1.01%2C0%2C1.95%2C.43%2C2.66%2C1.2%2C.71%2C.77%2C1.1%2C1.8%2C1.09%2C2.89V25.91c0%2C1.08-.38%2C2.11-1.09%2C2.88-.71%2C.77-1.65%2C1.2-2.65%2C1.21H3.75Zm0-27.28c-.69%2C0-1.25%2C.62-1.24%2C1.36V25.91c0%2C.37%2C.13%2C.71%2C.36%2C.97%2C.24%2C.26%2C.55%2C.4%2C.89%2C.4h12.49c.33%2C0%2C.65-.14%2C.88-.4%2C.24-.26%2C.36-.6%2C.36-.96V4.09c0-.37-.13-.71-.36-.97-.24-.26-.55-.4-.88-.4H3.75Z%22%2F%3E%3Cpath%20d%3D%22M10%2C24.54c-.33%2C0-.66-.15-.89-.4-.05-.06-.11-.13-.15-.2-.05-.08-.08-.15-.12-.24-.03-.08-.06-.17-.07-.25-.02-.09-.02-.18-.02-.27%2C0-.35%2C.13-.71%2C.36-.96%2C.29-.32%2C.73-.46%2C1.14-.37%2C.08%2C.02%2C.16%2C.05%2C.23%2C.08%2C.08%2C.03%2C.15%2C.07%2C.22%2C.13%2C.07%2C.05%2C.13%2C.1%2C.19%2C.16%2C.23%2C.25%2C.37%2C.61%2C.37%2C.96s-.13%2C.71-.37%2C.96c-.23%2C.25-.56%2C.4-.89%2C.4Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.p-booking-button a:after {
  display: block;
  z-index: -1;
  position: absolute;
  top: 0;
  right: -10px;
  bottom: 0;
  width: 27px;
  height: 38px;
  margin: auto;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2027%2038%22%20fill%3D%22%23e20000%22%3E%3Cpath%20d%3D%22M27%2C19L0%2C38V0L27%2C19Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.p-booking-button a:hover {
  opacity: 0.75;
}

/* ====================================
	Display
==================================== */
.u-pc {
  display: block !important;
}

.u-pc-inline {
  display: inline !important;
}

.u-pc-inline-block {
  display: inline-block !important;
}

.u-sp {
  display: none !important;
}

.u-sp-inline {
  display: none !important;
}

.u-sp-inline-block {
  display: none !important;
}

/* ====================================
	Resize
==================================== */
.resize,
.u-resize {
  display: block;
  width: 100%;
  height: auto;
  margin: 0px;
  padding: 0px;
}
@media screen and (min-width: 768px){
  .menu-ready .p-header-button a:hover > span > span:nth-child(2) {
    width: 70px;
  }
  .p-header-nav__menu > ul {
    -moz-column-count: 2;
    -moz-column-gap: 0;
         column-gap: 0;
         column-count: 2;
  }
  .p-header-booking {
    display: none;
  }
  .p-index-main .js-screen {
    visibility: hidden;
    transform: translateY(20px);
    opacity: 0;
    transition: 0.5s ease;
    transition-property: transform, opacity;
  }
  .page-loaded .p-index-main .on-screen.is-screen {
    visibility: visible;
    transform: translateY(0);
    opacity: 1;
  }
  .page-loaded .p-index-main .on-screen[data-screen="1"] {
    transition-delay: 0.5s;
  }
  .page-loaded .p-index-main .on-screen[data-screen="2"] {
    transition-delay: 1s;
  }
  .p-firstview-slide-item__movie [data-fv-movie=sp] {
    display: none;
  }
  .p-news-item:hover {
    transform: translateY(-5px);
    filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.3));
  }
  .on-screen .p-pickup__list > ul > li:nth-child(1) {
    transition-delay: 500ms;
  }
  .on-screen .p-pickup__list > ul > li:nth-child(2) {
    transition-delay: 700ms;
  }
  .on-screen .p-pickup__list > ul > li:nth-child(3) {
    transition-delay: 900ms;
  }
  .p-pickup-item:hover {
    transform: translateY(-5px);
  }
  .p-pickup-item:hover .p-pickup-item__head {
    filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.6));
  }
  .p-gal-today-item:hover {
    transform: translateY(-5px);
    filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.3));
  }
  .p-gal-datelist__main > ul > li {
    display: block !important;
  }
  .is-current .p-gal-datelist__item {
    pointer-events: none;
  }
  .p-gal-datelist-item:hover:after {
    transform: translateY(3px);
  }
  .p-gal-datelist-item.is-current {
    pointer-events: none;
  }
  .p-gal-list__main > ul > li.on-screen {
    visibility: hidden;
    transform: translateY(20px);
    opacity: 0;
  }
  .p-gal-list__main > ul > li.on-screen.is-ready {
    visibility: visible;
    transform: translateY(0);
    opacity: 1;
    transition: 0.5s ease;
  }
  .p-bottom__col.on-screen:nth-child(1) {
    transition-delay: 0s;
  }
  .p-bottom__col.on-screen:nth-child(2) {
    transition-delay: 0.2s;
  }
  .p-bottom__col.on-screen:nth-child(3) {
    transition-delay: 0.4s;
  }
  .p-update-item:hover {
    transform: translateY(-2px);
    filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.3));
  }
  .p-howto-flow-item[data-howto-type=half-reverse] {
    flex-direction: row-reverse;
  }
  .p-profile-schedule > ul > li:not(:last-child) {
    border-right: 1px solid #6a6a6a;
  }
  .p-profile-review-list > ul {
    display: block !important;
  }
  .p-profile-review-list > ul > li.is-hidden {
    display: none;
  }
  .p-price-class > ul > li.on-screen {
    visibility: hidden;
    transform: translateY(20px);
    opacity: 0;
  }
  .p-price-class > ul > li.on-screen.is-screen {
    visibility: visible;
    transform: translateY(0);
    opacity: 1;
    transition: 0.5s ease;
  }
  .p-price-class > ul > li.on-screen.is-screen:nth-child(2) {
    transition-delay: 200ms;
  }
  .p-price-class > ul > li.on-screen.is-screen:nth-child(3) {
    transition-delay: 400ms;
  }
  .p-price-datecourse-intro__slide .js-datecourse-slide__prev {
    transform: translateX(-50%);
  }
  .p-price-datecourse-intro__slide .js-datecourse-slide__next {
    transform: translateX(50%);
  }
  .p-enquete-result-section > ul > li:not(:last-child) dl dt {
    border-bottom: 1px solid #000;
  }
  .p-enquete-result-section > ul > li:not(:last-child) dl dd {
    border-bottom: 1px solid #6a6a6a;
  }
  .u-pc-none {
    display: none !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 767px){
  .p-index-main .js-screen {
    transform: translateY(2.6667vw);
  }
  .p-pickup-item:hover .p-pickup-item__head {
    filter: drop-shadow(0.2667vw 0.2667vw 0.2667vw rgba(0, 0, 0, 0.6));
  }
  .p-gal-list__main > ul > li.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-gal-list__main > ul > li.on-screen.is-ready {
    transform: translateY(0);
  }
}
@media screen and (min-width: 1050px){
  .p-service-list > ul > li:nth-child(2n) {
    transform: translateY(80px);
  }
}
@media screen and (max-width: 1679px){
  .p-header-main__container {
    padding-right: 2.381vw;
    padding-left: 2.381vw;
  }
  .p-header-main__col-main {
    margin-right: -1.1905vw;
    margin-left: -1.1905vw;
  }
  .p-header-main__col-menu {
    padding-right: 1.1905vw;
    padding-left: 1.1905vw;
  }
  .p-header-main__col-side {
    padding-right: 1.1905vw;
    padding-left: 1.1905vw;
  }
  .p-header-main__row-side {
    margin-right: -0.5952vw;
    margin-left: -0.5952vw;
  }
  .p-header-main__col-sns {
    padding-right: 0.5952vw;
    padding-left: 0.5952vw;
  }
  .p-header-main__col-lang {
    padding-right: 0.5952vw;
    padding-left: 0.5952vw;
  }
  .p-header-main__logo {
    width: 150px;
  }
  .p-header-main__menu {
    font-size: 1.3rem;
  }
  .p-header-main__menu > ul {
    margin-right: -1.0417vw;
    margin-left: -1.0417vw;
  }
  .p-header-main__menu > ul > li {
    padding-right: 1.0417vw;
    padding-left: 1.0417vw;
  }
  .p-header-main__sns > ul {
    margin-right: -0.5952vw;
    margin-left: -0.5952vw;
  }
  .p-header-main__sns > ul > li {
    padding-right: 0.5952vw;
    padding-left: 0.5952vw;
  }
  .p-gal-today__list > ul > li {
    width: 25%;
  }
  .p-bottom__row {
    margin-right: -1.7857vw;
    margin-left: -1.7857vw;
  }
  .p-bottom__col {
    padding-right: 1.7857vw;
    padding-left: 1.7857vw;
  }
  .p-update-item__col-image {
    width: 40%;
  }
  .p-language-button__main dd {
    display: none;
  }
}
@media screen and (max-width: 1179px){
  .p-header-main {
    display: none;
  }
  .p-header-main__container {
    padding-right: 40px;
    padding-left: 40px;
  }
  .p-header-main__row-side {
    margin-right: -10px;
    margin-left: -10px;
  }
  .p-header-main__col-sns {
    padding-right: 10px;
    padding-left: 10px;
  }
  .p-header-main__col-lang {
    padding-right: 10px;
    padding-left: 10px;
  }
  .p-header-main__sns > ul {
    margin-right: -10px;
    margin-left: -10px;
  }
  .p-header-main__sns > ul > li {
    padding-right: 10px;
    padding-left: 10px;
  }
  .p-header-button {
    display: block;
  }
  .p-gal-today__list > ul > li {
    width: 33.3333333333%;
  }
  .p-gal-list__main > ul > li {
    width: 33.3333333333%;
  }
  .p-update-item__col-body {
    padding-right: 1.6949vw;
    padding-left: 2.5424vw;
  }
  .p-ranking-content__list > ul > li {
    width: 50%;
  }
  .p-howto-flow-item {
    min-height: 23.7288vw;
  }
  [data-howto-type=half] .p-howto-flow-item__head, [data-howto-type=half-reverse] .p-howto-flow-item__head {
    flex: 1 1 auto;
    width: 100%;
  }
  [data-howto-type=half] .p-howto-flow-item__body, [data-howto-type=half-reverse] .p-howto-flow-item__body {
    flex: 0 0 auto;
    width: 250px;
  }
  [data-howto-type=full] .p-howto-flow-item__image img {
    height: 23.7288vw;
  }
  .p-profile-data__neardate > ul {
    display: block;
    margin-bottom: -10px;
  }
  .p-profile-data__neardate > ul > li {
    margin-bottom: 10px;
  }
  .p-profile-data__neardate dl dt {
    width: 185px;
    text-align: center;
  }
  .p-profile-booking__list > ul > li {
    width: 20%;
  }
}
@media screen and (max-width: 1049px){
  .p-pickup__row {
    display: block;
  }
  .p-pickup__head {
    margin-bottom: 40px;
  }
  .p-gal-today__list > ul > li {
    width: 50%;
  }
  .p-gal-tab {
    padding-top: 0;
  }
  .p-gal-tab > ul {
    flex-wrap: wrap;
    margin-right: -0.5px;
    margin-bottom: -1px;
    margin-left: -0.5px;
  }
  .p-gal-tab > ul > li {
    width: 33.3333333333%;
    margin-bottom: 1px;
    padding-right: 0.5px;
    padding-left: 0.5px;
  }
  .p-gal-tab-item {
    display: block;
    text-align: center;
  }
  .p-gal-tab-item__popup {
    top: 0;
    width: 145px;
    padding: 5px 10px;
    transform: translate(-50%, -50%);
    font-size: 2rem;
    pointer-events: auto;
  }
  .p-gal-tab-item__popup:after {
    bottom: -7px;
    width: 10px;
    height: 10px;
  }
  .p-gal-tab-item > span {
    background: #000;
    color: #fff;
    font-size: 1.8rem;
  }
  .p-gal-tab-item:hover > span {
    background: #fff;
    color: #000;
  }
  .p-gal-list__main > ul > li {
    width: 50%;
  }
  .p-bottom__row {
    display: block;
  }
  .p-bottom__col {
    width: 100%;
  }
  .p-bottom__col:not(:last-child) {
    margin-bottom: 50px;
  }
  .p-update-item__col-image {
    width: 270px;
  }
  .p-update-item__col-body {
    padding: 30px 30px 30px 25px;
  }
  .p-about-contact {
    display: block;
    padding: 45px 90px;
  }
  .p-about-contact__head {
    display: block;
    width: auto;
    margin-bottom: 30px;
  }
  .p-about-contact__head:after {
    width: 100%;
    height: 1px;
    margin-top: 30px;
  }
  .p-about-contact__heading {
    justify-content: flex-start;
  }
  .p-about-contact__list {
    padding-right: 0;
    padding-left: 0;
  }
  .p-about-contact__list > ul {
    display: block;
  }
  .p-about-contact__list > ul > li:not(:last-child) {
    margin-bottom: 20px;
  }
  .p-about-contact__tel {
    padding-right: 0;
    padding-left: 0;
  }
  .p-service-list > ul > li {
    width: 100%;
    margin-bottom: 60px;
  }
  .p-service-item__num {
    top: 0;
    left: 15px;
    transform: translateY(-50%);
  }
  .p-service-item__body {
    margin-top: -90px;
  }
  .p-service-item__article {
    width: 600px;
    padding: 0 10px 0 50px;
  }
  .p-service-item__article dl {
    transform: translateY(-22px);
  }
  .p-service-item__article dt {
    margin-bottom: 20px;
    font-size: 3.2rem;
  }
  .p-service-item__article dt:before {
    width: 20px;
    height: 10px;
    margin-right: 10px;
    transform: translateY(0.6em);
  }
  .p-service-item__article dt [data-service-head=sub] {
    font-size: 2.8rem;
  }
  .p-service-item__article dd {
    font-size: 2.8rem;
    line-height: 1.45;
  }
  .p-profile-booking__list > ul > li {
    width: 25%;
  }
  .p-price-transport__col-price {
    width: 50%;
  }
  .p-price-transport__col-map {
    width: 50%;
  }
  .p-price-payment {
    padding-bottom: 20px;
  }
  .p-price-payment__cvs > ul {
    display: block;
    margin-bottom: -20px;
  }
  .p-price-payment__cvs > ul > li {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 767px){
  body {
    font-size: 1.6rem;
  }
  a[href^="tel:"] {
    pointer-events: auto;
  }
  html {
    -ms-overflow-style: none; /* IE, Edge 対応 */
    scrollbar-width: none; /* Firefox 対応 */
  }
  html::-webkit-scrollbar {
    /* Chrome, Safari 対応 */
    display: none;
  }
  .p-language-select__inner input, .p-form-main input, .p-review-select input, .p-index-main__select input, .c-form-text input,
  .p-language-select__inner textarea,
  .p-form-main textarea,
  .p-review-select textarea,
  .p-index-main__select textarea,
  .c-form-text textarea,
  .p-language-select__inner select,
  .p-form-main select,
  .p-review-select select,
  .p-index-main__select select,
  .c-form-text select {
    font-size: 1.6rem;
  }
  .p-booking, .p-header-nav__content {
    -ms-overflow-style: none; /* IE, Edge 対応 */
    scrollbar-width: none; /* Firefox 対応 */
  }
  .p-booking::-webkit-scrollbar, .p-header-nav__content::-webkit-scrollbar {
    /* Chrome, Safari 対応 */
    display: none;
  }
  .p-profile-visual__inner, .p-breadcrumbs__container, .p-gal-list__container, .p-gal-datelist__container, .p-common-notfound__container, .p-common-content__inner, .p-common-text__container {
    padding-right: 4.66667vw;
    padding-left: 4.66667vw;
  }
  .p-access-map__container, .p-bottom__container, .p-gal-today__container, .p-pickup__container, .p-news__container, .p-footer-banner__container, .p-footer__container, .p-header-main__container {
    padding-right: 4.66667vw;
    padding-left: 4.66667vw;
  }
  .p-ranking-content__heading, .p-bottom-content__heading, .p-gal-today__heading, .p-pickup__heading, .p-news__heading {
    font-size: 6.6667vw;
  }
  .p-ranking-content__heading:before, .p-bottom-content__heading:before, .p-gal-today__heading:before, .p-pickup__heading:before, .p-news__heading:before {
    width: 2vw;
    height: 0.5333vw;
    margin-bottom: 1.3333vw;
  }
  .p-price-content__heading, .p-profile-content__heading, .p-about-contact__heading, .p-about-content__heading {
    font-size: 4.2667vw;
  }
  .p-price-content__heading:before, .p-profile-content__heading:before, .p-about-contact__heading:before, .p-about-content__heading:before {
    top: 2.1333vw;
    width: 2.6667vw;
    height: 0.8vw;
    margin-right: 1.3333vw;
  }
  .p-header-button {
    display: block;
    top: 1.3333vw;
    right: 1.3333vw;
    width: 16vw;
    height: 16vw;
  }
  .p-header-button a > span {
    width: 14.6667vw;
    height: 3.7333vw;
  }
  .p-header-button a > span > span {
    height: 0.2667vw;
  }
  .screen-visual-over .p-header-button a > span > span {
    filter: drop-shadow(0.2667vw 0.2667vw 0.4vw rgba(0, 0, 0, 0.5));
  }
  .p-header-button a > span > span:nth-child(1) {
    width: 14.6667vw;
  }
  .p-header-button a > span > span:nth-child(2) {
    top: 3.4667vw;
    width: 7.3333vw;
  }
  .p-header-button a:hover > span > span:nth-child(1) {
    width: 7.3333vw;
  }
  .p-header-button a:hover > span > span:nth-child(2) {
    width: 14.6667vw;
  }
  .menu-ready .p-header-button a > span > span:nth-child(1) {
    top: 0.5333vw;
    right: -0.2667vw;
    width: 4vw;
  }
  .menu-ready .p-header-button a > span > span:nth-child(2) {
    top: 1.4667vw;
    width: 13.3333vw;
  }
  .p-header-nav__content {
    width: 86.6667vw;
    max-width: none;
  }
  .p-header-nav__inner {
    padding: 10.6667vw 10.6667vw 0;
  }
  .p-header-nav__inner:after {
    height: 33.3333vw;
  }
  .p-header-nav__col-bottom {
    margin-top: 6.6667vw;
  }
  .p-header-nav__row-bottom {
    display: block;
  }
  .p-header-nav__col-lang {
    width: 53.3333vw;
    margin-top: 5.3333vw;
  }
  .p-header-nav__menu {
    font-size: 4.8vw;
  }
  .p-header-nav__menu > ul {
    margin-bottom: -3.3333vw;
  }
  .p-header-nav__menu > ul > li {
    margin-bottom: 3.3333vw;
  }
  .p-header-nav__booking {
    display: block;
    margin-top: 5.3333vw;
  }
  .p-header-nav__sns [data-sns=twitter] {
    width: 3.8667vw;
    height: 3.7333vw;
  }
  .p-header-nav__sns [data-sns=instagram] {
    width: 3.3333vw;
    height: 3.8667vw;
  }
  .p-footer {
    padding-top: 6.6667vw;
    padding-bottom: 10.6667vw;
  }
  .p-footer__container {
    padding-right: 0;
    padding-left: 0;
  }
  .p-footer__row {
    display: block;
  }
  .p-footer__row:not(:last-child) {
    margin-bottom: 5.3333vw;
  }
  .p-footer__col-sns {
    padding-top: 5.3333vw;
  }
  .p-footer__col-copyright {
    margin-top: 5.3333vw;
  }
  .p-footer-info__logo {
    width: 46.1333vw;
    margin-right: auto;
    margin-left: auto;
  }
  .p-footer-info__tel {
    margin-top: 3.3333vw;
    font-size: 2.6667vw;
  }
  .p-footer-info__tel > ul {
    align-items: center;
    justify-content: center;
    margin-right: -1em;
    margin-left: -1em;
  }
  .p-footer-info__tel > ul > li {
    padding-right: 1em;
    padding-left: 1em;
  }
  .p-footer-info__tel-another {
    margin-top: 1.3333vw;
    font-size: 2.6667vw;
    text-align: center;
  }
  .p-footer-sns > ul {
    align-items: center;
    justify-content: center;
    margin-right: -3.3333vw;
    margin-left: -3.3333vw;
  }
  .p-footer-sns > ul > li {
    padding-right: 3.3333vw;
    padding-left: 3.3333vw;
  }
  .p-footer-sns a[data-sns=twitter] {
    width: 3.8667vw;
    height: 4vw;
  }
  .p-footer-sns a[data-sns=instagram] {
    width: 3.4667vw;
    height: 4vw;
  }
  .p-footer-menu > ul {
    flex-wrap: wrap;
    margin-right: 0;
    margin-left: 0;
    border-top: 1px solid #e8e8e8;
  }
  .p-footer-menu > ul > li {
    width: 50%;
    padding-right: 0;
    padding-left: 0;
    border-bottom: 1px solid #e8e8e8;
  }
  .p-footer-menu > ul > li:nth-child(odd) {
    border-right: 1px solid #e8e8e8;
  }
  .p-footer-menu a {
    display: block;
    padding: 3.6vw;
    font-size: 2.6667vw;
    text-align: center;
  }
  .p-footer-menu a:after {
    display: none;
  }
  .p-footer-copyright {
    text-align: center;
  }
  .p-footer-copyright small {
    font-size: 2.6667vw;
  }
  .p-footer-banner {
    padding-top: 9.3333vw;
  }
  .p-footer-banner.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-footer-banner.on-screen.is-screen {
    transform: translateY(0);
  }
  .p-common-text__container {
    font-size: 3.7333vw;
    line-height: 1.4;
  }
  .p-common-content__container {
    padding-top: 6.6667vw;
    padding-bottom: 10.6667vw;
  }
  .--none-top .p-common-content__container {
    padding-top: 0;
  }
  .p-common-notfound {
    font-size: 3.7333vw;
    line-height: 1.4;
  }
  .p-common-notfound__head {
    margin-bottom: 5.3333vw;
    font-size: 4.8vw;
  }
  .p-common-notfound__button {
    margin-top: 5.3333vw;
  }
  .p-common-notfound__button a {
    font-size: 3.7333vw;
  }
  .p-common-notfound__button a:after {
    height: 0.2667vw;
  }
  .p-section:not(:last-child) {
    margin-bottom: 6.6667vw;
  }
  .page-loaded .p-section {
    transform: translateY(2.6667vw);
  }
  .p-index-main {
    min-height: 100vw;
  }
  .p-index-main__inner {
    padding: 20vw 12vw;
  }
  .p-index-main__head {
    margin-bottom: 8vw;
  }
  .p-index-main__logo {
    width: 68.9333vw;
    height: 12vw;
  }
  .p-index-main__catch {
    margin-top: 4vw;
    font-size: 2.9333vw;
    line-height: 1.45;
  }
  .p-index-main__enter {
    margin-bottom: 8vw;
  }
  .p-index-main__lang {
    width: 45.3333vw;
  }
  .p-index-main__select {
    height: 9.3333vw;
  }
  .p-index-main__select:before {
    right: 3.3333vw;
    width: 2.5333vw;
    height: 1.4667vw;
  }
  .p-index-main__select select {
    padding: 2.6667vw 3.3333vw;
    font-size: 2.9333vw;
  }
  .p-index-main__note {
    margin-top: 3.3333vw;
    font-size: 2.6667vw;
  }
  .p-index-enter__col-under, .p-index-enter__col-over {
    width: 26.6667vw;
  }
  .p-index-enter__col-age {
    padding-right: 4vw;
    padding-left: 4vw;
  }
  .p-index-enter__age {
    font-size: 14vw;
  }
  .p-index-enter__under a, .p-index-enter__over a {
    height: 9.3333vw;
    border-width: 0.4vw;
    font-size: 2.9333vw;
  }
  .p-index-enter__under a:before, .p-index-enter__over a:before {
    width: 1.0667vw;
    height: 2vw;
  }
  .p-index-enter__under a:before {
    left: 2.6667vw;
  }
  .p-index-enter__over a:before {
    right: 2.6667vw;
  }
  .p-firstview__bottom {
    margin-top: 6.6667vw;
  }
  .p-firstview__more {
    margin-top: 4vw;
  }
  .p-firstview-logo {
    width: 67.6vw;
  }
  .p-firstview-slide {
    min-height: 80vw;
  }
  .p-firstview-slide__pager {
    right: 4.6667vw;
    width: 1.8667vw;
  }
  .p-firstview-slide__pager .swiper-pagination-bullets .swiper-pagination-bullet {
    width: 1.8667vw;
    height: 1.8667vw;
  }
  .p-firstview-slide__pager .swiper-pagination-bullets .swiper-pagination-bullet:not(:last-child) {
    margin-bottom: 4vw;
  }
  .p-firstview-slide-item__movie [data-fv-movie=pc] {
    display: none;
  }
  .p-firstview-lower {
    height: 48vw;
  }
  .p-firstview-lower__visual [data-fv-lower=pc] {
    display: none;
  }
  .p-firstview-lower__visual [data-fv-lower=sp] {
    display: block;
  }
  .p-firstview-lower__heading {
    font-size: 8vw;
  }
  .p-firstview-more {
    font-size: 2.6667vw;
  }
  .p-firstview-more__text {
    transform: translateX(2vw);
  }
  .p-firstview-more__text:after {
    width: 12.6667vw;
    margin-left: 2vw;
  }
  .p-firstview-more__circle {
    width: 8vw;
    height: 8vw;
    transform: translateX(-2vw);
    border-radius: 13.3333vw;
  }
  .p-firstview-more__circle:before {
    width: 1.2vw;
    height: 1.2vw;
    border-radius: 13.3333vw;
  }
  [data-top-section=news] {
    padding-top: 10.6667vw;
  }
  .p-news__head {
    margin-bottom: 5.3333vw;
  }
  .p-news__body.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-news__slide > ul > li {
    width: 57.3333vw;
  }
  .p-news__pager {
    margin-top: 6vw;
    padding-right: 2.6667vw;
    padding-left: 2.6667vw;
  }
  .p-news__pager .js-news-slide__prev,
  .p-news__pager .js-news-slide__next {
    position: relative;
    bottom: 0.9333vw;
    width: 7.6vw;
    height: 1.7333vw;
  }
  .p-news__pager .js-news-slide__pager {
    margin-bottom: -1.3333vw;
  }
  .p-news__pager .js-news-slide__pager .swiper-pagination-bullet {
    width: 2.2667vw;
    height: 2.2667vw;
    margin: 0 2.6667vw 1.3333vw;
  }
  .p-news-item__head {
    width: 49.3333vw;
  }
  .p-news-item__body {
    margin-top: -2.6667vw;
    padding-left: 2vw;
  }
  .p-news-item__inner {
    min-height: 33.3333vw;
    padding: 2vw 6vw 2.2667vw;
  }
  .p-news-item__date {
    top: 9.3333vw;
    font-size: 2.6667vw;
    filter: drop-shadow(-0.2667vw 0.6667vw 0.6667vw #fff);
  }
  .p-news-item__title {
    font-size: 3.7333vw;
    line-height: 1.3;
  }
  .p-news-modal__content {
    width: 90%;
    padding-right: 0;
    padding-left: 0;
  }
  .p-news-modal__close a {
    width: 6.6667vw;
    height: 6.6667vw;
    font-size: 5.3333vw;
  }
  .p-news-detail {
    padding: 8vw 5.3333vw;
  }
  .p-news-detail__head {
    margin-bottom: 5.3333vw;
  }
  .p-news-detail__date {
    margin-bottom: 1.3333vw;
    font-size: 2.6667vw;
  }
  .p-news-detail__date:before {
    width: 1.3333vw;
    height: 0.1333vw;
    margin-right: 0.9333vw;
  }
  .p-news-detail__title {
    font-size: 4vw;
  }
  .p-news-detail__image {
    margin-bottom: 2.6667vw;
  }
  .p-news-detail__article {
    font-size: 3.2vw;
    line-height: 1.6;
  }
  [data-top-section=pickup] {
    padding-top: 14.6667vw;
  }
  .p-pickup__row {
    display: block;
  }
  .p-pickup__back {
    top: -4.2667vw;
  }
  .p-pickup__head {
    position: absolute;
    top: 0;
    left: 0;
    width: auto;
    margin-bottom: 0;
    padding-top: 10.6667vw;
  }
  .p-pickup__list > ul {
    flex-wrap: wrap;
    margin-right: 0;
    margin-bottom: -9.3333vw;
    margin-left: 0;
  }
  .p-pickup__list > ul:before {
    display: block;
    flex: 0 0 auto;
    width: 50%;
    content: "";
  }
  .p-pickup__list > ul > li {
    width: 50%;
    margin-bottom: 10.6667vw;
    padding-right: 0;
    padding-left: 0;
  }
  .p-pickup__list > ul > li:nth-child(even) {
    transform: translateY(-60%);
  }
  .on-screen .p-pickup__list > ul > li {
    transform: translateY(2.6667vw);
  }
  .p-pickup-item__class-label {
    top: 2.6667vw;
    right: 2.6667vw;
  }
  .p-pickup-item__class-label[data-cast-class="1"] {
    width: 10.9333vw;
    height: 10.5333vw;
  }
  .p-pickup-item__class-label[data-cast-class="2"] {
    width: 8.1333vw;
    height: 10.5333vw;
  }
  .p-pickup-item__class-label[data-cast-class="3"] {
    width: 10.5333vw;
    height: 10.5333vw;
  }
  .p-pickup-item__body {
    margin-top: -7.6vw;
    padding-left: 2.6667vw;
  }
  .p-pickup-item__date {
    margin-bottom: 1.3333vw;
    font-size: 2.6667vw;
  }
  .p-pickup-item__date:before {
    width: 1.3333vw;
    height: 0.1333vw;
    margin-right: 0.9333vw;
  }
  .p-pickup-item__name {
    margin-bottom: 2vw;
    font-size: 6.6667vw;
    filter: drop-shadow(0.2667vw 0.2667vw 0.2667vw rgba(0, 0, 0, 0.6));
  }
  .p-pickup-item__age {
    margin-bottom: 1.3333vw;
    font-size: 2.6667vw;
    filter: drop-shadow(0.2667vw 0.2667vw 0.2667vw rgba(0, 0, 0, 0.6));
  }
  .p-pickup-item__size {
    font-size: 2.6667vw;
    filter: drop-shadow(0.2667vw 0.2667vw 0.2667vw rgba(0, 0, 0, 0.6));
  }
  .p-pickup-item__arrow {
    right: 2.6667vw;
    bottom: 3.6vw;
    width: 7.6vw;
  }
  [data-top-section=todaysgal] {
    padding-top: 10.6667vw;
  }
  .p-gal-today__head {
    margin-bottom: 3.7333vw;
  }
  .p-gal-today__back {
    top: 1.3333vw;
  }
  .p-gal-today__body.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-gal-today__list > ul {
    margin-bottom: -5.3333vw;
  }
  .p-gal-today__list > ul > li {
    width: 50%;
    margin-bottom: 5.3333vw;
  }
  .p-gal-today-item__name {
    bottom: -4.6667vw;
    left: 3.3333vw;
    font-size: 5.3333vw;
  }
  .p-gal-today-item__class-label {
    right: 2.6667vw;
    bottom: 2.6667vw;
  }
  .p-gal-today-item__class-label[data-cast-class="1"] {
    width: 10.9333vw;
    height: 10.5333vw;
  }
  .p-gal-today-item__class-label[data-cast-class="2"] {
    width: 8.1333vw;
    height: 10.5333vw;
  }
  .p-gal-today-item__class-label[data-cast-class="3"] {
    width: 10.5333vw;
    height: 10.5333vw;
  }
  .p-gal-today-item__body {
    margin-top: 0;
    padding-left: 0;
  }
  .p-gal-today-item__inner {
    padding: 6.1333vw 4.6667vw 0;
    background: transparent;
  }
  .p-gal-today-item__age {
    margin-bottom: 1.8667vw;
    font-size: 2.6667vw;
  }
  .p-gal-today-item__size {
    margin-bottom: 1.8667vw;
    font-size: 2.6667vw;
  }
  .p-gal-today-item__schedule {
    font-size: 2.9333vw;
  }
  .p-gal-today-item__arrow {
    right: 3.7333vw;
    bottom: 1.3333vw;
    width: 7.6vw;
    height: 1.7333vw;
  }
  .p-gal-content__tab {
    padding-right: 4.6667vw;
    padding-left: 4.6667vw;
  }
  .p-gal-tab-item__popup {
    width: 19.3333vw;
    padding: 0.6667vw 1.3333vw;
    font-size: 2.6667vw;
  }
  .p-gal-tab-item__popup:after {
    bottom: -0.9333vw;
    width: 1.3333vw;
    height: 1.3333vw;
  }
  .p-gal-tab-item > span {
    font-size: 2.4vw;
  }
  .p-gal-tab-item:hover > span {
    background: #000;
    color: #fff;
  }
  .p-gal-tab-item.is-current > span:before {
    height: 0.6667vw;
  }
  .p-gal-datelist__main {
    position: relative;
    height: 12vw;
    transition: 1s ease;
  }
  .p-gal-datelist__main > ul {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 12vw;
    overflow: hidden;
    transition: 1s cubic-bezier(0.23, 1, 0.32, 1);
  }
  .p-gal-datelist__main > ul > li {
    width: 100%;
    transition: 0.3s ease;
  }
  .p-gal-datelist__main > ul > li:not(.is-current) {
    display: none;
    opacity: 0;
  }
  .datelist-ready .p-gal-datelist__main > ul > li:not(.is-current) {
    display: block;
  }
  .datelist-opened .p-gal-datelist__main > ul > li:not(.is-current) {
    opacity: 1;
  }
  .p-gal-datelist__item {
    justify-content: flex-start;
    width: 100%;
    height: 12vw;
    padding: 3.2667vw 4.4vw;
  }
  .p-gal-datelist__item:after {
    top: 0;
    right: 4.6667vw;
    bottom: 0;
    left: auto;
    width: 2.6667vw;
    height: 1.3333vw;
  }
  .is-current .p-gal-datelist__item:before {
    height: 0.6667vw;
  }
  .p-gal-datelist__inner {
    display: flex;
    align-items: flex-end;
  }
  .p-gal-datelist__date {
    font-size: 3.7333vw;
  }
  .p-gal-datelist__week {
    margin-left: 1.3333vw;
    padding-bottom: 0.4vw;
    font-size: 2.6667vw;
  }
  .p-gal-datelist__lg {
    display: none;
  }
  .p-gal-datelist__sm {
    display: block;
  }
  .p-gal-datelist-item {
    justify-content: flex-start;
    width: 100%;
    height: 12vw;
    padding: 3.2667vw 4.4vw;
  }
  .p-gal-datelist-item:after {
    display: none;
    top: 0;
    right: 4.6667vw;
    bottom: 0;
    left: auto;
    width: 2.6667vw;
    height: 1.3333vw;
  }
  .p-gal-datelist-item.is-current:before {
    height: 0.6667vw;
  }
  .p-gal-datelist-item__inner {
    display: flex;
    align-items: flex-end;
  }
  .p-gal-datelist-item__date {
    font-size: 3.7333vw;
  }
  .p-gal-datelist-item__week {
    margin-left: 1.3333vw;
    padding-bottom: 0.4vw;
    font-size: 2.6667vw;
  }
  .p-gal-list__container {
    padding-right: 0;
    padding-left: 0;
  }
  .p-gal-list__main {
    padding-top: 4vw;
    padding-bottom: 4vw;
  }
  .p-gal-list__main > ul {
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
  }
  .p-gal-list__main > ul > li {
    width: 50%;
    margin-bottom: 0;
    padding-right: 0;
    padding-left: 0;
  }
  .p-gal-item__body {
    padding: 2vw 3.0667vw 5.3333vw;
  }
  .p-gal-item__newface-label {
    padding: 0.6667vw 1.3333vw;
    font-size: 2.6667vw;
  }
  .p-gal-item__class-label {
    right: 2.6667vw;
    bottom: 2.6667vw;
  }
  .p-gal-item__class-label[data-cast-class="1"] {
    width: 10.9333vw;
    height: 10.5333vw;
  }
  .p-gal-item__class-label[data-cast-class="2"] {
    width: 8.1333vw;
    height: 10.5333vw;
  }
  .p-gal-item__class-label[data-cast-class="3"] {
    width: 10.5333vw;
    height: 10.5333vw;
  }
  .p-gal-item__top {
    margin-bottom: 0.6667vw;
  }
  .p-gal-item__col-age {
    padding-bottom: 1.0667vw;
  }
  .p-gal-item__name {
    font-size: 5.3333vw;
  }
  .p-gal-item__age {
    font-size: 2.6667vw;
  }
  .p-gal-item__size {
    margin-bottom: 0.6667vw;
    font-size: 2.6667vw;
  }
  .p-gal-item__comment {
    font-size: 3.2vw;
  }
  .p-gal-item__multilingual {
    margin-top: 1.3333vw;
    font-size: 2.6667vw;
  }
  .p-gal-item__multilingual dl dt {
    padding: 1.5333vw 2.5333vw;
  }
  .p-gal-item__multilingual dl dd {
    padding: 1.7333vw 2.5333vw;
  }
  .p-gal-item__multilingual dl dd > ul > li .flag-icon {
    font-size: 3.4667vw;
  }
  .p-gal-item__brought {
    margin-top: 1.3333vw;
    font-size: 2.6667vw;
  }
  .p-gal-item__schedule {
    margin-top: 1.3333vw;
  }
  .p-gal-item__schedule span {
    padding: 1.3333vw 2.6667vw;
    font-size: 2.6667vw;
  }
  .p-gal-item__schedule dl {
    font-size: 2.6667vw;
  }
  .p-gal-item__schedule dl dt {
    padding: 1.3333vw 4vw;
    text-align: center;
  }
  .p-gal-item__schedule dl dd {
    padding: 1.3333vw 2.6667vw;
  }
  .p-gal-item:hover {
    transform: translateY(-0.6667vw);
  }
  [data-top-section=bottom] {
    padding-top: 10.6667vw;
    padding-bottom: 16vw;
  }
  .p-bottom__col:not(:last-child) {
    margin-bottom: 6.6667vw;
  }
  .p-bottom__col.on-screen {
    transform: translateY(4vw);
  }
  .p-bottom-content__head {
    margin-bottom: 3.3333vw;
  }
  .p-bottom-content__heading {
    font-size: 4.8vw;
  }
  .p-bottom-content__heading:before {
    margin-bottom: 1.3333vw;
  }
  .p-sns-twitter-timeline {
    height: 80vw;
  }
  .p-update li:not(:last-child) {
    margin-bottom: 2.6667vw;
  }
  .p-update-item {
    background: #000;
    color: #fff;
  }
  .p-update-item__col-image {
    width: 36vw;
  }
  .p-update-item__col-body {
    padding: 4vw 4vw 4vw 3.3333vw;
  }
  .p-update-item__date {
    margin-bottom: 1.3333vw;
    font-size: 2.6667vw;
  }
  .p-update-item__date:before {
    width: 2vw;
    height: 0.4vw;
    margin-right: 2vw;
  }
  .p-update-item__title {
    margin-bottom: 0.6667vw;
    font-size: 3.2vw;
  }
  .p-update-item__col-age {
    margin-left: 1.3333vw;
  }
  .p-update-item__name {
    font-size: 4vw;
  }
  .p-update-item__age {
    font-size: 2.6667vw;
  }
  .p-update-item__size {
    margin-bottom: 2vw;
    font-size: 2.6667vw;
  }
  .p-update-item__text {
    font-size: 2.6667vw;
    line-height: 1.6;
  }
  .p-banner > ul > li:not(:last-child) {
    margin-bottom: 2.6667vw;
  }
  .p-background [data-background="1"] span:before {
    transform: skewY(-28.6deg) translateX(-50%) translateY(28.3%);
    background: rgba(26, 19, 17, 0.8);
  }
  .p-background [data-background="2"] span:before {
    transform: skewY(28.6deg) translateX(-50%) translateY(22.1%);
    background: rgba(239, 239, 239, 0.8);
  }
  .p-background [data-background="3"] span:before {
    background: rgba(26, 19, 17, 0.8);
  }
  .p-breadcrumbs {
    padding-top: 2.6667vw;
    padding-bottom: 2.6667vw;
    font-size: 3.4667vw;
  }
  .p-breadcrumbs__inner > ol > li:not(:last-child):after {
    width: 1.3333vw;
    margin-right: 1.3333vw;
    margin-left: 1.3333vw;
  }
  .p-access-map__container {
    padding-right: 0;
    padding-left: 0;
  }
  .p-access-map__inner {
    height: 66.6667vw;
  }
  .p-ranking__content > ul > li.on-screen {
    transform: tranalateY(2.6667vw);
  }
  .p-ranking__content > ul > li.on-screen.is-screen {
    transform: tranalateY(0);
  }
  .p-ranking-item__no {
    top: 3.3333vw;
    right: 3.3333vw;
    width: 14.8vw;
    height: 8.5333vw;
    font-size: 2.6667vw;
  }
  [data-ranking-no="1"] .p-ranking-item__no {
    top: 6.6667vw;
    right: 4.6667vw;
    width: 20.6667vw;
    height: 10.4vw;
    font-size: 4vw;
  }
  .p-ranking-item__body {
    margin-top: -4.2667vw;
  }
  [data-ranking-no="1"] .p-ranking-item__body {
    position: static;
    margin-top: 0;
  }
  .p-ranking-item__inner {
    padding: 0 4.6667vw 5.3333vw;
  }
  [data-ranking-no="1"] .p-ranking-item__inner {
    padding-top: 4vw;
    padding-bottom: 5.3333vw;
  }
  .p-ranking-item__name {
    font-size: 6.6667vw;
  }
  [data-ranking-no="1"] .p-ranking-item__name {
    font-size: 9.3333vw;
  }
  .p-about-content:not(:last-child) {
    margin-bottom: 6.6667vw;
  }
  .p-about-content__head {
    margin-bottom: 2vw;
  }
  .p-about-content__body.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-about-content__body.on-screen.is-screen {
    transform: translateY(0);
  }
  .p-about-list > ul > li:not(:last-child) {
    margin-bottom: 5.3333vw;
  }
  .p-about-list > ul > li.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-about-list > ul > li.on-screen.is-ready {
    transform: translateY(0);
  }
  .p-about-list dl dt {
    margin-bottom: 1.3333vw;
    font-size: 4vw;
  }
  .p-about-list dl dt:before {
    top: 1.6vw;
    width: 0.8vw;
    height: 4vw;
    margin-right: 2vw;
  }
  .p-about-list dl dd {
    font-size: 3.7333vw;
  }
  .p-about-member > ul {
    margin-bottom: -9.3333vw;
  }
  .p-about-member > ul > li {
    width: 100%;
    margin-bottom: 9.3333vw;
  }
  .p-about-member > ul > li.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-about-member > ul > li.on-screen.is-screen {
    transform: translateY(0);
  }
  .p-about-member-item__head {
    margin-bottom: 4vw;
  }
  .p-about-member-item__body dl dt {
    margin-bottom: 1.3333vw;
    font-size: 4vw;
  }
  .p-about-member-item__body dl dt:before {
    top: 1.6vw;
    width: 0.8vw;
    height: 4vw;
    margin-right: 2vw;
  }
  .p-about-member-item__body dl dd {
    font-size: 3.7333vw;
  }
  .p-about-member-item__image {
    width: 61.3333vw;
    border-radius: 61.3333vw;
  }
  .p-about-member-item__name {
    margin-bottom: 2vw;
  }
  .p-about-member-item__name dl dd {
    font-size: 3.7333vw;
  }
  .p-about-member-item__comment {
    margin-bottom: 2vw;
  }
  .p-about-member-item__sns dl dt {
    margin-bottom: 0;
  }
  .p-about-member-item__sns a {
    width: 4.2667vw;
    height: 4.2667vw;
  }
  .p-about-contact {
    padding: 6vw 12vw;
  }
  .p-about-contact__head {
    display: block;
    width: auto;
    margin-bottom: 4vw;
  }
  .p-about-contact__head:after {
    width: 100%;
    height: 1px;
    margin-top: 4vw;
  }
  .p-about-contact__list > ul > li:not(:last-child) {
    margin-bottom: 2.6667vw;
  }
  .p-about-contact__list dl {
    font-size: 3.7333vw;
  }
  .p-about-contact__tel {
    margin-top: 2.6667vw;
    font-size: 3.7333vw;
    text-align: left;
  }
  .p-review__select {
    width: 40vw;
    padding-bottom: 5.3333vw;
  }
  .p-review__pager {
    padding-bottom: 5.3333vw;
  }
  .p-review__list {
    padding-bottom: 5.3333vw;
  }
  .p-review-select:before {
    right: 3.3333vw;
    width: 2.5333vw;
    height: 1.4667vw;
  }
  .p-review-select select {
    padding: 2.8vw 3.3333vw;
    border-radius: 1.0667vw;
    font-size: 3.7333vw;
  }
  .p-review-pager {
    margin-right: -1.3333vw;
    margin-left: -1.3333vw;
  }
  .p-review-pager a {
    width: 9.3333vw;
    height: 9.3333vw;
    margin-right: 1.3333vw;
    margin-left: 1.3333vw;
    border-radius: 9.3333vw;
    font-size: 2.6667vw;
  }
  .p-review-pager a.pagerbox-side {
    display: none;
  }
  .p-review-list > ul {
    margin-bottom: -3.3333vw;
  }
  .p-review-list > ul > li {
    margin-bottom: 3.3333vw;
  }
  .p-review-list > ul > li.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-review-list > ul > li.on-screen.is-ready {
    transform: translateY(0);
  }
  .p-review-item {
    display: block;
  }
  .p-review-item__head {
    width: 100%;
    padding: 2.6667vw;
  }
  .p-review-item__head:after {
    top: auto;
    bottom: 0;
    width: 100%;
    height: 1px;
  }
  .--profile .p-review-item__head {
    width: 100%;
  }
  .p-review-item__col-image {
    width: 33.3333vw;
  }
  .p-review-item__col-data {
    padding-left: 3.3333vw;
  }
  .--profile .p-review-item__col-data {
    padding-left: 0;
  }
  .p-review-item__body {
    max-height: 64vw;
    padding: 2.6667vw 5.3333vw;
  }
  .p-review-item__body .ps__rail-y {
    width: 2.6667vw;
  }
  .p-review-item__body .ps__rail-y:hover, .p-review-item__body .ps__rail-y:focus, .p-review-item__body .ps__rail-y.ps--clicking {
    width: 2.6667vw;
  }
  .p-review-item__data {
    padding-top: 0.9333vw;
  }
  .p-review-item__data > ul > li:not(:last-child) {
    margin-bottom: 1.3333vw;
  }
  .p-review-item__data dl {
    font-size: 2.6667vw;
  }
  .p-review-item__data dl dt {
    width: 30vw;
    letter-spacing: 0.05em;
  }
  .p-review-item__data dl dd {
    letter-spacing: 0.05em;
  }
  .p-review-item__country > ul {
    margin-right: -0.6667vw;
    margin-left: -0.6667vw;
  }
  .p-review-item__country > ul > li {
    padding-right: 0.6667vw;
    padding-left: 0.6667vw;
  }
  .p-review-item__country .flag-icon {
    font-size: 3.4667vw;
  }
  .p-review-item__country svg {
    width: 5.3333vw;
  }
  .p-review-item__text {
    font-size: 3.7333vw;
    line-height: 1.42;
  }
  .p-review-item__star:before {
    width: 15.3333vw;
    height: 2.4vw;
  }
  .p-review-item__star:after {
    width: 0;
    height: 2.4vw;
  }
  .p-review-item__star[data-star="0"]:after {
    width: 0vw;
  }
  .p-review-item__star[data-star="1"]:after {
    width: 3.066667vw;
  }
  .p-review-item__star[data-star="2"]:after {
    width: 6.133334vw;
  }
  .p-review-item__star[data-star="3"]:after {
    width: 9.200001vw;
  }
  .p-review-item__star[data-star="4"]:after {
    width: 12.266668vw;
  }
  .p-review-item__star[data-star="5"]:after {
    width: 15.333335vw;
  }
  .p-howto__section:not(:last-child) {
    margin-bottom: 5.3333vw;
  }
  .p-howto__section.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-howto__section.on-screen.is-screen {
    transform: translateY(0);
  }
  .p-howto-flow > ul > li {
    width: 100%;
  }
  .p-howto-flow-item[data-howto-type=half][data-howto-order=even], .p-howto-flow-item[data-howto-type=half-reverse][data-howto-order=even] {
    flex-direction: row-reverse;
  }
  .p-howto-flow-item__num {
    width: 9.8667vw;
    height: 9.8667vw;
    font-size: 3.7333vw;
  }
  [data-howto-order=even] .p-howto-flow-item__num {
    right: 0;
    left: auto;
  }
  [data-howto-type=half] .p-howto-flow-item__head, [data-howto-type=half-reverse] .p-howto-flow-item__head {
    flex: 0 0 auto;
    width: 46.1333vw;
  }
  [data-howto-type=full] .p-howto-flow-item__head {
    height: 46.1333vw;
  }
  [data-howto-type=half] .p-howto-flow-item__body, [data-howto-type=half-reverse] .p-howto-flow-item__body {
    flex: 1 1 auto;
    width: 100%;
  }
  [data-howto-type=full] .p-howto-flow-item__body {
    min-height: 16vw;
    padding: 1.6vw 4.6667vw;
  }
  [data-howto-type=full] .p-howto-flow-item__image img {
    height: 100%;
  }
  .p-howto-flow-item__text {
    font-size: 3.7333vw;
  }
  [data-howto-type=half] .p-howto-flow-item__text, [data-howto-type=half-reverse] .p-howto-flow-item__text {
    max-width: 32vw;
  }
  .p-service__section:not(:last-child) {
    margin-bottom: 13.3333vw;
  }
  .p-service__section.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-service__section.on-screen.is-screen {
    transform: translateY(0);
  }
  .p-service-movie__text {
    margin-bottom: 4vw;
    font-size: 3.7333vw;
    line-height: 1.5;
  }
  .p-service-list > ul {
    margin-bottom: -8vw;
  }
  .p-service-list > ul > li {
    margin-bottom: 8vw;
  }
  .p-service-item__num {
    left: 2vw;
    font-size: 9.3333vw;
  }
  .p-service-item__body {
    margin-top: -12vw;
  }
  .p-service-item__article {
    width: 80vw;
    padding: 0 1.3333vw 0 6.6667vw;
  }
  .p-service-item__article dl {
    transform: translateY(-2.9333vw);
  }
  .p-service-item__article dt {
    margin-bottom: 2.6667vw;
    font-size: 4.2667vw;
  }
  .p-service-item__article dt:before {
    width: 2.6667vw;
    height: 1.3333vw;
    margin-right: 1.3333vw;
  }
  .p-service-item__article dt [data-service-head=sub] {
    margin-top: 0.6667vw;
    font-size: 3.7333vw;
  }
  .p-service-item__article dd {
    font-size: 3.7333vw;
  }
  .p-profile-content:not(:last-child) {
    margin-bottom: 6.6667vw;
  }
  .p-profile-content.--top-short {
    margin-top: -3.3333vw;
  }
  .p-profile-content__head {
    margin-bottom: 0.6667vw;
  }
  .p-profile-content__body.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-profile-content__body.on-screen.is-screen {
    transform: translateY(0);
  }
  .p-profile-visual {
    margin-bottom: 4vw;
  }
  .p-profile-visual__inner {
    margin-top: -7.4667vw;
  }
  .p-profile-visual__thumb {
    padding: 2.6667vw;
  }
  .p-profile-visual__thumb-inner > ul {
    margin-right: -0.6667vw;
    margin-bottom: -1.3333vw;
    margin-left: -0.6667vw;
  }
  .p-profile-visual__thumb-inner > ul > li {
    width: 20%;
    margin-bottom: 1.3333vw;
    padding-right: 0.6667vw;
    padding-left: 0.6667vw;
  }
  .p-profile-visual__thumb-item:after {
    top: 0.4vw;
    right: 0.4vw;
    width: 4.6667vw;
    height: 4.6667vw;
    font-size: 4.6667vw;
  }
  .p-profile-visual-modal__content {
    display: block;
    padding: 0;
  }
  .p-profile-visual-modal__close {
    top: 0;
    right: 0;
  }
  .p-profile-visual-modal__close a {
    width: 13.3333vw;
    height: 13.3333vw;
    font-size: 8vw;
    filter: drop-shadow(0 0 1.3333vw rgba(0, 0, 0, 0.5));
  }
  .p-profile-visual-modal__image-item {
    width: 90%;
  }
  .p-profile-visual-modal__image-item:before {
    padding-top: 177.7777777778%;
  }
  .p-profile-visual-modal__prev, .p-profile-visual-modal__next {
    width: 6.6667vw;
    height: 20vw;
  }
  .p-profile-visual-modal__prev:before, .p-profile-visual-modal__next:before {
    width: 3.7333vw;
    height: 6.9333vw;
  }
  .p-profile-data__head {
    margin-bottom: 4.6667vw;
  }
  .p-profile-data__row {
    align-items: center;
  }
  .p-profile-data__col-name {
    display: block;
  }
  .p-profile-data__col-neardate {
    padding-left: 2.6667vw;
  }
  .p-profile-data__name-inner {
    align-items: center;
  }
  .p-profile-data__class-label {
    margin-top: 1.3333vw;
    margin-right: 0;
    margin-left: 0;
  }
  .p-profile-data__class-label[data-cast-class="1"] {
    width: 10.9333vw;
    height: 10.5333vw;
  }
  .p-profile-data__class-label[data-cast-class="2"] {
    width: 8.1333vw;
    height: 10.5333vw;
  }
  .p-profile-data__class-label[data-cast-class="3"] {
    width: 10.5333vw;
    height: 10.5333vw;
  }
  .p-profile-data__name {
    font-size: 8.6667vw;
  }
  .p-profile-data__age {
    bottom: 0;
    font-size: 3.2vw;
  }
  .p-profile-data__neardate > ul {
    display: block;
    margin-bottom: -1.3333vw;
  }
  .p-profile-data__neardate > ul > li {
    margin-bottom: 1.3333vw;
  }
  .p-profile-data__neardate dl {
    font-size: 2.6667vw;
  }
  .p-profile-data__neardate dl dt {
    width: 22vw;
    padding: 1.3333vw;
    text-align: center;
  }
  .p-profile-data__neardate dl dd {
    width: 22vw;
    padding: 1.3333vw 2vw;
  }
  .p-profile-schedule > ul {
    display: block;
  }
  .p-profile-schedule > ul > li:not(:last-child) {
    border-bottom: 1px solid #6a6a6a;
  }
  .p-profile-schedule > ul:nth-child(1) > li {
    width: 100%;
  }
  .p-profile-schedule > ul:nth-child(2) > li {
    width: 100%;
  }
  .p-profile-schedule dl {
    display: flex;
    align-items: center;
    padding: 2.6667vw 6vw;
    text-align: left;
  }
  .p-profile-schedule dl dt {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    width: 26vw;
    font-size: 3.7333vw;
  }
  .p-profile-schedule dl dt span {
    margin-left: 4vw;
    font-size: 2.6667vw;
  }
  .p-profile-schedule dl dd {
    flex: 1 1 auto;
    font-size: 3.2vw;
  }
  .p-profile-manual > ul > li:not(:last-child) {
    margin-bottom: 4vw;
  }
  .p-profile-manual > ul > li.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-profile-manual > ul > li.on-screen.is-screen {
    transform: translateY(0);
  }
  .p-profile-manual dl {
    display: block;
    font-size: 3.7333vw;
    line-height: 1.5;
  }
  .p-profile-manual dl dt {
    width: 100%;
    padding: 1.8667vw 5.3333vw;
    text-align: left;
  }
  .p-profile-manual dl dd {
    width: 100%;
    padding: 1.8667vw 5.3333vw;
  }
  .p-profile-comment {
    font-size: 3.7333vw;
    line-height: 1.5;
  }
  .p-profile-list > ul {
    margin-bottom: -2.6667vw;
  }
  .p-profile-list > ul > li {
    width: 100%;
    margin-bottom: 2.6667vw;
  }
  .p-profile-item {
    font-size: 3.7333vw;
    line-height: 1.5;
  }
  .p-profile-item dt {
    display: block;
    min-height: 0;
    padding: 1.7333vw 5.3333vw;
    text-align: left;
  }
  .p-profile-item dd {
    padding: 1.7333vw 5.3333vw;
    line-height: 1.5;
  }
  .p-profile-option > ul {
    margin-bottom: -2vw;
  }
  .p-profile-option > ul > li {
    width: 100%;
    margin-bottom: 2vw;
  }
  .p-profile-option dl {
    font-size: 3.7333vw;
  }
  .p-profile-option dl dt {
    padding: 1.8667vw 6vw;
    line-height: 1.5;
    text-align: left;
  }
  .p-profile-option dl dd {
    width: 10.6667vw;
  }
  .p-profile-review-list > ul {
    margin-bottom: 0;
  }
  .p-profile-review-list > ul > li {
    margin-bottom: 0;
  }
  .p-profile-review-list__more {
    display: none !important;
    padding-top: 5.3333vw;
  }
  .p-profile-review-list__more.is-active {
    display: none;
  }
  .p-profile-review-list__more a {
    font-size: 3.7333vw;
  }
  .p-profile-review-list__prev, .p-profile-review-list__next {
    display: flex;
  }
  .p-profile-diary-pic > ul {
    margin-right: -1.6667vw;
    margin-bottom: -3.3333vw;
    margin-left: -1.6667vw;
  }
  .p-profile-diary-pic > ul > li {
    width: 33.3333333333%;
    margin-bottom: 3.3333vw;
    padding-right: 1.6667vw;
    padding-left: 1.6667vw;
  }
  .p-profile-other__body {
    padding: 4vw 6vw 6vw;
  }
  .p-profile-other-tab a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2.5vw;
    font-size: 3.3333vw;
    line-height: 1.25;
  }
  .p-profile-other-tab a.is-active:before {
    height: 0.6667vw;
  }
  .p-profile-booking__head {
    margin-bottom: 6.6667vw;
    font-size: 3.2vw;
  }
  .p-profile-booking__tel {
    margin-bottom: 2.6667vw;
    font-size: 2.6667vw;
  }
  .p-profile-booking__list > ul {
    margin-right: -1.3333vw;
    margin-bottom: -2.6667vw;
    margin-left: -1.3333vw;
  }
  .p-profile-booking__list > ul > li {
    width: 33.3333333333%;
    margin-bottom: 2.6667vw;
    padding-right: 1.3333vw;
    padding-left: 1.3333vw;
  }
  .p-profile-booking-item {
    width: 100%;
    padding: 2.6667vw;
    border-width: 0.2667vw;
    font-size: 2.6667vw;
  }
  .p-profile-booking-item__icon {
    height: 13.3333vw;
  }
  .p-profile-booking-item__name {
    margin-top: 2vw;
  }
  .p-profile-link a {
    padding: 1.8667vw 5.3333vw;
    font-size: 3.7333vw;
    line-height: 1.5;
  }
  .p-form-main__body input[type=text],
  .p-form-main__body input[type=email],
  .p-form-main__body input[type=date],
  .p-form-main__body textarea,
  .p-form-main__body select {
    max-width: none;
    height: 9.3333vw;
    padding: 2.8vw 3.3333vw;
    border-radius: 1.0667vw;
    font-size: 3.7333vw;
  }
  .p-form-main__body textarea {
    max-width: none;
    height: 40vw;
  }
  .p-form-main__select {
    max-width: none;
  }
  .p-form-main__select:before {
    right: 3.3333vw;
    width: 2.5333vw;
    height: 1.4667vw;
  }
  .p-form-main__check {
    padding-top: 0;
  }
  .p-form-main__check > ul {
    display: block;
    margin-bottom: 0;
  }
  .p-form-main__check > ul > li {
    margin-bottom: 0;
  }
  .p-form-main__check > ul > li:not(:last-child) {
    margin-bottom: 4vw;
  }
  .p-form-main__check label input + span {
    font-size: 3.7333vw;
  }
  .p-form-main__check label input + span:before {
    width: 5.3333vw;
    height: 5.3333vw;
    margin-right: 2vw;
    border-radius: 0.8vw;
  }
  .p-form-main__check label input + span:after {
    top: 1.7333vw;
    left: 1.3333vw;
    width: 2.6667vw;
    height: 1.8667vw;
  }
  .p-form-main__bottom {
    margin-top: 4vw;
  }
  .p-form-main__submit > ul {
    margin-right: -1.3333vw;
    margin-left: -1.3333vw;
  }
  .p-form-main__submit > ul > li {
    padding-right: 1.3333vw;
    padding-left: 1.3333vw;
  }
  .p-form-main__submit button {
    width: 26.6667vw;
  }
  .p-form-main__submit button span {
    height: 9.3333vw;
    font-size: 3.7333vw;
  }
  .p-form-main-item {
    display: block;
    font-weight: 500;
    font-size: 3.7333vw;
    line-height: 1.45;
  }
  .p-form-main-item:not(:last-child) {
    margin-bottom: 5.3333vw;
  }
  .p-form-main-item__label {
    margin-bottom: 1.3333vw;
    padding-right: 0;
  }
  .p-form-main-item__label span {
    padding-top: 0;
  }
  .p-form-main-item__input {
    width: 100%;
  }
  .p-price-content:not(:last-child) {
    margin-bottom: 6.6667vw;
  }
  .p-price-content__head {
    margin-bottom: 2vw;
  }
  .p-price-content__body.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-price-content__body.on-screen.is-screen {
    transform: translateY(0);
  }
  .p-price-content__section:not(:last-child) {
    margin-bottom: 2.6667vw;
  }
  .p-price-table__note {
    margin-top: 2vw;
    font-size: 3.4667vw;
  }
  .p-price-table__note[data-margin] {
    margin-top: 4vw;
  }
  .p-price-table table thead {
    font-size: 3.4667vw;
    line-height: 1.35;
  }
  .p-price-table table tbody {
    font-size: 3.4667vw;
    line-height: 1.35;
  }
  .p-price-table table tr > *:first-child {
    width: 18vw;
  }
  .p-price-table table tr th, .p-price-table table tr td {
    padding: 1.8667vw 1.3333vw;
  }
  .p-price-table table tr td {
    padding-left: 0.6667vw;
  }
  .p-price-table table[data-price-extension] tr > *:first-child {
    width: auto;
  }
  .p-price-class > ul {
    margin-bottom: -4vw;
  }
  .p-price-class > ul > li {
    width: 100%;
    margin-bottom: 4vw;
  }
  .p-price-class dl {
    font-size: 3.7333vw;
  }
  .p-price-class dl dt {
    padding: 1.5333vw 5.3333vw;
    font-size: 3.7333vw;
  }
  .p-price-class dl dd {
    padding: 4vw 5.3333vw;
  }
  .p-price-option > ul {
    margin-right: -1.6667vw;
    margin-bottom: -3.3333vw;
    margin-left: -1.6667vw;
  }
  .p-price-option > ul > li {
    width: 33.3333333333%;
    margin-bottom: 3.3333vw;
    padding-right: 1.6667vw;
    padding-left: 1.6667vw;
  }
  .p-price-option[data-price-option=other] > ul > li {
    width: 100%;
  }
  .p-price-option-item__body {
    padding: 1.9333vw 2vw;
    font-size: 2.6667vw;
  }
  .p-price-option-item__body span {
    font-size: 2.6667vw;
  }
  .p-price-option-item__body dl dd {
    margin-top: 0.6667vw;
  }
  [data-price-option=other] .p-price-option-item__body {
    padding: 1.8667vw 1.3333vw;
  }
  [data-price-option=other] .p-price-option-item__body span {
    font-size: 2.6667vw;
  }
  [data-price-option=other] .p-price-option-item__body dl dt {
    margin-bottom: 0.6667vw;
  }
  .p-price-transport__row {
    display: block;
  }
  .p-price-transport__col-price {
    width: auto;
    padding-right: 0;
  }
  .p-price-transport__col-map {
    width: 100%;
    margin-top: 3.3333vw;
  }
  .p-price-transport__price > ul > li:not(:last-child) {
    margin-bottom: 4vw;
  }
  .p-price-transport__price dl {
    display: block;
    font-size: 3.7333vw;
    line-height: 1.4;
  }
  .p-price-transport__price dl dt {
    width: 100%;
    margin-bottom: 1.3333vw;
  }
  .p-price-prohibit {
    font-size: 3.7333vw;
    line-height: 1.4;
  }
  .p-price-prohibit__text {
    margin-bottom: 2.6667vw;
  }
  .p-price-prohibit__list > ul > li:before {
    top: 2.1333vw;
    width: 2vw;
    height: 0.6667vw;
    margin-right: 3.2vw;
  }
  .p-price-prohibit__list > ul > li:not(:last-child) {
    margin-bottom: 2.6667vw;
  }
  .p-price-prohibit__note {
    margin-top: 2.6667vw;
  }
  .p-price-payment {
    padding-bottom: 2.6667vw;
  }
  .p-price-payment__cvs {
    margin-top: 4vw;
  }
  .p-price-payment__cvs > ul > li:not(:last-child) {
    margin-bottom: 2.6667vw;
  }
  .p-price-datecourse-intro {
    margin-bottom: 6.6667vw;
  }
  .p-price-datecourse-intro__heading {
    font-size: 5.6vw;
  }
  .p-price-datecourse-intro__lead {
    margin: 4.6667vw auto 0;
    font-size: 3.4667vw;
  }
  .p-price-datecourse-intro__slide {
    margin: 0 -4.6667vw;
    padding: 2.6667vw 0;
  }
  .p-price-datecourse-intro__slide .js-datecourse-slide__prev, .p-price-datecourse-intro__slide .js-datecourse-slide__next {
    width: 6.6667vw;
    height: 6.6667vw;
  }
  .p-price-datecourse-intro__slide .js-datecourse-slide__prev:before, .p-price-datecourse-intro__slide .js-datecourse-slide__next:before {
    width: 1.8667vw;
    height: 3.4667vw;
  }
  .p-price-datecourse-intro__slide .js-datecourse-slide__prev {
    left: 3.3333vw;
  }
  .p-price-datecourse-intro__slide .js-datecourse-slide__next {
    right: 3.3333vw;
  }
  .p-price-datecourse-intro__slide .js-datecourse-slide__pagination {
    bottom: 2.6667vw;
    padding: 2vw 2.6667vw;
    font-size: 3.7333vw;
    filter: drop-shadow(0 0.2667vw 0.5333vw rgba(0, 0, 0, 0.5));
  }
  .p-pagetop {
    right: 4.6667vw;
    bottom: 6.6667vw;
  }
  .p-pagetop a dt {
    width: 1.7333vw;
    height: 7.6vw;
  }
  .p-pagetop a dd {
    margin-top: 1.0667vw;
    font-size: 2.6667vw;
  }
  .p-language-select__inner {
    height: 9.3333vw;
  }
  .p-language-select__inner:before {
    right: 3.3333vw;
    width: 2.5333vw;
    height: 1.4667vw;
  }
  .p-language-select__inner select {
    padding: 2.6667vw 3.3333vw;
    font-size: 2.9333vw;
  }
  .p-enquete-castdata__col-main {
    padding-left: 2.6667vw;
  }
  .p-enquete-castdata__top {
    margin-bottom: 0.6667vw;
  }
  .p-enquete-castdata__col-age {
    margin-left: 2.6667vw;
    padding-bottom: 1.0667vw;
  }
  .p-enquete-castdata__name {
    font-size: 5.3333vw;
  }
  .p-enquete-castdata__age {
    font-size: 2.6667vw;
  }
  .p-enquete-castdata__size {
    margin-bottom: 0.6667vw;
    font-size: 2.6667vw;
  }
  .p-enquete-castdata__comment {
    font-size: 3.2vw;
  }
  .p-enquete-result__head {
    margin-bottom: 6.6667vw;
  }
  .p-enquete-result__section {
    margin-bottom: 5.3333vw;
  }
  .p-enquete-result-section.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-enquete-result-section.on-screen.is-screen {
    transform: translateY(0);
  }
  .p-enquete-result-section dl {
    display: block;
    font-size: 3.7333vw;
    line-height: 1.5;
  }
  .p-enquete-result-section dl dt {
    width: 100%;
    padding: 1.8667vw 5.3333vw;
    border-right: 0;
  }
  .p-enquete-result-section dl dd {
    width: 100%;
    padding: 1.8667vw 5.3333vw;
  }
  .p-enquete-result-backlink {
    margin-bottom: 2vw;
  }
  .p-enquete-result-backlink.on-screen {
    transform: translateY(2.6667vw);
  }
  .p-enquete-result-backlink.on-screen.is-screen {
    transform: translateY(0);
  }
  .p-enquete-result-backlink a {
    font-size: 3.7333vw;
    line-height: 1.5;
  }
  .p-dialog__content {
    max-width: 90%;
    padding-right: 0;
    padding-left: 0;
  }
  .p-dialog-content__main {
    padding: 3.3333vw;
    font-size: 2.9333vw;
  }
  .p-dialog-content__bottom {
    padding: 0 3.3333vw 3.3333vw;
  }
  .p-dialog-content__bottom > ul {
    margin-right: -0.6667vw;
    margin-left: -0.6667vw;
  }
  .p-dialog-content__bottom > ul > li {
    padding-right: 0.6667vw;
    padding-left: 0.6667vw;
  }
  .p-dialog-content__bottom a {
    min-width: 13.3333vw;
    padding: 0.6667vw 1.3333vw;
    border-radius: 2vw;
    font-size: 2.9333vw;
  }
  .p-booking__close {
    top: 5.3333vw;
    right: 5.3333vw;
  }
  .p-booking__close a {
    width: 8vw;
    height: 8vw;
  }
  .p-booking-list__head {
    margin-bottom: 8vw;
    font-size: 3.4667vw;
  }
  .p-booking-list__tel {
    margin-bottom: 2.6667vw;
    font-size: 3.7333vw;
  }
  .p-booking-list__list > ul {
    margin-right: -1.3333vw;
    margin-bottom: -2.6667vw;
    margin-left: -1.3333vw;
  }
  .p-booking-list__list > ul > li {
    margin-bottom: 2.6667vw;
    padding-right: 1.3333vw;
    padding-left: 1.3333vw;
  }
  .p-booking-item {
    width: 21.3333vw;
    padding: 2.6667vw;
    border-width: 0.2667vw;
    font-size: 2.4vw;
  }
  .p-booking-item__icon {
    height: 13.3333vw;
  }
  .p-booking-item__name {
    margin-top: 2vw;
  }
  .p-booking-button {
    display: none;
    right: 1.3333vw;
    bottom: 33.3333vw;
  }
  .booking-ready .p-booking-button {
    transform: translateX(calc(100% + 1.3333vw));
  }
  .p-booking-button a {
    width: 16vw;
    height: 16vw;
    font-size: 2.4vw;
    filter: drop-shadow(0 0.8vw 0.6667vw rgba(0, 0, 0, 0.25));
  }
  .p-booking-button a:before {
    width: 2.6667vw;
    height: 4vw;
    margin-bottom: 1.3333vw;
  }
  .p-booking-button a:after {
    right: -1.3333vw;
    width: 3.6vw;
    height: 5.0667vw;
  }
  .u-pc {
    display: none !important;
  }
  .u-pc-inline {
    display: none !important;
  }
  .u-pc-inline-block {
    display: none !important;
  }
  .u-sp {
    display: block !important;
  }
  .u-sp-inline {
    display: inline !important;
  }
  .u-sp-inline-block {
    display: inline-block !important;
  }
  .u-sp-none {
    display: none !important;
  }
}

/*# sourceMappingURL=style.css.map*/