@charset "UTF-8";
/*!
Theme Name: adansilk
Theme URI: -
Author: adansilk
Author URI: adansilk
Description: adansilk
Version: 1.0.0
License: GNU General Public License v2 or later
Text Domain: adansilk
Tags:
*/
/**
 # Vendor CSS
 */
/**
 # Foundation
 */
/*
html5doctor.com Reset Stylesheet
v1.4
2009-07-27
Author: Richard Clark - http://richclarkdesign.com
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

main {
  display: block;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

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

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/*
	SASS Vars
---------------------------------------------------------------------------- */
/*
	CSS Vars
---------------------------------------------------------------------------- */
:root {
  --main-color: #002D72;
  --sub-color: #006636;
  --cta-color: #837062;
  --accent-color: #FF0000;
}

:root {
  --font-crimson: "Crimson Text", serif;
  --font-main: "Times New Roman", "Crimson Text", serif;
  --font-serif: "YuMincho", "Yu Mincho", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

@media (prefers-reduced-motion: no-preference) {
  html:focus-within {
    scroll-behavior: smooth;
  }
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  font-family: "Yu Gothic Medium","Yu Gothic","YuGothic","Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Lato",sans-serif;
  color: #000;
  text-align: left;
  background-color: #FFF;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.0em;
  overflow-wrap: break-word;
  position: relative;
}

.transition {
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all  0.5s ease;
}

.hover:hover {
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
}

.clearfix {
  zoom: 1;
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

.pc {
  display: block !important;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}

.smp {
  display: none !important;
}

@media screen and (max-width: 768px) {
  .smp {
    display: block !important;
  }
}

a:focus {
  outline: 0;
}

/**
 # Layout
 */
/*--------------------------------------------------------------
    # content.scss
--------------------------------------------------------------*/
/*--------------------------------------------------------------
    # footer.scss
--------------------------------------------------------------*/
/*
    Footer
--------------------------------------------------------------*/
.l--footer {
  background-color: #000;
  padding: 60px 24px;
  position: relative;
  z-index: 1;
}

.l--footer__inner {
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.l--footer-logo {
  width: 228px;
  display: block;
  margin: 0 0 20px;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.l--footer-logo img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

.l--footer-logo:hover {
  opacity: 0.45;
}

.l--footer-address {
  display: block;
  font-size: 1.0rem;
  color: #FFF;
  font-style: normal;
  line-height: 1.6;
  letter-spacing: 0.1em;
  margin: 0 0 10px;
}

.l--footer-copyright {
  color: #FFF;
  line-height: 1.0;
  font-size: 1.0rem;
  font-family: var(--font-serif);
}

.l--footer-primary {
  width: 33.33333%;
}

.l--footer-secondry {
  width: 61.11111%;
  display: flex;
  justify-content: flex-end;
}

.l--footer-list {
  padding: 0 0 0 20px;
  margin: 0 7.54717% 0 0;
  border-left: 1px solid #FFF;
}

.l--footer-list:last-child {
  margin: 0;
}

.l--footer-list.serif--text > li > a {
  font-family: var(--font-serif);
  font-size: 1.1rem;
  letter-spacing: 0.1em;
}

.l--footer-list.sans-serif--text > li > a {
  font-size: 1.0rem;
}

.l--footer-list > li {
  margin: 0 0 14px;
}

.l--footer-list > li:last-child {
  margin: 0;
}

.l--footer-list > li > a {
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.l--footer-list > li > a:link {
  text-decoration: none;
  color: #FFF;
}

.l--footer-list > li > a:visited {
  text-decoration: none;
  color: #FFF;
}

.l--footer-list > li > a:hover {
  text-decoration: none;
  color: #FFF;
}

@media screen and (max-width: 768px) {
  .l--footer {
    padding: 12.82051vw 8.71795vw 25.64103vw;
  }
  .l--footer__inner {
    display: none;
  }
  .l--footer-logo {
    width: 62.82051vw;
    margin: 0 auto 6.41026vw;
  }
  .l--footer--smpblock__inner {
    display: flex;
    padding: 6.41026vw 2.5641vw;
    border-top: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
  }
  .l--footer--smpblock-list {
    margin-right: 10.25641vw;
  }
  .l--footer--smpblock-list:last-child {
    margin: 0;
  }
  .l--footer--smpblock-list li.serif--text a {
    font-family: var(--font-main);
    letter-spacing: 0.1em;
  }
  .l--footer--smpblock-list > li > a {
    margin: 0 0 5.12821vw;
    font-size: 2.82051vw;
    display: block;
    color: #FFF;
  }
  .l--footer--smpblock-list > li > a:link {
    text-decoration: none;
  }
  .l--footer--smpblock-list > li > a:visited {
    text-decoration: none;
  }
  .l--footer--smpblock-list > li > a:hover {
    text-decoration: none;
  }
  .l--footer--smpblock-addres {
    display: block;
    margin: 6.41026vw 0;
    text-align: center;
    font-size: 2.5641vw;
    letter-spacing: 0.1em;
    line-height: 1.6;
    color: #FFF;
  }
  .l--footer-copyright {
    display: block;
    font-size: 2.5641vw;
    font-family: var(--font-serif);
    text-align: center;
  }
}

/*--------------------------------------------------------------
    # header.scss
--------------------------------------------------------------*/
/*
    Header
--------------------------------------------------------------*/
.l--header {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 75px;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  border-bottom: 1px solid #FFF;
}

.l--header.js--scrolled-effect {
  background-color: rgba(0, 0, 0, 0.65);
}

.l--header__inner {
  position: relative;
}

.l--header-logo {
  position: absolute;
  top: 30px;
  left: 82px;
}

.l--header-logo-main {
  width: 290px;
  display: block;
}

.l--header-logo-main svg {
  width: 100%;
  vertical-align: bottom;
  fill: #FFF;
  height: 20px;
}

.l--header-functions {
  position: absolute;
  right: 145px;
  top: 22px;
  display: flex;
  align-items: center;
}

.l--header-button-menu {
  position: relative;
}

.l--header-button-menu:hover .l--header-button-list {
  display: block;
}

.l--header-button-menu > span {
  width: 120px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  background-color: var(--sub-color);
  font-size: 1.2rem;
  letter-spacing: 0.2em;
  color: #FFF;
}

.l--header-button-list {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #006033;
  z-index: 100;
  padding: 10px 8px 10px 10px;
}

.l--header-button-list > li {
  margin: 0 0 10px;
}

.l--header-button-list > li:last-child {
  margin: 0;
}

.l--header-button {
  display: block;
  color: #FFF;
  font-size: 1.0rem;
  letter-spacing: 0.02em;
  padding: 0 0 0 10px;
  background-image: url(assets/images/common/arrow--right__wh.svg);
  background-repeat: no-repeat;
  background-position: center left;
  background-size: 6.23px 8.56px;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.l--header-button:link {
  text-decoration: none;
}

.l--header-button:visited {
  text-decoration: none;
}

.l--header-button:hover {
  text-decoration: none;
  opacity: 0.45;
}

.l--header-lang {
  display: flex;
  margin-right: 16px;
}

.l--header-lang > li.separator {
  margin: 0 6.3px;
  width: 17.22px;
  height: 17.22px;
  background-image: url(assets/images/common/icon__line45.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.l--header-lang > li > a {
  color: rgba(255, 255, 255, 0.2);
  font-family: var(--font-main);
  font-size: 1.7rem;
  font-weight: 400;
  letter-spacing: 0.2em;
  display: block;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.l--header-lang > li > a:link {
  text-decoration: none;
}

.l--header-lang > li > a:visited {
  text-decoration: none;
}

.l--header-lang > li > a:hover {
  text-decoration: none;
  color: white;
}

.l--header-lang > li > a.focus {
  color: white;
}

.l--header-snslist {
  display: flex;
  align-items: center;
  margin-left: 20px;
}

.l--header-snslist > li {
  margin-right: 10px;
}

.l--header-snslist > li:last-child {
  margin: 0;
}

.l--header-snslist > li > a {
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.l--header-snslist > li > a:hover {
  opacity: 0.45;
}

.l--header-snslist > li > a img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

body.tax-courseguide_category header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.single-courseguide header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.slug-shop header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.slug-information header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.slug-access header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.post-type-archive-newsandevents header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.post-type-archive-newsandevents-en header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.post-type-archive-newsandevents-kr header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.single-newsandevents header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.single-newsandevents-en header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.single-newsandevents-kr header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.slug-party header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.slug-drink header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.slug-breakfast header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.page-template-page-contact header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.page-template-page-regist header {
  background-color: rgba(0, 0, 0, 0.65);
}

body.error404 header {
  background-color: rgba(0, 0, 0, 0.65);
}

@media screen and (max-width: 768px) {
  .l--header {
    height: 12.82051vw;
    border-bottom: none;
  }
  .l--header-logo {
    top: 4.35897vw;
    left: 2.5641vw;
  }
  .l--header-logo-main {
    width: 56.41026vw;
  }
  .l--header-logo-main svg {
    height: 3.84615vw;
  }
  .l--header-functions {
    display: none;
  }
}

/*
    FixedBanner
--------------------------------------------------------------*/
.l--fixedbanner {
  position: fixed;
  z-index: 100;
  bottom: 40px;
  right: 80px;
}

.l--fixedbanner-list {
  display: flex;
}

.l--fixedbanner-list > li > a {
  width: 205px;
  height: 40px;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  letter-spacing: 0.15em;
  color: #FFF;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.l--fixedbanner-list > li > a:link {
  text-decoration: none;
}

.l--fixedbanner-list > li > a:visited {
  text-decoration: none;
}

.l--fixedbanner-list > li > a:hover {
  text-decoration: none;
  opacity: 0.65;
}

.l--fixedbanner-list > li > a.golf--reserved {
  background-image: url(assets/images/common/fixednav__bg__golf.png);
  border-radius: 20px 0 0 20px;
}

.l--fixedbanner-list > li > a.hotel--reserved {
  background-image: url(assets/images/common/fixednav__bg__hotel.png);
  border-radius: 0 20px 20px 0;
}

@media screen and (max-width: 768px) {
  .l--fixedbanner {
    bottom: 5.12821vw;
    right: 0;
    left: 0;
    margin: 0 auto;
  }
  .l--fixedbanner-list {
    display: flex;
    justify-content: center;
  }
  .l--fixedbanner-list > li > a {
    width: 44.87179vw;
    height: 10.25641vw;
    font-size: 3.58974vw;
  }
}

/*
    Menu
--------------------------------------------------------------*/
.burger--wrap {
  width: 43px;
  height: 30px;
  top: 22px;
  right: 80px;
  display: block;
  position: absolute;
  cursor: pointer;
  z-index: 1200;
}

.burger {
  width: 43px;
  height: 11px;
  position: absolute;
  display: flex;
  align-items: center;
  top: 0;
  right: 0;
}

.burger .line {
  width: 43px;
  height: 1px;
  background: #FFF;
  transition: 0.3s;
  top: 0;
  left: 0;
  position: absolute;
}

.burger::before {
  width: 43px;
  height: 1px;
  content: "";
  position: absolute;
  top: 45%;
  left: 0;
  background: #FFF;
  transition: 0.6s;
}

.burger::after {
  content: "";
  position: absolute;
  width: 43px;
  height: 1px;
  bottom: 0;
  left: 0;
  background: #FFF;
  transition: 0.8s;
}

.burger--text {
  position: absolute;
  bottom: 0;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.2em;
  font-family: var(--font-main);
  color: #FFF;
}

.navigation {
  opacity: 1.0;
  top: 0;
  right: -516px;
  bottom: 0;
  z-index: -1;
  max-width: 516px;
  height: 100vh;
  position: fixed;
  transition: 0.45s;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  background: #FFF;
}

.navigation .navigation--content {
  padding: 75px 0;
  max-width: 350px;
  margin: 0 auto;
  position: relative;
  box-sizing: border-box;
  overflow: scroll;
}

.navigation .navigation--content__inner {
  background-image: url(assets/images/common/menu/menu__bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 23px 15px 20px;
}

.nav-active {
  visibility: inherit;
  display: block;
  opacity: 1.0;
  z-index: 300;
  display: block;
  width: 516px;
  height: 100vh;
  top: 0;
  right: 0;
  bottom: 0;
}

.burger-active::before {
  transform: rotate(150deg);
  top: 0;
  bottom: 0;
  height: 1px;
  margin: auto;
  background-color: #FFF;
}

.burger-active::after {
  transform: rotate(-150deg);
  top: 0;
  bottom: 0;
  margin: auto;
  background-color: #FFF;
  width: 100%;
}

.burger-active > .line {
  transform: scale(0);
}

.nav--logo {
  width: 100%;
  display: block;
  margin: 0 0 15px;
}

.nav--logo svg {
  width: 100%;
  vertical-align: bottom;
  height: 22px;
}

.nav--contents {
  background-color: rgba(0, 0, 0, 0.4);
  margin: 0 0 15px;
}

.nav--contents__inner {
  padding: 15px;
}

.nav--mainlist > li {
  margin: 0 0 20px;
}

.nav--mainlist > li:last-child {
  margin: 0;
}

.nav--mainlist > li > a {
  font-size: 2.0rem;
  font-weight: 400;
  font-family: var(--font-main);
  letter-spacing: 0.1em;
  line-height: 2.5rem;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.nav--mainlist > li > a:link {
  text-decoration: none;
  color: #FFF;
}

.nav--mainlist > li > a:visited {
  text-decoration: none;
  color: #FFF;
}

.nav--mainlist > li > a:hover {
  text-decoration: none;
  color: #FFF;
  opacity: 0.65;
}

.nav--mainlist > li > a span {
  display: inline-block;
  padding: 0 20px 0 0;
  background-image: url(assets/images/common/arrow--right__wh.svg);
  background-position: center right;
  background-size: 8.33px 11.44px;
  background-repeat: no-repeat;
}

.nav--meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 15px;
}

.nav--meta > li {
  width: 47.5%;
}

.nav--meta-button {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #FFF;
  border: 1px solid #707070;
  width: 100%;
  height: 38px;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.nav--meta-button:link {
  text-decoration: none;
  color: #000;
}

.nav--meta-button:visited {
  text-decoration: none;
  color: #000;
}

.nav--meta-button:hover {
  text-decoration: none;
  color: #000;
  opacity: 0.75;
}

.nav--meta-button span {
  font-size: 1.3rem;
  font-weight: 400;
  font-family: var(--font-main);
  letter-spacing: 0.03em;
}

.nav--reserve-title {
  background-color: rgba(0, 0, 0, 0.4);
  padding: 4px;
  font-size: 2.1rem;
  font-weight: 400;
  font-family: var(--font-main);
  letter-spacing: 0.05em;
  color: #FFF;
  margin: 0 0 5px;
}

.nav--reserve-list {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.nav--reserve-list > li {
  width: 47.5%;
}

.nav--reserve-button {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(0, 0, 0, 0.4);
  width: 100%;
  height: 47px;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.nav--reserve-button:link {
  text-decoration: none;
  color: #FFF;
}

.nav--reserve-button:visited {
  text-decoration: none;
  color: #FFF;
}

.nav--reserve-button:hover {
  text-decoration: none;
  color: #FFF;
  opacity: 0.75;
}

.nav--reserve-button span {
  font-size: 1.1rem;
  letter-spacing: 0.10em;
  display: inline-block;
  padding: 0 20px 0 0;
  background-image: url(assets/images/common/arrow--right__wh.svg);
  background-position: center right;
  background-size: 8.33px 11.44px;
  background-repeat: no-repeat;
}

.nav--contents-close {
  cursor: pointer;
  display: block;
  margin: 24px 0 0;
  text-align: center;
  padding: 34px 0 0;
  background-image: url(assets/images/common/menu/close__btn.svg);
  background-position: top center;
  background-size: 26px 26px;
  background-repeat: no-repeat;
}

.nav--contents-close em {
  font-style: normal;
  font-size: 1.2rem;
  font-weight: 400;
  font-family: var(--font-main);
  letter-spacing: 0.2em;
}

body.scrollrock {
  height: 100%;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .burger--wrap {
    width: 8.97436vw;
    height: 6.53846vw;
    top: 4.10256vw;
    right: 2.5641vw;
  }
  .burger {
    width: 8.97436vw;
    height: 2.82051vw;
  }
  .burger .line {
    width: 8.97436vw;
    height: 1px;
    background: #FFF;
    transition: 0.3s;
    top: 0;
    left: 0;
    position: absolute;
  }
  .burger::before {
    width: 8.97436vw;
    height: 1px;
    content: "";
    position: absolute;
    top: 45%;
    left: 0;
    background: #FFF;
    transition: 0.6s;
  }
  .burger::after {
    content: "";
    position: absolute;
    width: 8.97436vw;
    height: 1px;
    bottom: 0;
    left: 0;
    background: #FFF;
    transition: 0.8s;
  }
  .burger--text {
    font-size: 2.5641vw;
  }
  .navigation {
    right: -100vw;
    max-width: 100vw;
    height: 100vh;
  }
  .navigation .navigation--content {
    padding: 7.69231vw 0;
    max-width: 84.61538vw;
  }
  .navigation .navigation--content__inner {
    padding: 3.84615vw 3.84615vw 0;
  }
  .nav-active {
    width: 100vw;
    height: 100vh;
    top: 0;
    right: 0;
    bottom: 0;
  }
  .burger-active::before {
    transform: rotate(150deg);
    top: 0;
    bottom: 0;
    height: 1px;
    margin: auto;
    background-color: #FFF;
  }
  .burger-active::after {
    transform: rotate(-150deg);
    top: 0;
    bottom: 0;
    margin: auto;
    background-color: #FFF;
    width: 100%;
  }
  .burger-active > .line {
    transform: scale(0);
  }
  .nav--logo {
    margin: 0 0 3.84615vw;
  }
  .nav--logo svg {
    width: 100%;
    vertical-align: bottom;
    height: 5.12821vw;
  }
  .nav--contents {
    margin: 0 0 3.84615vw;
  }
  .nav--contents__inner {
    padding: 3.84615vw;
  }
  .nav--mainlist > li {
    margin: 0 0 5.12821vw;
  }
  .nav--mainlist > li > a {
    font-size: 4.35897vw;
    line-height: 1.17647;
  }
  .nav--mainlist > li > a span {
    padding: 0 3.84615vw 0 0;
    background-size: 2.05128vw 2.82051vw;
  }
  .nav--meta {
    width: 76.92308vw;
    margin: 0 0 3.84615vw;
  }
  .nav--meta > li {
    width: 47.66667%;
  }
  .nav--meta-button {
    height: 9.23077vw;
  }
  .nav--meta-button span {
    font-size: 2.82051vw;
  }
  .nav--reserve-title {
    padding: 1.02564vw;
    font-size: 4.61538vw;
    margin: 0 0 1.28205vw;
  }
  .nav--reserve-list > li {
    width: 47.66667%;
  }
  .nav--reserve-button {
    height: 11.02564vw;
  }
  .nav--reserve-button span {
    font-size: 2.5641vw;
    padding: 0 3.84615vw 0 0;
    background-size: 2.05128vw 2.82051vw;
  }
  .nav--contents-close {
    cursor: pointer;
    display: block;
    margin: 3.07692vw 0 0;
    padding: 6.15385vw 0 0;
    background-size: 4.61538vw 4.61538vw;
  }
  .nav--contents-close em {
    font-size: 2.82051vw;
  }
  .nav--langsmp {
    margin: 3.58974vw -3.84615vw 0;
    background-color: rgba(0, 0, 0, 0.55);
  }
  .nav--langsmp-list {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2.5641vw 0;
  }
  .nav--langsmp-list > li.separator {
    margin: 0 6.41026vw;
    width: 3.18974vw;
    height: 3.18974vw;
    background-image: url(assets/images/common/icon__line45.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
  .nav--langsmp-list > li > a {
    color: rgba(255, 255, 255, 0.2);
    font-family: var(--font-main);
    font-size: 4.61538vw;
    font-weight: 400;
    letter-spacing: 0.05em;
    display: block;
    -webkit-transition: all 0.25s ease;
    -moz-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all  0.25s ease;
  }
  .nav--langsmp-list > li > a:link {
    text-decoration: none;
  }
  .nav--langsmp-list > li > a:visited {
    text-decoration: none;
  }
  .nav--langsmp-list > li > a:hover {
    text-decoration: none;
    color: white;
  }
  .nav--langsmp-list > li > a.focus {
    color: white;
  }
}

/**
 # Objects -  Compornent -
 */
/*
	btn.scss
---------------------------------------------------------------------------- */
.edit-post-layout .editor-styles-wrapper .wp-block-button__link {
  margin-top: 2.0em;
  margin-bottom: 2.0em;
  display: block;
  background-color: var(--sub-color);
  font-size: 1.2rem;
  letter-spacing: 0.025em;
  padding: 15px 40px 15px 20px;
  background-image: url(assets/images/common/arrow--right__wh.svg);
  background-repeat: no-repeat;
  background-size: 8.33px 11.44px;
  background-position: center right 20px;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.edit-post-layout .editor-styles-wrapper .wp-block-button__link:hover {
  opacity: 0.45;
}

@media screen and (max-width: 768px) {
  .edit-post-layout .editor-styles-wrapper .wp-block-button__link {
    font-size: 3.07692vw;
    padding: 3.84615vw 7.69231vw 3.84615vw 2.5641vw;
    background-size: 2.1359vw 2.93333vw;
    background-position: center right 3.84615vw;
  }
}

/*
	blockquote.scss
---------------------------------------------------------------------------- */
.edit-post-layout .editor-styles-wrapper blockquote {
  margin: 30px 0px 30px 5px;
  padding: 30px 15px 30px 20px;
  margin-top: 20px;
  font-style: normal;
  border-left: 5px solid #cccccc;
  background-color: #f6f6f6;
  position: relative;
}

.edit-post-layout .editor-styles-wrapper blockquote p {
  position: relative;
  z-index: 3;
}

.edit-post-layout .editor-styles-wrapper blockquote p:last-child {
  margin: 0;
}

.edit-post-layout .editor-styles-wrapper blockquote:before {
  content: "”";
  font-size: 300%;
  font-weight: bold;
  line-height: 0.8em;
  font-family: 'Times New Roman', "ＭＳ Ｐゴシック", sans-serif;
  color: #cccccc;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
}

@media screen and (max-width: 768px) {
  .edit-post-layout .editor-styles-wrapper blockquote {
    margin: 5.12821vw 0px 5.12821vw 1.28205vw;
    padding: 5.12821vw 3.84615vw 5.12821vw 5.12821vw;
    border-left: 1.02564vw solid #cccccc;
  }
}

/*
    display.scss
---------------------------------------------------------------------------- */
.edit-post-layout .editor-styles-wrapper .wp-block-column img {
  width: 100%;
  vertical-align: bottom;
  width: 100% !important;
}

@media screen and (max-width: 768px) {
  .edit-post-layout .editor-styles-wrapper .wp-block-columns {
    gap: 0;
  }
  .edit-post-layout .editor-styles-wrapper .wp-block-column .wp-block-image {
    margin: 0 auto 5.12821vw;
  }
}

/*
    headline.scss
---------------------------------------------------------------------------- */
.edit-post-layout .editor-styles-wrapper h1 {
  font-size: 2.4rem;
  font-family: var(--font-serif);
  font-weight: 500;
  color: #000;
  letter-spacing: 0.025em;
  margin: 0 0 20px;
  line-height: 1.33333;
  position: relative;
}

.edit-post-layout .editor-styles-wrapper h2 {
  font-size: 2.0rem;
  color: #000;
  margin: 40px 0 20px;
  padding: 0 0 15px;
  border-bottom: 1px solid #000;
  line-height: 1.5;
}

.edit-post-layout .editor-styles-wrapper h2:first-child {
  margin: 0 0 20px;
}

.edit-post-layout .editor-styles-wrapper h3 {
  font-size: 1.8rem;
  color: #000;
  margin: 40px 0 20px;
  padding: 0;
  line-height: 1.44444;
}

.edit-post-layout .editor-styles-wrapper h3:first-child {
  margin: 0 0 20px;
}

.edit-post-layout .editor-styles-wrapper h4 {
  font-size: 1.6rem;
  color: #000;
  margin: 40px 0 20px;
  padding: 0;
  line-height: 1.25;
}

.edit-post-layout .editor-styles-wrapper h4:first-child {
  margin: 0 0 20px;
}

.edit-post-layout .editor-styles-wrapper h5 {
  font-size: 1.6rem;
  color: #000;
  margin: 40px 0 20px;
  padding: 0;
  line-height: 1.25;
}

.edit-post-layout .editor-styles-wrapper h5:first-child {
  margin: 0 0 20px;
}

.edit-post-layout .editor-styles-wrapper h6 {
  font-size: 1.6rem;
  color: #000;
  margin: 40px 0 20px;
  padding: 0;
  line-height: 1.25;
}

.edit-post-layout .editor-styles-wrapper h6:first-child {
  margin: 0 0 20px;
}

@media screen and (max-width: 768px) {
  .edit-post-layout .editor-styles-wrapper h1 {
    font-size: 5.12821vw;
    margin: 0 0 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper h2 {
    font-size: 4.10256vw;
    margin: 7.69231vw 0 5.12821vw;
    padding: 0 0 3.84615vw;
  }
  .edit-post-layout .editor-styles-wrapper h2:first-child {
    margin: 0 0 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper h3 {
    font-size: 4.10256vw;
    margin: 7.69231vw 0 5.12821vw;
    line-height: 1.44444;
  }
  .edit-post-layout .editor-styles-wrapper h3:first-child {
    margin: 0 0 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper h4 {
    font-size: 4.10256vw;
    margin: 7.69231vw 0 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper h4:first-child {
    margin: 0 0 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper h5 {
    font-size: 3.58974vw;
    margin: 7.69231vw 0 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper h5:first-child {
    margin: 0 0 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper h6 {
    font-size: 3.58974vw;
    margin: 7.69231vw 0 5.12821vw;
    line-height: 1.25;
  }
  .edit-post-layout .editor-styles-wrapper h6:first-child {
    margin: 0 0 5.12821vw;
  }
}

/*
	hr.scss
---------------------------------------------------------------------------- */
.edit-post-layout .editor-styles-wrapper .wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
  width: 100%;
  max-width: initial;
}

.wp-block-separator {
  border-bottom: 1px solid var(--main-color);
}

/*
	images.scss
---------------------------------------------------------------------------- */
.edit-post-layout .editor-styles-wrapper .wp-block-image {
  clear: both;
  margin: 0 auto 30px;
}

.edit-post-layout .editor-styles-wrapper .wp-element-caption {
  line-height: 1.35;
}

.edit-post-layout .editor-styles-wrapper .wp-block-image .aligncenter {
  margin: 0 auto;
}

.edit-post-layout .editor-styles-wrapper .wp-block-image .aligncenter img {
  max-width: 100%;
  width: auto;
}

.wp-block-media-text__media img {
  height: auto;
}

.wp-block-image img {
  height: auto;
}

.wp-block {
  margin-top: 0;
}

.edit-post-layout .editor-styles-wrapper img.size-full {
  width: auto;
  margin: 0 auto;
  height: auto;
  display: block;
}

.edit-post-layout .editor-styles-wrapper .wp-block-image .size-full {
  width: auto;
  margin: 0 auto;
  height: auto;
}

/*
    list.scss
---------------------------------------------------------------------------- */
.edit-post-layout .editor-styles-wrapper .block-library-list ol, .edit-post-layout .editor-styles-wrapper .block-library-list ul {
  padding-left: 0;
}

.edit-post-layout .editor-styles-wrapper ul {
  margin: 0 0 30px;
  padding: 0;
  counter-reset: number;
}

.edit-post-layout .editor-styles-wrapper ul li {
  font-size: 1.4rem;
  color: #000;
  position: relative;
  line-height: 1.42857;
  padding: 0 0 10px 0;
  margin: 0 0 10px;
  list-style: none;
  list-style-position: outside;
  border-bottom: 1px solid #C7C7C7;
}

.edit-post-layout .editor-styles-wrapper ul li:last-child {
  margin: 0;
  padding: 0;
  border: none;
}

.edit-post-layout .editor-styles-wrapper ol {
  margin: 0 0 30px;
  padding: 0;
  list-style: none;
  counter-reset: number;
  padding: 0;
}

.edit-post-layout .editor-styles-wrapper ol li {
  font-size: 1.4rem;
  color: #000;
  padding: 0 0 10px 25px;
  margin: 0 0 10px;
  line-height: 1.42857;
  position: relative;
  list-style: none;
  list-style-position: outside;
  border-bottom: 1px solid #C7C7C7;
}

.edit-post-layout .editor-styles-wrapper ol li:before {
  counter-increment: number;
  content: counter(number) "";
  display: block;
  position: absolute;
  font-size: 1.2rem;
  background-color: var(--sub-color);
  border-radius: 50%;
  text-align: center;
  left: 0;
  top: 0px;
  color: #FFF;
  margin-right: .5em;
  width: 20px;
  height: 20px;
  line-height: 2.0rem;
}

@media screen and (max-width: 768px) {
  .edit-post-layout .editor-styles-wrapper .block-library-list ol, .edit-post-layout .editor-styles-wrapper .block-library-list ul {
    padding-left: 0;
  }
  .edit-post-layout .editor-styles-wrapper ul {
    margin: 0 0 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper ul li {
    font-size: 3.58974vw;
    padding: 0 0 2.5641vw 0;
    margin: 0 0 2.5641vw;
  }
  .edit-post-layout .editor-styles-wrapper ol {
    margin: 0 0 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper ol li {
    font-size: 3.58974vw;
    padding: 0 0 2.5641vw 7.69231vw;
    margin: 0 0 2.5641vw;
  }
  .edit-post-layout .editor-styles-wrapper ol li:before {
    font-size: 2.82051vw;
    width: 4.61538vw;
    height: 4.61538vw;
    line-height: 4.61538vw;
  }
}

/*
    table.scss
---------------------------------------------------------------------------- */
.edit-post-layout .editor-styles-wrapper table {
  margin: 0 0 30px;
  width: 100%;
}

.edit-post-layout .editor-styles-wrapper table p {
  margin: 0;
}

.edit-post-layout .editor-styles-wrapper table thead th {
  border: 1px solid #B9B9B9;
  padding: 10px;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.025em;
  color: #767676;
  line-height: 1.5;
  background-color: #F2F2F2;
}

.edit-post-layout .editor-styles-wrapper table th {
  border: 1px solid #B9B9B9;
  padding: 10px;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.025em;
  color: #767676;
  line-height: 1.5;
  background-color: #F2F2F2;
}

.edit-post-layout .editor-styles-wrapper table td {
  color: #000;
  padding: 10px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.025em;
  border: 1px solid #B9B9B9;
}

@media screen and (max-width: 768px) {
  .edit-post-layout .editor-styles-wrapper table {
    margin: 0 0 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper table thead th {
    padding: 2.5641vw;
    font-size: 3.58974vw;
  }
  .edit-post-layout .editor-styles-wrapper table th {
    padding: 2.5641vw;
    font-size: 3.58974vw;
  }
  .edit-post-layout .editor-styles-wrapper table td {
    padding: 2.5641vw;
    font-size: 3.58974vw;
  }
}

/*
    _text.scss
---------------------------------------------------------------------------- */
.edit-post-layout .editor-styles-wrapper p {
  color: #000;
  font-size: 1.4rem;
  line-height: 2.14286;
  font-weight: 400;
  word-break: break-all;
  margin: 0 0 1.5em;
  letter-spacing: 0.025em;
}

.edit-post-layout .editor-styles-wrapper p em {
  font-style: italic;
}

.edit-post-layout .editor-styles-wrapper p strong {
  font-weight: 700;
}

.edit-post-layout .editor-styles-wrapper p mark {
  font-weight: normal;
  font-style: normal;
}

.edit-post-layout .editor-styles-wrapper p a {
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  font-weight: 700;
  color: var(--sub-color);
}

.edit-post-layout .editor-styles-wrapper p a:link {
  text-decoration: underline;
  color: var(--sub-color);
}

.edit-post-layout .editor-styles-wrapper p a:visited {
  text-decoration: underline;
  color: var(--sub-color);
}

.edit-post-layout .editor-styles-wrapper p a:hover {
  text-decoration: none;
  opacity: 0.50;
  color: var(--sub-color);
}

.edit-post-layout .editor-styles-wrapper .style-marker {
  background: var(--sub-color);
  display: inline;
  padding: 3px 5px;
  font-style: normal;
  color: #000;
}

@media screen and (max-width: 768px) {
  .edit-post-layout .editor-styles-wrapper p {
    font-size: 3.33333vw;
    line-height: 1.85714;
    margin: 0 0 1.5em;
  }
  .edit-post-layout .editor-styles-wrapper .style-marker {
    padding: 0.76923vw 1.28205vw;
  }
}

/*
    _module.scss
---------------------------------------------------------------------------- */
/**
 # Objects -  Module -
 */
/*
	carousel.scss
---------------------------------------------------------------------------- */
.slick--type01 .slick-prev, .slick--type01 .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 18px;
  height: 25px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin: 0 40px;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.slick--type01 .slick-prev:hover, .slick--type01 .slick-next:hover {
  opacity: 0.65;
}

.slick--type01 .slick-prev::before, .slick--type01 .slick-next::before {
  font-size: 0;
  line-height: 0;
}

.slick--type01 .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
  left: -7.5%;
}

.slick--type01 .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
  right: -7.5%;
}

@media screen and (max-width: 768px) {
  .slick--type01 .slick-prev, .slick--type01 .slick-next {
    width: 3.10769vw;
    height: 4.27179vw;
    margin: 0;
    -webkit-transition: all 0.25s ease;
    -moz-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all  0.25s ease;
  }
  .slick--type01 .slick-prev:hover, .slick--type01 .slick-next:hover {
    opacity: 0.65;
  }
  .slick--type01 .slick-prev::before, .slick--type01 .slick-next::before {
    font-size: 0;
    line-height: 0;
  }
  .slick--type01 .slick-prev {
    background-image: url(assets/images/common/arrow--left__bk.svg);
    left: -7.5%;
  }
  .slick--type01 .slick-next {
    background-image: url(assets/images/common/arrow--right__bk.svg);
    right: -7.5%;
  }
}

/*
   pager.scss
---------------------------------------------------------------------------- */
.p--nae-single-nav {
  width: 350px;
  margin: 0 auto 90px;
}

.p--nae-single-list {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}

.p--nae-single-list.adj--mtcg01 {
  margin: 50px 0 0;
}

.p--nae-single-list.adj--mtcg02 {
  margin: 50px auto;
}

.p--nae-single-index a {
  line-height: 1.0;
  font-size: 1.6rem;
  font-weight: 700;
  color: #000;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  padding: 0 0 5px;
}

.p--nae-single-index a:link {
  text-decoration: underline;
  color: #000;
}

.p--nae-single-index a:visited {
  text-decoration: underline;
  color: #000;
}

.p--nae-single-index a:hover {
  border: underline;
  opacity: 0.65;
  color: #000;
}

.p--nae-single-prev a {
  font-weight: 700;
  display: block;
  line-height: 1.0;
  font-size: 1.8rem;
}

.p--nae-single-prev {
  position: relative;
}

.p--nae-single-prev i {
  display: block;
  width: 8.33px;
  height: 11.44px;
  background-image: url(assets/images/common/arrow--left__bk.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p--nae-single-next a {
  font-weight: 700;
  display: block;
  line-height: 1.0;
  font-size: 1.8rem;
}

.p--nae-single-next {
  position: relative;
}

.p--nae-single-next i {
  display: block;
  width: 8.33px;
  height: 11.44px;
  background-image: url(assets/images/common/arrow--right__bk.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (max-width: 768px) {
  .p--nae-single-nav {
    width: 89.74359vw;
    margin: 0 auto 12.82051vw;
  }
  .p--nae-single-index a {
    font-size: 4.10256vw;
    padding: 0 0 1.28205vw;
  }
  .p--nae-single-prev a {
    font-size: 4.61538vw;
  }
  .p--nae-single-prev {
    position: relative;
  }
  .p--nae-single-prev i {
    width: 2.1359vw;
    height: 2.93333vw;
  }
  .p--nae-single-next a {
    font-size: 4.61538vw;
  }
  .p--nae-single-next {
    position: relative;
  }
  .p--nae-single-next i {
    display: block;
    width: 2.1359vw;
    height: 2.93333vw;
  }
}

.wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin: 100px auto 0;
}

.wp-pagenavi .pages {
  display: none;
}

.wp-pagenavi .first {
  display: none;
}

.wp-pagenavi .last {
  display: none;
}

.wp-pagenavi a {
  display: block;
  margin: 0 5px;
  padding: 0;
  border: none;
  font-size: 1.6rem;
  font-weight: 400;
  position: relative;
  border: none;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  font-weight: 700;
}

.wp-pagenavi a:link {
  color: #000;
  text-decoration: none;
}

.wp-pagenavi a:visited {
  color: #000;
  text-decoration: none;
}

.wp-pagenavi a:hover {
  text-decoration: none;
  border-bottom: 1px solid #000;
}

.wp-pagenavi span.current {
  font-size: 1.6rem;
  margin: 0 5px;
  font-weight: 700;
  padding: 0;
  display: block;
  border-bottom: 1px solid #000;
}

.wp-pagenavi span.extend {
  font-size: 1.6rem;
  margin: 0 5px;
  color: #626262;
  font-weight: 700;
  padding: 0;
  border: none;
  position: relative;
}

.wp-pagenavi .previouspostslink {
  vertical-align: bottom;
  display: inline-block;
  margin: 0 40px 0 0;
  border-radius: 0;
  padding: 0;
  height: 11.44px;
  width: 8.33px;
  text-indent: -9999px;
  background: url(assets/images/common/arrow--left__bk.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.wp-pagenavi .previouspostslink:hover {
  opacity: 0.45;
}

.wp-pagenavi .nextpostslink {
  vertical-align: bottom;
  display: inline-block;
  margin: 0 0 0 40px;
  border-radius: 0;
  padding: 0;
  height: 11.44px;
  width: 8.33px;
  text-indent: -9999px;
  background: url(assets/images/common/arrow--right__bk.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.wp-pagenavi .nextpostslink:hover {
  opacity: 0.45;
}

.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .wp-pagenavi {
    margin: 12.82051vw auto 0;
  }
  .wp-pagenavi a {
    margin: 0 1.28205vw;
    font-size: 3.58974vw;
  }
  .wp-pagenavi span.current {
    font-size: 3.58974vw;
    margin: 0 1.28205vw;
  }
  .wp-pagenavi span.extend {
    font-size: 3.58974vw;
    margin: 0 1.28205vw;
  }
  .wp-pagenavi .previouspostslink {
    margin: 0 5.12821vw 0 0;
    height: 2.93333vw;
    width: 2.1359vw;
  }
  .wp-pagenavi .nextpostslink {
    margin: 0 0 0 5.12821vw;
    height: 2.93333vw;
    width: 2.1359vw;
  }
  .wp-pagenavi .nextpostslink,
  .wp-pagenavi .previouspostslink {
    display: inline-block;
  }
}

/*--------------------------------------------------------------
    # _topic_path.scss
--------------------------------------------------------------*/
.l--topicpath {
  padding: 0 24px 20px;
  background-color: #FFF;
  position: relative;
  z-index: 5;
}

.l--topicpath__inner {
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
}

.l--topicpath span {
  font-size: 0.9rem;
  letter-spacing: 0.2em;
}

.l--topicpath span a {
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.l--topicpath span a:link {
  text-decoration: none;
  color: #000;
}

.l--topicpath span a:visited {
  text-decoration: none;
  color: #000;
}

.l--topicpath span a:hover {
  text-decoration: none;
  color: #000;
  opacity: 0.45;
}

.l--topicpath i {
  margin: 0 5px;
  display: block;
  width: 3px;
  height: 9px;
  position: relative;
  background-image: url(assets/images/common/icon__topicpath.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  flex-shrink: 0;
}

@media screen and (max-width: 768px) {
  .l--topicpath {
    padding: 0 8.97436vw 5.12821vw;
  }
  .l--topicpath__inner {
    max-width: 82.05128vw;
  }
  .l--topicpath span {
    font-size: 2.5641vw;
  }
  .l--topicpath i {
    margin: 0 1.28205vw;
    width: 0.76923vw;
    height: 2.30769vw;
  }
}

/*
	btn.scss
---------------------------------------------------------------------------- */
.edit-post-layout .editor-styles-wrapper .cmn--button__wrap {
  text-align: center;
  display: flex;
  justify-content: center;
}

.edit-post-layout .editor-styles-wrapper .cmn--button__wrap a {
  margin: 0 auto;
}

.edit-post-layout .editor-styles-wrapper .cmn--button__wrap li {
  margin: 0;
  padding: 0;
  border: none;
  margin: 0 15px;
}

.edit-post-layout .editor-styles-wrapper .cmn--button__wrap li:before {
  display: none;
}

.edit-post-layout .editor-styles-wrapper .cmn--button__wrap li:last-child {
  margin: 0;
}

.cmn--button__wrap {
  text-align: center;
  display: flex;
  justify-content: center;
  margin: 0;
}

.cmn--button__wrap a {
  margin: 0 auto;
}

.cmn--button__wrap li {
  margin: 0 15px;
  border: none;
  margin: 0;
  padding: 0;
}

.cmn--button__wrap li:before {
  display: none;
}

.cmn--button__wrap li:last-child {
  margin: 0;
}

@media screen and (max-width: 768px) {
  .edit-post-layout .editor-styles-wrapper .cmn--button__wrap {
    display: block;
  }
  .edit-post-layout .editor-styles-wrapper .cmn--button__wrap li {
    margin: 0 0 5.12821vw;
  }
  .cmn--button__wrap {
    display: block;
  }
  .cmn--button__wrap li {
    margin: 0 0 5.12821vw;
  }
}

.cmn--button__wrap {
  text-align: center;
  display: flex;
  justify-content: center;
}

.cmn--button__wrap a {
  margin: 0 auto;
}

.cmn--button__wrap li {
  margin: 0;
  padding: 0;
  border: none;
  margin: 0 15px;
}

.cmn--button__wrap li:before {
  display: none;
}

.cmn--button__wrap li:last-child {
  margin: 0;
}

.cmn--button01 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 200px;
  height: 50px;
  position: relative;
  border: 1px solid #000;
  border-radius: 25px;
  box-sizing: border-box;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.cmn--button01 div {
  display: flex;
  align-items: center;
}

.cmn--button01 span {
  display: block;
  font-weight: 400;
  font-size: 1.3rem;
  font-weight: 700;
  margin-right: 5px;
  letter-spacing: 0.2em;
  position: relative;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  font-family: var(--font-main);
}

.cmn--button01 i {
  width: 8.8px;
  height: 12.1px;
  background-image: url(assets/images/common/arrow--right__wh.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.cmn--button01.wh--button {
  border: 1px solid #FFF;
}

.cmn--button01.wh--button span {
  color: #FFF;
}

.cmn--button01.wh--button svg {
  fill: #FFF;
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.cmn--button01.wh--button:before {
  content: "";
  background-color: #FFF;
  height: 100%;
  width: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.cmn--button01.wh--button i {
  background-image: url(assets/images/common/arrow--right__wh.svg);
}

.cmn--button01.wh--button:hover {
  background-color: #FFF;
}

.cmn--button01.wh--button:hover i {
  background-image: url(assets/images/common/arrow--right__gr.svg);
}

.cmn--button01.wh--button:hover span {
  color: var(--sub-color);
}

.cmn--button01.gr--button {
  border: 1px solid #006636;
}

.cmn--button01.gr--button span {
  color: #006636;
}

.cmn--button01.gr--button svg {
  fill: #006636;
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.cmn--button01.gr--button:before {
  content: "";
  background-color: #006636;
  height: 100%;
  width: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.cmn--button01.gr--button i {
  background-image: url(assets/images/common/arrow--right__gr.svg);
}

.cmn--button01.gr--button:hover {
  background-color: var(--sub-color);
}

.cmn--button01.gr--button:hover i {
  background-image: url(assets/images/common/arrow--right__wh.svg);
}

.cmn--button01.gr--button:hover span {
  color: #FFF;
}

.cmn--button01.grbg--button {
  border: 1px solid #006636;
  background-color: #006636;
}

.cmn--button01.grbg--button span {
  color: #FFF;
}

.cmn--button01.grbg--button svg {
  fill: #FFF;
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.cmn--button01.grbg--button:before {
  content: "";
  background-color: #FFF;
  height: 100%;
  width: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.cmn--button01.grbg--button i {
  background-image: url(assets/images/common/arrow--right__wh.svg);
}

.cmn--button01.grbg--button:hover {
  background-color: #FFF;
}

.cmn--button01.grbg--button:hover i {
  background-image: url(assets/images/common/arrow--right__gr.svg);
}

.cmn--button01.grbg--button:hover span {
  color: #006636;
}

.cmn--button01.whbg--button {
  border: 1px solid #006636;
  background-color: #FFF;
}

.cmn--button01.whbg--button span {
  color: #006636;
}

.cmn--button01.whbg--button svg {
  fill: #006636;
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.cmn--button01.whbg--button:before {
  content: "";
  background-color: #006636;
  height: 100%;
  width: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.cmn--button01.whbg--button i {
  background-image: url(assets/images/common/arrow--right__gr.svg);
}

.cmn--button01.whbg--button:hover {
  background-color: #006636;
}

.cmn--button01.whbg--button:hover i {
  background-image: url(assets/images/common/arrow--right__wh.svg);
}

.cmn--button01.whbg--button:hover span {
  color: #FFF;
}

.cmn--button01.widthfree--button {
  width: auto;
  padding: 0 24px;
  height: 50px;
  display: inline-flex;
  max-width: 100%;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.cmn--button01:link {
  text-decoration: none;
}

.cmn--button01:visited {
  text-decoration: none;
}

.cmn--button01:hover {
  text-decoration: none;
}

.cmn--button01.hshop--button {
  width: 250px;
}

@media screen and (max-width: 768px) {
  .cmn--button01 {
    width: calc(200 / 390 * 100vw);
    height: calc(50 / 390 * 100vw);
    border-radius: calc(25 / 390 * 100vw);
  }
  .cmn--button01 span {
    font-size: calc(12 / 390 * 100vw);
    margin-right: calc(5 / 390 * 100vw);
  }
  .cmn--button01 i {
    width: calc(8.8 / 390 * 100vw);
    height: calc(12.1 / 390 * 100vw);
  }
  .cmn--button01.widthfree--button {
    width: auto;
    padding: 0 calc(20 / 390 * 100vw);
    height: calc(50 / 390 * 100vw);
  }
  .cmn--button01.hshop--button {
    width: calc(270 / 390 * 100vw);
  }
}

/**
 # Objects -  project -
 */
/*--------------------------------------------------------------
    # _home.scss
--------------------------------------------------------------*/
/*
    Common & Config
--------------------------------------------------------------*/
.h--main {
  background-color: #FFF;
  z-index: 1;
  position: relative;
}

.ancur--links {
  position: relative;
}

.ancur--links:before {
  content: "";
  margin-top: -120px;
  height: 120px;
  display: block;
  visibility: hidden;
}

@media screen and (max-width: 768px) {
  .ancur--links {
    position: relative;
  }
  .ancur--links:before {
    content: "";
    margin-top: calc(-50 / 390 * 100vw);
    height: calc(80 / 390 * 100vw);
    display: block;
    visibility: hidden;
  }
}

/*
    Hero [.h--hero]
--------------------------------------------------------------*/
.h--hero {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 0;
}

.hero-spacer {
  height: 100vh;
}

.video.slide-media {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover;
  z-index: 0;
  pointer-events: none;
}

#vc--hero {
  position: absolute;
  bottom: 40px;
  left: 80px;
  z-index: 10;
}

#vc--hero .vc--hero-text {
  display: flex;
  align-items: center;
  cursor: pointer;
  z-index: 10;
  color: #FFF;
  font-family: var(--font-main);
  letter-spacing: 0.2em;
  font-size: 1.2rem;
}

#vc--hero .vc--hero-text i {
  display: block;
  margin: 0 10px;
  width: 27px;
}

#vc--hero .vc--hero-text i img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

.h--hero__inner {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .video.slide-media {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: 100%;
    height: auto;
    transform: translate(-50%, -50%);
    object-fit: cover;
    z-index: 0;
    pointer-events: none;
  }
  #vc--hero {
    position: absolute;
    bottom: calc(80 / 390 * 100vw);
    left: inherit;
    right: calc(20 / 390 * 100vw);
    z-index: 10;
  }
  #vc--hero .vc--hero-text {
    font-size: calc(10 / 390 * 100vw);
  }
  #vc--hero .vc--hero-text i {
    margin: 0 calc(5 / 390 * 100vw);
    width: calc(17 / 390 * 100vw);
  }
}

/*
    News [.h--news]
--------------------------------------------------------------*/
.h--news {
  padding: 70px 24px 75px;
  background-color: #FFF;
}

.h--news__inner {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.h--news-contents {
  width: 71.5%;
}

.h--news-contents-title {
  font-family: var(--font-main);
  font-size: 3.0rem;
  letter-spacing: 0.1em;
  font-weight: 400;
}

.h--news-contents-title__wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 10px;
}

.h--news-contents-button {
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  font-family: var(--font-main);
  font-size: 3.0rem;
  font-weight: 700;
  font-size: 1.3rem;
  padding: 0 15px 0 0;
  background-image: url(assets/images/common/arrow--right__gr.svg);
  background-repeat: no-repeat;
  background-size: 8.33px 11.44px;
  background-position: center right;
}

.h--news-contents-button:link {
  text-decoration: none;
  color: var(--sub-color);
}

.h--news-contents-button:visited {
  text-decoration: none;
  color: var(--sub-color);
}

.h--news-contents-button:hover {
  opacity: 0.65;
}

.h--news-banner {
  width: 24%;
}

.h--news-banner-list > li {
  margin: 0 0 20px;
}

.h--news-banner-list > li > a {
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  position: relative;
  background-color: #000;
  display: block;
}

.h--news-banner-list > li > a img {
  width: 100%;
  vertical-align: bottom;
}

.h--news-banner-list > li > a:after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: black;
  opacity: 0.0;
  transition: opacity 0.3s ease;
  z-index: 0;
  height: 100%;
  width: 100%;
}

.h--news-banner-list > li > a:hover:after {
  opacity: 0.25;
}

.h--news-list {
  border-top: 1px solid #707070;
}

.h--news-list li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 21px 0;
  border-bottom: 1px solid #707070;
}

.h--news-list-date {
  width: 16.78322%;
  font-size: 1.4rem;
}

.h--news-list-text {
  width: 64.33566%;
  font-size: 1.4rem;
  line-height: 1.42857;
  display: block;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.h--news-list-text:link {
  text-decoration: none;
  color: #000;
}

.h--news-list-text:visited {
  text-decoration: none;
  color: #000;
}

.h--news-list-text:hover {
  text-decoration: underline;
  color: #000;
  opacity: 0.65;
}

.h--news-list-button {
  width: 12.58741%;
  font-size: 1.4rem;
  letter-spacing: -0.1em;
  font-weight: 700;
  display: block;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  padding: 0 12px 0 0;
  background-image: url(assets/images/common/arrow--right__gr.svg);
  background-repeat: no-repeat;
  background-size: 8.33px 11.44px;
  background-position: center right;
}

.h--news-list-button:link {
  text-decoration: none;
  color: var(--sub-color);
}

.h--news-list-button:visited {
  text-decoration: none;
  color: var(--sub-color);
}

.h--news-list-button:hover {
  text-decoration: none;
  color: var(--sub-color);
  opacity: 0.65;
}

@media screen and (max-width: 768px) {
  .h--news {
    padding: calc(30 / 390 * 100vw) 0 calc(50 / 390 * 100vw) calc(35 / 390 * 100vw);
  }
  .h--news__inner {
    max-width: initial;
    display: block;
  }
  .h--news-contents {
    width: auto;
    margin: 0 0 calc(30 / 390 * 100vw);
  }
  .h--news-contents-title {
    font-size: calc(18 / 390 * 100vw);
  }
  .h--news-contents-title__wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 calc(10 / 390 * 100vw);
    padding: 0 calc(20 / 390 * 100vw) 0 0;
  }
  .h--news-contents-button {
    font-size: calc(13 / 390 * 100vw);
    padding: 0 calc(15 / 390 * 100vw) 0 0;
    background-size: calc(8.33 / 390 * 100vw) calc(11.44 / 390 * 100vw);
  }
  .h--news-banner {
    width: calc(320 / 390 * 100vw);
  }
  .h--news-banner-list > li {
    margin: 0 0 calc(7 / 390 * 100vw);
  }
  .h--news-banner-list > li:last-child {
    margin: 0;
  }
  .h--news-list li {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: calc(8 / 390 * 100vw) 0;
  }
  .h--news-list-date {
    width: 20.28986%;
    font-size: calc(11 / 390 * 100vw);
    line-height: 1.25;
  }
  .h--news-list-text {
    width: 79.71014%;
    font-size: calc(11 / 390 * 100vw);
    display: block;
    padding: 0 calc(20 / 390 * 100vw) 0 0;
    line-height: 1.25;
  }
  .h--news-list-button {
    display: none;
  }
}

/*
    Tournament [.h--tournament]
--------------------------------------------------------------*/
.h--tournament {
  padding: 70px 0;
  background-color: #FFF;
}

.h--tournament-title {
  margin: 0 0 20px;
  text-align: center;
}

.h--tournament-title span {
  display: block;
}

.h--tournament-title-main {
  margin: 0;
  font-family: var(--font-main);
  letter-spacing: 0.1em;
  font-size: 4.0rem;
  font-weight: 400;
}

.h--tournament-title-sub {
  margin: 0 0 10px;
  font-size: 2.1rem;
  letter-spacing: 0.05em;
  font-family: var(--font-main);
  font-weight: 400;
}

.h--tournament-movie {
  margin: 0 0 25px;
  min-height: 360px;
  background-image: url(assets/images/pages/home/tournament__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  cursor: pointer;
  overflow: hidden;
}

.h--tournament-movie::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.35);
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 0;
}

.h--tournament-movie:hover::after {
  opacity: 1;
}

.h--tournament-movie-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 95px;
  height: 95px;
  z-index: 1;
}

.h--tournament-movie-play img {
  width: 100%;
  vertical-align: bottom;
}

.h--tournament .cmn--button01 {
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .h--tournament {
    padding: calc(50 / 390 * 100vw) 0;
  }
  .h--tournament-title {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .h--tournament-title-main {
    font-size: calc(25 / 390 * 100vw);
  }
  .h--tournament-title-sub {
    margin: 0 0 calc(10 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
  }
  .h--tournament-movie {
    margin: 0 0 calc(20 / 390 * 100vw);
    min-height: calc(100 / 390 * 100vw);
  }
  .h--tournament-movie-play {
    width: calc(34 / 390 * 100vw);
    height: calc(34 / 390 * 100vw);
  }
}

/*
    Courseguide [.h--courseguide]
--------------------------------------------------------------*/
.h--courseguide {
  padding: 60px 24px 70px;
  background-image: url(assets/images/pages/home/courseguide__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.h--courseguide__inner {
  max-width: 760px;
  margin: 0 auto;
}

.h--courseguide-title {
  font-size: 4.0rem;
  font-weight: 400;
  margin: 0 0 30px;
  letter-spacing: 0.1em;
  line-height: 1.4;
  color: #FFF;
  font-family: var(--font-main);
  text-align: center;
}

.h--courseguide-movie {
  width: 760px;
  height: 428px;
  overflow: hidden;
  position: relative;
  aspect-ratio: 76 / 43;
  z-index: 5;
  margin: 0 0 25px;
}

.h--courseguide .cmn--button01 {
  margin: 0 auto;
}

.h--courseguide-movie-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 95px;
  height: 95px;
}

.h--courseguide-movie-play img {
  width: 100%;
  vertical-align: bottom;
}

.h--courseguide .courseguide--video {
  width: 100%;
  height: 100%;
  display: block;
  cursor: pointer;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.h--courseguide .courseguide--video::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.35);
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 0;
}

.h--courseguide .courseguide--video:hover::after {
  opacity: 1;
}

.h--courseguide #vc--courseguide {
  display: none;
}

.h--courseguide .vc--courseguide-text {
  display: flex;
  align-items: center;
  cursor: pointer;
  position: absolute;
  z-index: 10;
  bottom: 15px;
  right: 20px;
  color: #FFF;
  font-family: var(--font-main);
  letter-spacing: 0.2em;
  font-size: 1.2rem;
}

.h--courseguide .vc--courseguide-text i {
  display: block;
  margin: 0 10px;
  width: 27px;
}

.h--courseguide .vc--courseguide-text i img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

@media screen and (max-width: 768px) {
  .h--courseguide {
    padding: calc(40 / 390 * 100vw) calc(35 / 390 * 100vw) calc(35 / 390 * 100vw);
  }
  .h--courseguide__inner {
    max-width: initial;
  }
  .h--courseguide-title {
    font-size: calc(25 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .h--courseguide-movie {
    width: calc(320 / 390 * 100vw);
    height: calc(180 / 390 * 100vw);
    aspect-ratio: 32 / 18;
    margin: 0 0 calc(25 / 390 * 100vw);
  }
  .h--courseguide-movie-play {
    width: calc(34 / 390 * 100vw);
    height: calc(34 / 390 * 100vw);
  }
  .h--courseguide .courseguide--video {
    width: 100%;
    height: 100%;
    display: block;
    cursor: pointer;
    -webkit-transition: all 0.25s ease;
    -moz-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all  0.25s ease;
  }
  .h--courseguide .courseguide--video::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.35);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 0;
  }
  .h--courseguide .courseguide--video:hover::after {
    opacity: 1;
  }
  .h--courseguide .vc--courseguide-text {
    bottom: calc(15 / 390 * 100vw);
    right: calc(10 / 390 * 100vw);
    font-size: calc(10 / 390 * 100vw);
  }
  .h--courseguide .vc--courseguide-text i {
    margin: 0 calc(5 / 390 * 100vw);
    width: calc(27 / 390 * 100vw);
  }
}

/*
    Slider
--------------------------------------------------------------*/
.slide--type01 .slick-slider .slick-slide {
  aspect-ratio: 660 / 420;
}

.slide--type01 .slick-slider .slick-slide img {
  width: 100%;
  vertical-align: bottom;
  object-fit: cover;
  height: 100%;
}

.slide--type01 .slick-prev,
.slide--type01 .slick-next {
  position: absolute;
  top: 50%;
  z-index: 50;
  font-size: 0;
  height: 16.66px;
  width: 12.12px;
  border: none;
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  cursor: pointer;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.slide--type01 .slick-prev:hover,
.slide--type01 .slick-next:hover {
  opacity: 0.65;
}

.slide--type01 .slick-prev {
  left: -40px;
  background-image: url(assets/images/common/arrow--left__wh.svg);
}

.slide--type01 .slick-next {
  right: -40px;
  background-image: url(assets/images/common/arrow--right__wh.svg);
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.slick-dots > li {
  margin: 0 6px;
}

.slick-dots > li > button {
  font-size: 0;
  line-height: 1;
  padding: 0;
  margin: 0;
  width: 8px;
  height: 8px;
  background-color: #707070;
  border: none;
  border-radius: 50%;
  display: block;
  cursor: pointer;
  box-sizing: border-box;
}

.slick-dots > li.slick-active > button {
  background-color: #FFF;
}

@media screen and (max-width: 768px) {
  .slide--type01 .slick-prev,
  .slide--type01 .slick-next {
    height: calc(16.66 / 390 * 100vw);
    width: calc(12.12 / 390 * 100vw);
  }
  .slide--type01 .slick-prev {
    left: -5.66vw;
  }
  .slide--type01 .slick-next {
    right: -5.66vw;
  }
  .slick-dots {
    bottom: -5.56vw;
  }
  .slick-dots > li {
    margin: 0 calc(5 / 390 * 100vw);
  }
  .slick-dots > li > button {
    width: calc(7.5 / 390 * 100vw);
    height: calc(7.5 / 390 * 100vw);
  }
}

/*
    Common links[]
--------------------------------------------------------------*/
.h--links-title {
  font-size: 6.0rem;
  font-weight: 400;
  margin: 0 0 20px;
  letter-spacing: 0.02em;
  color: #FFF;
  font-family: var(--font-main);
  white-space: nowrap;
}

.h--links-lead {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.42857;
  color: #FFF;
}

@media screen and (max-width: 768px) {
  .h--links-title {
    font-size: calc(40 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
    letter-spacing: 0;
    text-align: center;
  }
  .h--links-lead {
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.5;
    text-align: center;
  }
}

/*
    Cuisine [.h--food]
--------------------------------------------------------------*/
.h--food {
  padding: 40px 24px 60px;
  background-image: url(assets/images/pages/home/food__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.h--food__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.h--food-photo {
  width: 54.16667%;
}

.h--food-contents {
  width: 39.16667%;
  padding: 95px 0 0;
}

.h--food .h--links-lead {
  margin: 0 0 55px;
}

@media screen and (max-width: 768px) {
  .h--food {
    padding: calc(50 / 390 * 100vw) calc(35 / 390 * 100vw) calc(40 / 390 * 100vw);
  }
  .h--food__inner {
    max-width: initial;
    display: flex;
    flex-flow: column;
  }
  .h--food-photo {
    width: auto;
    order: 2;
  }
  .h--food-contents {
    width: auto;
    padding: 0;
    order: 1;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .h--food .h--links-lead {
    margin: 0;
  }
  .h--food .cmn--button01 {
    margin: calc(35 / 390 * 100vw) auto 0;
  }
}

/*
    Shop [.h--shop]
--------------------------------------------------------------*/
.h--shop {
  padding: 40px 24px 60px;
  background-image: url(assets/images/pages/home/shop__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.h--shop__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.h--shop-photo {
  order: 2;
  width: 54.16667%;
}

.h--shop-contents {
  order: 1;
  width: 39.16667%;
  padding: 95px 0 0 100px;
}

.h--shop .h--links-lead {
  margin: 0 0 20px;
}

.h--shop .cmn--button01 {
  margin: 0 0 13px;
}

@media screen and (max-width: 768px) {
  .h--shop {
    padding: calc(50 / 390 * 100vw) calc(35 / 390 * 100vw) calc(40 / 390 * 100vw);
  }
  .h--shop__inner {
    max-width: initial;
    display: flex;
    flex-flow: column;
  }
  .h--shop-photo {
    order: 2;
    width: auto;
  }
  .h--shop-contents {
    order: 1;
    width: auto;
    padding: 0;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .h--shop .h--links-lead {
    margin: 0;
  }
  .h--shop .cmn--button01 {
    margin: calc(35 / 390 * 100vw) auto 0;
  }
  .h--shop .cmn--button01:last-child {
    margin: calc(12 / 390 * 100vw) auto 0;
  }
}

/*
    Stay [.h--stay]
--------------------------------------------------------------*/
.h--stay {
  padding: 40px 24px 60px;
  background-image: url(assets/images/pages/home/stay__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.h--stay__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.h--stay-photo {
  width: 54.16667%;
}

.h--stay-contents {
  width: 39.16667%;
  padding: 95px 0 0;
}

.h--stay .h--links-lead {
  margin: 0 0 55px;
}

@media screen and (max-width: 768px) {
  .h--stay {
    padding: calc(50 / 390 * 100vw) calc(35 / 390 * 100vw) calc(40 / 390 * 100vw);
  }
  .h--stay__inner {
    max-width: initial;
    display: flex;
    flex-flow: column;
  }
  .h--stay-photo {
    width: auto;
    order: 2;
  }
  .h--stay-contents {
    width: auto;
    padding: 0;
    order: 1;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .h--stay .h--links-lead {
    margin: 0;
  }
  .h--stay .cmn--button01 {
    margin: calc(35 / 390 * 100vw) auto 0;
  }
}

/*
    Banquet [.h--banquet]
--------------------------------------------------------------*/
.h--banquet {
  padding: 40px 24px 60px;
  background-image: url(assets/images/pages/home/banquet__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.h--banquet__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.h--banquet-photo {
  order: 2;
  width: 54.16667%;
}

.h--banquet-contents {
  order: 1;
  width: 39.16667%;
  padding: 95px 0 0 100px;
}

.h--banquet .h--links-lead {
  margin: 0 0 55px;
}

.h--banquet .cmn--button01 {
  margin: 0 0 13px;
}

@media screen and (max-width: 768px) {
  .h--banquet {
    padding: calc(50 / 390 * 100vw) calc(35 / 390 * 100vw) calc(40 / 390 * 100vw);
  }
  .h--banquet__inner {
    max-width: initial;
    display: flex;
    flex-flow: column;
  }
  .h--banquet-photo {
    order: 2;
    width: auto;
  }
  .h--banquet-contents {
    order: 1;
    width: auto;
    padding: 0;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .h--banquet .h--links-lead {
    margin: 0;
  }
  .h--banquet .cmn--button01 {
    margin: calc(35 / 390 * 100vw) auto 0;
  }
}

/*
    Wedding [.h--wedding]
--------------------------------------------------------------*/
.h--wedding {
  padding: 40px 24px 60px;
  background-image: url(assets/images/pages/home/wedding__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.h--wedding__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.h--wedding-photo {
  width: 54.16667%;
}

.h--wedding-contents {
  width: 39.16667%;
  padding: 95px 0 0;
}

.h--wedding .h--links-lead {
  margin: 0 0 55px;
}

@media screen and (max-width: 768px) {
  .h--wedding {
    padding: calc(50 / 390 * 100vw) calc(35 / 390 * 100vw) calc(40 / 390 * 100vw);
  }
  .h--wedding__inner {
    max-width: initial;
    display: flex;
    flex-flow: column;
  }
  .h--wedding-photo {
    width: auto;
    order: 2;
  }
  .h--wedding-contents {
    width: auto;
    padding: 0;
    order: 1;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .h--wedding .h--links-lead {
    margin: 0;
  }
  .h--wedding .cmn--button01 {
    margin: calc(35 / 390 * 100vw) auto 0;
  }
}

/*
    gallery [.h--gallery]
--------------------------------------------------------------*/
.h--gallery {
  background-image: url(assets/images/pages/home/gallery__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 40px 0;
}

.h--gallery .h--links-title {
  text-align: center;
  margin: 0 0 85px;
  position: relative;
}

.h--gallery .h--links-title:after {
  content: "";
  width: 1px;
  height: 540px;
  position: absolute;
  left: 50%;
  display: block;
  background-color: #FFF;
  top: 80px;
  z-index: 1;
}

.h--gallery .cmn--button01 {
  margin: 0 auto;
}

.h--gallery-cols {
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.h--gallery-cols__photo {
  width: calc(510 / 1100 * 100%);
}

.h--gallery-cols__movie {
  width: calc(510 / 1100 * 100%);
}

.h--gallery__images {
  margin: 0 0 35px;
}

.h--gallery__images img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

.h--gallery__sub-title {
  margin: 0 0 30px;
  font-family: var(--font-main);
  font-size: 4.0rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-align: center;
  color: #FFF;
}

@media screen and (max-width: 768px) {
  .h--gallery {
    background-image: url(assets/images/pages/home/gallery__bg__smp.jpg);
    padding: calc(40 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
  .h--gallery .h--links-title {
    margin: 0 0 calc(35 / 390 * 100vw);
  }
  .h--gallery .h--links-title:after {
    content: "";
    height: calc(260 / 390 * 100vw);
    top: calc(100 / 390 * 100vw);
  }
  .h--gallery .cmn--button01 {
    margin: 0 auto;
    width: calc(160 / 390 * 100vw);
  }
  .h--gallery-cols {
    max-width: initial;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
  }
  .h--gallery-cols__photo {
    width: calc(160 / 390 * 100vw);
  }
  .h--gallery-cols__movie {
    width: calc(160 / 390 * 100vw);
  }
  .h--gallery__images {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .h--gallery__sub-title {
    margin: 0 0 calc(20 / 390 * 100vw);
    font-size: calc(24 / 390 * 100vw);
  }
}

/*
    Banner [.h--banner]
--------------------------------------------------------------*/
.h--banner {
  padding: 65px 24px 120px;
  background-color: #FFF;
}

.h--banner__inner {
  max-width: 900px;
  margin: 0 auto;
}

.h--banner-shop {
  margin: 0 0 60px;
}

.h--banner-shop img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

.h--banner-listcols3 {
  margin: 0 0 50px;
  display: flex;
  justify-content: space-between;
}

.h--banner-listcols3 img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

.h--banner-listcols3 > li {
  width: 32.22222%;
}

.h--banner-common {
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(assets/images/pages/home/banner__common__bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 290 / 100;
  width: 100%;
}

.h--banner-common.images--hoverdark {
  display: flex;
}

.h--banner-common:link {
  text-decoration: none;
}

.h--banner-common:visited {
  text-decoration: none;
}

.h--banner-common:hover {
  text-decoration: none;
}

.h--banner-common__content .title__en {
  display: block;
  margin: 0 0 7px;
  font-size: 2.0rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #FFF;
  font-family: var(--font-main);
  text-align: center;
}

.h--banner-common__content .title__jp {
  display: block;
  font-size: 1.0rem;
  letter-spacing: normal;
  color: #FFF;
  text-align: center;
}

.h--banner-undercols {
  display: flex;
  justify-content: space-between;
}

.h--banner-undercols-list {
  width: calc(432 / 900 * 100%);
}

.h--banner-undercols-list > li {
  margin: 0 0 20px;
}

.h--banner-undercols-list > li:last-child {
  margin: 0;
}

.h--banner-youtube-list {
  width: calc(432 / 900 * 100%);
}

.h--banner-youtube-list > li {
  margin: 0 0 20px;
}

.h--banner-youtube {
  width: auto;
}

.h--banner-youtube img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

.h--banner-common-hw {
  display: flex;
  justify-content: center;
  align-items: center;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 432 / 100;
  width: 100%;
}

.h--banner-common-hw.hotel {
  background-image: url(assets/images/pages/home/banner__hotel__bg.jpg);
}

.h--banner-common-hw.wedding {
  background-image: url(assets/images/pages/home/banner__wedding__bg.jpg);
}

.h--banner-common-hw.images--hoverdark {
  display: flex;
}

.h--banner-common-hw:link {
  text-decoration: none;
}

.h--banner-common-hw:visited {
  text-decoration: none;
}

.h--banner-common-hw:hover {
  text-decoration: none;
}

.h--banner-common-hw__content .title__en {
  display: block;
  margin: 0 0 4px;
  font-size: 2.5rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #FFF;
  font-family: var(--font-main);
  text-align: center;
}

.h--banner-common-hw__content .title__jp {
  display: block;
  font-size: 1.2rem;
  letter-spacing: normal;
  color: #FFF;
  text-align: center;
}

.h--banner-instagram-title {
  font-weight: 400;
  font-family: var(--font-crimson);
  font-size: 2.8rem;
  letter-spacing: 0.05em;
  padding: 0 0 10px;
  border-bottom: 1px solid #000;
  margin: 0 0 10px;
}

.h--banner-instagram-text {
  margin: 0 0 22px;
  font-family: var(--font-crimson);
  font-size: 1.6rem;
  font-weight: 400;
}

.h--banner-instagram-text a {
  margin-left: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}

.h--banner-instagram-text a:link {
  text-decoration: underline;
  color: #000;
}

.h--banner-instagram-text a:visited {
  text-decoration: underline;
  color: #000;
}

.h--banner-instagram-text a:hover {
  text-decoration: underline;
  color: #000;
  opacity: 0.45;
}

.h--banner-instagram-contents {
  margin: 0 0 45px;
  padding: 0 0 20px;
  border-bottom: 1px solid #000;
  position: relative;
}

.h--banner-instagram-list li {
  aspect-ratio: 1 / 1;
}

.h--banner-instagram-list li img {
  width: 100%;
  vertical-align: bottom;
  object-fit: cover;
  height: 100%;
  border: 1px solid #707070;
  box-sizing: border-box;
}

.h--banner .slick-list {
  margin: 0 -10px;
}

.h--banner .slick-slide {
  margin: 0 10px;
}

.h--banner .slick-nav {
  position: absolute;
  top: 60px;
  right: 0;
}

.h--banner .slick-nav__container {
  position: relative;
  display: flex;
}

.h--banner .slick-prev, .h--banner .slick-next {
  font-size: 0;
  line-height: 0;
  position: relative;
  top: inherit;
  display: block;
  width: 12px;
  height: 16px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
}

.h--banner .slick-prev::before, .h--banner .slick-next::before {
  font-size: 0;
  line-height: 0;
}

.h--banner .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
  left: inherit;
  margin-right: 38px;
}

.h--banner .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
  right: inherit;
}

@media screen and (max-width: 768px) {
  .h--banner {
    padding: calc(50 / 390 * 100vw) calc(35 / 390 * 100vw) calc(30 / 390 * 100vw);
  }
  .h--banner__inner {
    max-width: initial;
  }
  .h--banner-listcols3 {
    margin: 0 0 calc(40 / 390 * 100vw);
    display: block;
  }
  .h--banner-listcols3 > li {
    width: auto;
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .h--banner-listcols3 > li:last-child {
    margin: 0;
  }
  .h--banner-listcols3 > li > a {
    display: block;
  }
  .h--banner-listcols3 > li > a img {
    width: 100%;
    vertical-align: bottom;
  }
  .h--banner-common__content .title__en {
    margin: 0 0 calc(5 / 390 * 100vw);
    font-size: calc(18 / 390 * 100vw);
  }
  .h--banner-common__content .title__jp {
    font-size: calc(10 / 390 * 100vw);
  }
  .h--banner-undercols {
    display: block;
  }
  .h--banner-undercols-list {
    width: auto;
  }
  .h--banner-undercols-list > li {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .h--banner-undercols-list > li:last-child {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .h--banner-common-hw__content .title__en {
    margin: 0 0 calc(5 / 390 * 100vw);
    font-size: calc(18 / 390 * 100vw);
  }
  .h--banner-common-hw__content .title__jp {
    font-size: calc(10 / 390 * 100vw);
  }
  .h--banner-youtube-list {
    width: auto;
  }
  .h--banner-youtube-list > li {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .h--banner-youtube {
    width: auto;
  }
  .h--banner-youtube img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .h--banner-instagram-title {
    font-size: calc(22 / 390 * 100vw);
    padding: 0 0 calc(10 / 390 * 100vw) calc(35 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .h--banner-instagram-text {
    margin: 0 0 calc(18 / 390 * 100vw);
    font-size: calc(16 / 390 * 100vw);
    padding: 0 0 0 calc(35 / 390 * 100vw);
  }
  .h--banner-instagram-text a {
    margin-left: calc(10 / 390 * 100vw);
    font-size: calc(12 / 390 * 100vw);
  }
  .h--banner-instagram-contents {
    margin: 0 -8.97436vw calc(50 / 390 * 100vw);
    padding: 0 0 calc(20 / 390 * 100vw);
  }
  .h--banner-instagram-list li {
    aspect-ratio: 1 / 1;
  }
  .h--banner-instagram-list li img {
    width: 100%;
    vertical-align: bottom;
    object-fit: cover;
    height: 100%;
    border: 1px solid #707070;
    box-sizing: border-box;
  }
  .h--banner .slick-list {
    margin: 0 0 0 2.5641vw;
  }
  .h--banner .slick-slide {
    margin: 0 1.28205vw;
  }
  .h--banner .slick-nav {
    display: none;
  }
}

/*--------------------------------------------------------------
    # _pages01.scss
--------------------------------------------------------------*/
/*
    Config & Common
--------------------------------------------------------------*/
.l--second-hero {
  width: 100%;
  position: relative;
  height: 768px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.l--second-hero.courseguide__bg {
  background-image: url(assets/images/pages/courseguide/main.jpg);
}

.l--second-hero.stay__bg {
  background-image: url(assets/images/pages/stay/main.jpg);
}

.l--second-hero.th__bg {
  background-image: url(assets/images/pages/tournamenthistory/main.jpg);
}

.l--second-hero.foods__bg {
  background-image: url(assets/images/pages/foods/main.jpg);
}

.l--second-hero__inner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 768px;
}

.l--second-hero-title {
  font-family: var(--font-main);
  color: #FFF;
  font-size: 4.0rem;
  font-weight: 400;
  letter-spacing: 0.1em;
}

.l--second-herotext {
  width: 100%;
  position: relative;
  height: 230px;
  margin: 0 0 50px;
}

.l--second-herotext__inner {
  display: flex;
  justify-content: center;
  align-items: end;
  width: 100%;
  height: 230px;
}

.l--second-herotext-title span {
  display: block;
}

.l--second-herotext-title .title__en {
  font-family: var(--font-main);
  font-size: 8.0rem;
  letter-spacing: 0.06em;
  font-weight: 400;
  display: block;
  margin: 0 0 11px;
}

.l--second-herotext-title .title__jp {
  font-size: 1.8rem;
  letter-spacing: 0.025em;
  font-weight: 700;
  display: block;
  text-align: center;
}

.images--hoverdark {
  position: relative;
  display: block;
  overflow: hidden;
}

.images--hoverdark:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0);
  transition: background 0.3s ease;
  z-index: 1;
}

.images--hoverdark:hover:before {
  background: rgba(0, 0, 0, 0.3);
}

.images--hoverdark img {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 0;
}

.images--hoverwhite {
  position: relative;
  display: block;
  overflow: hidden;
}

.images--hoverwhite:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0);
  transition: background 0.3s ease;
  z-index: 1;
}

.images--hoverwhite:hover:before {
  background: rgba(255, 255, 255, 0.65);
}

.images--hoverwhite img {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 0;
}

.images--hovergreen {
  position: relative;
  display: block;
  overflow: hidden;
}

.images--hovergreen:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 102, 54, 0);
  transition: background 0.3s ease;
  z-index: 1;
}

.images--hovergreen:hover:before {
  background: rgba(0, 102, 54, 0.15);
}

.images--hovergreen img {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 0;
}

.modaal-gallery-control {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 18px;
  height: 24.74px;
  border-radius: 0;
}

.modaal-gallery-control:before {
  display: none;
}

.modaal-gallery-control:after {
  display: none;
}

.modaal-gallery-control:hover {
  opacity: 0.5;
  background: transparent;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.modaal-gallery-prev {
  background-image: url(assets/images/common/arrow--left__wh.svg);
}

.modaal-gallery-next {
  background-image: url(assets/images/common/arrow--right__wh.svg);
}

.modaal-gallery-prev:hover {
  background-image: url(assets/images/common/arrow--left__wh.svg);
}

.modaal-gallery-next:hover {
  background-image: url(assets/images/common/arrow--right__wh.svg);
}

.modaal-wrapper .modaal-close {
  position: fixed;
  right: 0;
  left: 0;
  top: inherit;
  bottom: 15%;
  margin: 0 auto;
  color: #fff;
  cursor: pointer;
  opacity: 1;
  width: 48px;
  height: 44.5px;
  border-radius: 0;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
  background-image: url(assets/images/common/modal__close.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.modaal-wrapper .modaal-close:before {
  display: none;
}

.modaal-wrapper .modaal-close:after {
  display: none;
}

.modaal-wrapper .modaal-close:hover {
  opacity: 0.5;
  background: transparent;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-image: url(assets/images/common/modal__close.png);
}

@media screen and (max-width: 768px) {
  .l--second-hero {
    height: calc(662 / 390 * 100vw);
  }
  .l--second-hero.courseguide__bg {
    background-image: url(assets/images/pages/courseguide/main__smp.jpg);
  }
  .l--second-hero.stay__bg {
    background-image: url(assets/images/pages/stay/main__smp.jpg);
  }
  .l--second-hero__inner {
    height: calc(662 / 390 * 100vw);
  }
  .l--second-hero-title {
    font-size: calc(24 / 390 * 100vw);
  }
  .l--second-herotext {
    height: calc(160 / 390 * 100vw);
    margin: 0 0 calc(30 / 390 * 100vw);
  }
  .l--second-herotext__inner {
    height: calc(160 / 390 * 100vw);
  }
  .l--second-herotext-title .title__en {
    font-size: calc(32 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
    text-align: center;
  }
  .l--second-herotext-title .title__jp {
    font-size: calc(15 / 390 * 100vw);
  }
  .table__scroll__info {
    display: block;
    text-align: right;
    margin: calc(10 / 390 * 100vw) 0 0;
    font-size: calc(12 / 390 * 100vw);
    padding: 0 calc(40 / 390 * 100vw) 0 0;
    background-image: url(assets/images/common/icon__scroll01.svg);
    background-repeat: no-repeat;
    background-size: calc(31 / 390 * 100vw) calc(7.6 / 390 * 100vw);
    background-position: top right;
  }
  .table__scroll__info.wh--text {
    color: #FFF;
    background-image: url(assets/images/common/icon__scroll01__wh.svg);
  }
}

/*
    Pages [Stay]
--------------------------------------------------------------*/
.p--stay-intro {
  padding: 70px 24px 100px;
}

.p--stay-intro__inner {
  max-width: 1070px;
  margin: 0 auto;
}

.p--stay-intro-title {
  margin: 0 0 50px;
  font-family: var(--font-serif);
  font-size: 3.4rem;
  letter-spacing: 0.025em;
  font-weight: 500;
  text-align: center;
  line-height: 1.35;
}

.p--stay-intro-photo-main {
  width: 61.68224%;
}

.p--stay-intro-photo-main img {
  width: 100%;
  vertical-align: bottom;
  object-fit: cover;
  width: 100%;
  height: 100%;
  aspect-ratio: 660 / 420;
}

.p--stay-intro-exp {
  width: 38.31776%;
  position: relative;
  display: flex;
  align-items: center;
}

.p--stay-intro-exp-text {
  position: relative;
  z-index: 10;
  padding: 0 0 0 30px;
  line-height: 1.75;
  font-size: 1.6rem;
  color: #FFF;
}

.p--stay-intro-photo-sub {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 5;
  display: block;
}

.p--stay-intro-photo-sub img {
  width: 100%;
  vertical-align: bottom;
  object-fit: cover;
  width: 100%;
  height: 100%;
  aspect-ratio: 410 / 420;
}

.p--stay-intro-slide__wrap {
  display: flex;
  justify-content: space-between;
}

.p--stay-intro-slide {
  position: relative;
}

.p--stay-intro-slide .slick-dots-block {
  position: absolute;
  bottom: 20px;
  right: 0;
  z-index: 10;
  width: 38.31776%;
}

.p--stay-intro-slide .slick-dots {
  position: relative;
  bottom: inherit;
}

.p--stay-cottage {
  padding: 75px 0;
  background-image: url(assets/images/pages/stay/cottage__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.p--stay-cottage-title {
  font-size: 8.0rem;
  letter-spacing: 0.08em;
  font-weight: 400;
  font-family: var(--font-main);
  text-align: center;
  margin: 0 0 20px;
}

.p--stay-cottage-sub-title {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
  margin: 0 0 30px;
}

.p--stay-cottage-text {
  font-size: 1.4rem;
  text-align: center;
  margin: 0 0 50px;
  line-height: 1.42857;
}

.p--stay-cottage-banner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 900px;
  height: 150px;
  margin: 0 auto;
  aspect-ratio: 900 / 150;
  background-image: url(assets/images/pages/stay/banner__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.p--stay-cottage-banner:link {
  text-decoration: none;
}

.p--stay-cottage-banner:visited {
  text-decoration: none;
}

.p--stay-cottage-banner__content .title__en {
  font-size: 2.5rem;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.1em;
  margin: 0 0 10px;
  display: block;
  text-align: center;
  color: #FFF;
}

.p--stay-cottage-banner__content .title__jp {
  font-size: 1.2rem;
  font-weight: 400;
  display: block;
  text-align: center;
  color: #FFF;
}

.p--stay-nature {
  padding: 75px 0;
  margin: 0 0 25px;
  background-image: url(assets/images/pages/stay/nature__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.p--stay-nature-title {
  font-size: 8.0rem;
  letter-spacing: 0.08em;
  font-weight: 400;
  font-family: var(--font-main);
  text-align: center;
  margin: 0 0 20px;
  color: #FFF;
}

.p--stay-nature-sub-title {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
  margin: 0 0 30px;
  color: #FFF;
}

.p--stay-nature-text {
  font-size: 1.4rem;
  text-align: center;
  margin: 0 0 50px;
  line-height: 1.42857;
  color: #FFF;
}

.p--stay-nature-text:last-child {
  margin: 0;
}

.p--stay-list {
  margin: 0 auto 30px;
}

.p--stay-list .slick-slide {
  padding: 0;
  transform: scale(0.85);
  opacity: 0.8;
  transition: all 0.5s ease;
}

.p--stay-list .slick-slide img {
  width: 100%;
  height: auto;
  display: block;
}

.p--stay-list .slick-center {
  transform: scale(1);
  opacity: 1;
  z-index: 2;
  aspect-ratio: 800 / 510;
}

.p--stay-list .slick-center img {
  width: 100%;
  height: auto;
  display: block;
}

.p--stay-list .slick-prev, .p--stay-list .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 14.65px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  z-index: 20;
}

.p--stay-list .slick-prev:hover, .p--stay-list .slick-next:hover {
  opacity: 0.65;
}

.p--stay-list .slick-prev::before, .p--stay-list .slick-next::before {
  font-size: 0;
  line-height: 0;
}

.p--stay-list .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
  left: 20%;
}

.p--stay-list .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
  right: 20%;
}

.p--stay-list.bg__wh-list .slick-prev {
  background-image: url(assets/images/common/arrow--left__wh.svg);
}

.p--stay-list.bg__wh-list .slick-next {
  background-image: url(assets/images/common/arrow--right__wh.svg);
}

.p--stay-list.bg__bk-list .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
}

.p--stay-list.bg__bk-list .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
}

.p--stay-list .slick-dots > li.slick-active > button {
  background-color: #000;
}

.p--stay-list .slick-slide {
  position: relative;
}

.p--stay-list .slick-slide img {
  position: relative;
  left: 50%;
  transform: translate(-50%, 0%);
  height: auto;
  width: 100%;
}

.p--stay-list-caption {
  display: block;
  color: #FFF;
  margin: 15px 0 0;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.42857;
}

@media screen and (max-width: 768px) {
  .p--stay-intro {
    padding: calc(75 / 390 * 100vw) calc(35 / 390 * 100vw) calc(50 / 390 * 100vw);
  }
  .p--stay-intro__inner {
    max-width: initial;
  }
  .p--stay-intro-title {
    margin: 0 0 calc(20 / 390 * 100vw);
    font-size: calc(24 / 390 * 100vw);
    line-height: 1.41667;
  }
  .p--stay-intro-photo-main {
    width: auto;
  }
  .p--stay-intro-photo-main img {
    width: 100%;
    vertical-align: bottom;
    object-fit: cover;
    width: 100%;
    height: 100%;
    aspect-ratio: 642 / 642;
  }
  .p--stay-intro-exp {
    width: auto;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: calc(257 / 390 * 100vw);
  }
  .p--stay-intro-exp-text {
    z-index: 10;
    padding: 0;
    text-align: center;
    line-height: 1.66667;
    font-size: calc(12 / 390 * 100vw);
  }
  .p--stay-intro-photo-sub {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 5;
    display: block;
  }
  .p--stay-intro-photo-sub img {
    width: 100%;
    vertical-align: bottom;
    object-fit: cover;
    width: 100%;
    height: 100%;
    aspect-ratio: 642 / 510;
  }
  .p--stay-intro-slide__wrap {
    display: flex;
    flex-flow: column;
  }
  .p--stay-intro-slide .slick-dots-block {
    display: none;
  }
  .p--stay-cottage {
    padding: calc(65 / 390 * 100vw) 0;
  }
  .p--stay-cottage-title {
    font-size: calc(60 / 390 * 100vw);
    letter-spacing: 0.06em;
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--stay-cottage-sub-title {
    font-size: calc(18 / 390 * 100vw);
    margin: 0 0 calc(30 / 390 * 100vw);
  }
  .p--stay-cottage-text {
    margin: 0 0 calc(35 / 390 * 100vw);
    line-height: 1.57143;
    font-size: calc(14 / 390 * 100vw);
  }
  .p--stay-cottage-banner {
    width: calc(360 / 390 * 100vw);
    height: calc(120 / 390 * 100vw);
    aspect-ratio: 360 / 120;
    background-image: url(assets/images/pages/stay/banner__bg__smp.jpg);
  }
  .p--stay-cottage-banner__content .title__en {
    font-size: calc(20 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--stay-cottage-banner__content .title__jp {
    font-size: calc(10 / 390 * 100vw);
  }
  .p--stay-nature {
    padding: calc(65 / 390 * 100vw) 0;
    margin: 0 0 calc(25 / 390 * 100vw);
  }
  .p--stay-nature-title {
    font-size: calc(60 / 390 * 100vw);
    letter-spacing: 0.06em;
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--stay-nature-sub-title {
    font-size: calc(18 / 390 * 100vw);
    margin: 0 0 calc(30 / 390 * 100vw);
  }
  .p--stay-nature-text {
    margin: 0 0 calc(35 / 390 * 100vw);
    line-height: 1.57143;
    font-size: calc(14 / 390 * 100vw);
  }
  .p--stay-list {
    margin: 0 auto calc(20 / 390 * 100vw);
  }
  .p--stay-list .slick-slide {
    padding: 0;
    transform: scale(0.85);
    opacity: 0.8;
    transition: all 0.5s ease;
  }
  .p--stay-list .slick-slide img {
    width: 100%;
    height: auto;
    display: block;
  }
  .p--stay-list .slick-center {
    transform: scale(1);
    opacity: 1;
    z-index: 2;
  }
  .p--stay-list .slick-center img {
    width: 100%;
    height: auto;
    display: block;
  }
  .p--stay-list .slick-prev, .p--stay-list .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: calc(12.12 / 390 * 100vw);
    height: calc(16.5 / 390 * 100vw);
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    -webkit-transition: all 0.25s ease;
    -moz-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all  0.25s ease;
    z-index: 20;
  }
  .p--stay-list .slick-prev:hover, .p--stay-list .slick-next:hover {
    opacity: 0.65;
  }
  .p--stay-list .slick-prev::before, .p--stay-list .slick-next::before {
    font-size: 0;
    line-height: 0;
  }
  .p--stay-list .slick-prev {
    left: 5.0%;
  }
  .p--stay-list .slick-next {
    right: 5.0%;
  }
  .p--stay-list .slick-slide {
    position: relative;
  }
  .p--stay-list .slick-slide img {
    top: 0;
    left: 50%;
    transform: translate(-50%, 0%);
    height: auto;
    width: 100%;
  }
  .p--stay-list-caption {
    margin: calc(15 / 390 * 100vw) 0 0;
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.28571;
    text-align: left;
  }
  .p--stay-list-caption br {
    display: none;
  }
}

/*
    Pages [Course Guide]
--------------------------------------------------------------*/
.p--courseguide-nav {
  margin: 50px 0;
}

.p--courseguide-nav-list {
  display: flex;
  justify-content: center;
  align-items: center;
}

.p--courseguide-nav-list > li > a {
  color: #000;
  font-size: 1.7rem;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.1em;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  line-height: 2.0rem;
}

.p--courseguide-nav-list > li > a:link {
  text-decoration: none;
}

.p--courseguide-nav-list > li > a:visited {
  text-decoration: none;
}

.p--courseguide-nav-list > li > a:hover {
  text-decoration: none;
  opacity: 0.65;
}

.p--courseguide-nav-list > li > a span {
  display: block;
  padding: 0 24px 0 0;
  background-image: url(assets/images/common/arrow--under__bk.svg);
  background-repeat: no-repeat;
  background-size: 17px 12.37px;
  background-position: center right;
}

.p--courseguide-nav-list > li.separation {
  width: 22px;
  height: 22px;
  margin: 0 24px;
  background-image: url(assets/images/common/icon__line45__bk.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center right;
}

.p--cg-title {
  font-family: var(--font-serif);
  text-align: center;
  line-height: 1.0;
  font-size: 3.4rem;
  font-weight: 500;
  letter-spacing: 0.025em;
  margin: 0 0 15px;
}

.p--cg-title-sub {
  font-family: var(--font-main);
  text-align: center;
  line-height: 1.0;
  font-size: 3.0rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  margin: 0 0 25px;
}

.p--cg-lead {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.75;
}

.p--cg-links {
  min-height: 550px;
  width: 1000px;
  margin: 30px auto 125px;
  background-image: url(assets/images/pages/courseguide/cg__main.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}

.p--cg-links-box {
  position: absolute;
}

.p--cg-links-box.ikoro {
  top: 70px;
  left: 10px;
}

.p--cg-links-box.nispa {
  top: 395px;
  right: 20px;
}

.p--cg-links-box-title {
  color: #000;
  font-size: 4.0rem;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 4.7rem;
  margin: 0 0 10px;
}

.p--cg-links-box-title-sub {
  color: #000;
  font-size: 1.6rem;
  font-weight: 400;
  margin: 0 0 10px;
  text-align: center;
}

.p--cg-links-button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 146px;
  height: 38px;
  border-radius: 19px;
  border: 1px solid var(--sub-color);
  background-color: var(--sub-color);
  margin: 0 auto;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.p--cg-links-button:link {
  text-decoration: none;
  color: #FFF;
}

.p--cg-links-button:visited {
  text-decoration: none;
  color: #FFF;
}

.p--cg-links-button:hover {
  text-decoration: none;
  color: var(--sub-color);
  background-color: #FFF;
}

.p--cg-links-button:hover span:after {
  background-image: url(assets/images/common/arrow--right__bk.svg);
}

.p--cg-links-button span {
  font-size: 1.0rem;
  font-family: var(--font-main);
  font-weight: 700;
  letter-spacing: 0.2em;
  position: relative;
  display: block;
}

.p--cg-links-button span:after {
  content: "";
  width: 6.43px;
  height: 8.84px;
  display: block;
  position: absolute;
  top: 5%;
  right: -12px;
  background-image: url(assets/images/common/arrow--right__wh.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p--cc-title {
  color: #000;
  font-size: 4.0rem;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 4.7rem;
  margin: 0 0 10px;
  text-align: center;
}

.p--cc-lead {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.75;
}

.p--cc-nav {
  margin: 85px 0 50px;
}

.p--cc-nav-list {
  display: flex;
  justify-content: center;
  align-items: center;
}

.p--cc-nav-list li a {
  display: block;
  padding: 0 0 30px;
  text-align: center;
  background-image: url(assets/images/common/arrow--under__bk.svg);
  background-repeat: no-repeat;
  background-size: 20.61px 15px;
  background-position: bottom center;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.p--cc-nav-list li a:link {
  text-decoration: none;
}

.p--cc-nav-list li a:visited {
  text-decoration: none;
}

.p--cc-nav-list li a:hover {
  text-decoration: none;
  opacity: 0.45;
}

.p--cc-nav-list li a .en-title {
  display: block;
  font-size: 2.1rem;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 3.4rem;
  margin: 0 0 10px;
  color: #000;
}

.p--cc-nav-list li a .jp-title {
  display: block;
  font-size: 1.2rem;
  line-height: 1.0;
  color: #000;
}

.p--cc-nav-list li.separation {
  margin: 0 22px;
  width: 22px;
  height: 22px;
  background-image: url(assets/images/common/icon__line45__bk.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p--cc-contents {
  max-width: 900px;
  margin: 0 auto 45px;
  background-color: #006636;
}

.p--cc-contents__inner {
  padding: 40px 45px;
}

.p--cc-section {
  margin: 0 0 65px;
}

.p--cc-section p {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: -0.02em;
  color: #FFF;
  margin: 0 0 2.0em;
}

.p--cc-section p:last-child {
  margin: 0;
}

.p--cc-section p strong {
  font-weight: normal;
  font-size: 2.0rem;
}

.p--cc-header {
  width: 100%;
  height: 312px;
  margin: 0 0 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p--cc-header .en--title {
  display: block;
  font-size: 3.0rem;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.0;
  margin: 0 0 10px;
  color: #FFF;
}

.p--cc-header .jp--title {
  display: block;
  font-size: 1.2rem;
  line-height: 1.0;
  font-weight: 400;
  color: #FFF;
  display: block;
  text-align: center;
}

.p--cc-header.tg--bg {
  background-image: url(assets/images/pages/courseguide/td__main.jpg);
}

.p--cc-header.fw--bg {
  background-image: url(assets/images/pages/courseguide/fw__main.jpg);
}

.p--cc-header.gr--bg {
  background-image: url(assets/images/pages/courseguide/gr__main.jpg);
}

.p--cc-header.bk--bg {
  background-image: url(assets/images/pages/courseguide/bk__main.jpg);
}

.p--cc-header.cr--bg {
  background-image: url(assets/images/pages/courseguide/cr__main.jpg);
}

.p--cc-section-contents__inner {
  padding: 0 45px;
}

.p--cc-section-cols {
  display: flex;
  justify-content: space-between;
  margin: 0 0 25px;
}

.p--cc-section-cols-images {
  width: 31.94444%;
}

.p--cc-section-cols-content {
  width: 64.58333%;
}

.p--cc-section-defines {
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  padding: 30px 0;
}

.p--cc-section-defines dl {
  display: flex;
  justify-content: space-between;
  margin: 0 0 20px;
}

.p--cc-section-defines dl dt {
  width: 19.44444%;
  font-size: 2.0rem;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.0;
  color: #FFF;
  line-height: 1.4;
}

.p--cc-section-defines dl dd {
  width: 80.55556%;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: -0.02em;
  color: #FFF;
}

.p--cc-section-table {
  width: 100%;
  border-top: 2px solid #006636;
  border-bottom: 2px solid #006636;
}

.p--cc-section-table .gap-row tr td {
  height: 1px;
  padding: 0;
  border: none;
  background-color: #006636;
}

.p--cc-section-table thead th {
  background-color: #000;
  padding: 8px 5px;
  font-family: var(--font-serif);
  font-size: 1.2rem;
  font-weight: 400;
  color: #FFF;
}

.p--cc-section-table tbody td {
  background-color: #000;
  padding: 5px;
  font-family: var(--font-serif);
  font-size: 1.2rem;
  font-weight: 400;
  background-color: #C8C8C8;
  vertical-align: middle;
  border: 2px solid #006636;
}

@media screen and (max-width: 768px) {
  .p--courseguide-nav {
    margin: calc(30 / 390 * 100vw) 0;
    padding: 0 calc(35 / 390 * 100vw);
  }
  .p--courseguide-nav-list > li > a {
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.0;
  }
  .p--courseguide-nav-list > li > a span {
    display: block;
    padding: 0 calc(16 / 390 * 100vw) 0 0;
    background-size: calc(12 / 390 * 100vw) calc(8.73 / 390 * 100vw);
  }
  .p--courseguide-nav-list > li.separation {
    width: calc(12 / 390 * 100vw);
    height: calc(12 / 390 * 100vw);
    margin: 0 calc(10 / 390 * 100vw);
  }
  .p--cg-title {
    font-size: calc(24 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
    line-height: 1.41667;
  }
  .p--cg-title-sub {
    font-size: calc(20 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--cg-lead {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.57143;
    padding: 0 calc(20 / 390 * 100vw);
  }
  .p--cg-links {
    min-height: calc(220 / 390 * 100vw);
    width: auto;
    margin: calc(10 / 390 * 100vw) auto calc(50 / 390 * 100vw);
    background-image: url(assets/images/pages/courseguide/cg__main.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
  }
  .p--cg-links-box {
    position: absolute;
  }
  .p--cg-links-box.ikoro {
    top: calc(20 / 390 * 100vw);
    left: calc(30 / 390 * 100vw);
  }
  .p--cg-links-box.nispa {
    top: calc(180 / 390 * 100vw);
    right: calc(50 / 390 * 100vw);
  }
  .p--cg-links-box-title {
    font-size: calc(15 / 390 * 100vw);
    line-height: 1.13333;
    margin: 0 0 calc(8 / 390 * 100vw);
  }
  .p--cg-links-box-title-sub {
    font-size: calc(10 / 390 * 100vw);
    margin: 0 0 10px;
  }
  .p--cg-links-button {
    width: calc(120 / 390 * 100vw);
    height: calc(30 / 390 * 100vw);
    border-radius: calc(15 / 390 * 100vw);
  }
  .p--cg-links-button span {
    font-size: calc(10 / 390 * 100vw);
  }
  .p--cg-links-button span:after {
    content: "";
    width: calc(6.43 / 390 * 100vw);
    height: calc(8.84 / 390 * 100vw);
    right: -2.56vw;
  }
  .p--cc-title {
    font-size: calc(22 / 390 * 100vw);
    line-height: 1;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--cc-lead {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.57143;
  }
  .p--cc-nav {
    margin: calc(20 / 390 * 100vw) 0 calc(10 / 390 * 100vw);
  }
  .p--cc-nav-list {
    padding: 0 calc(35 / 390 * 100vw);
    display: flex;
    justify-content: center;
    align-items: end;
    flex-wrap: wrap;
  }
  .p--cc-nav-list li a {
    padding: 0 0 calc(15 / 390 * 100vw);
    background-size: calc(12.26 / 390 * 100vw) calc(8.92 / 390 * 100vw);
  }
  .p--cc-nav-list li a .en-title {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.35;
    margin: 0 0 calc(8 / 390 * 100vw);
  }
  .p--cc-nav-list li a .jp-title {
    font-size: calc(10 / 390 * 100vw);
  }
  .p--cc-nav-list li {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--cc-nav-list li.separation {
    margin: 0 calc(20 / 390 * 100vw);
    width: 0px;
    height: 0px;
    background-image: none;
  }
  .p--cc-contents {
    max-width: calc(350 / 390 * 100vw);
    margin: 0 auto calc(45 / 390 * 100vw);
  }
  .p--cc-contents__inner {
    padding: calc(10 / 390 * 100vw) calc(15 / 390 * 100vw);
  }
  .p--cc-section {
    margin: 0 0 calc(40 / 390 * 100vw);
  }
  .p--cc-section p {
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.66667;
    letter-spacing: 0;
    margin: 0 0 1.0em;
  }
  .p--cc-section p strong {
    font-weight: normal;
    font-size: calc(14 / 390 * 100vw);
  }
  .p--cc-header {
    height: calc(90 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--cc-header .en--title {
    font-size: calc(16 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--cc-header .jp--title {
    font-size: calc(10 / 390 * 100vw);
  }
  .p--cc-header.tg--bg {
    background-image: url(assets/images/pages/courseguide/td__main__smp.jpg);
  }
  .p--cc-header.fw--bg {
    background-image: url(assets/images/pages/courseguide/fw__main__smp.jpg);
  }
  .p--cc-header.gr--bg {
    background-image: url(assets/images/pages/courseguide/gr__main__smp.jpg);
  }
  .p--cc-header.bk--bg {
    background-image: url(assets/images/pages/courseguide/bk__main__smp.jpg);
  }
  .p--cc-header.cr--bg {
    background-image: url(assets/images/pages/courseguide/cr__main__smp.jpg);
  }
  .p--cc-section-contents__inner {
    padding: 0;
  }
  .p--cc-section-cols {
    display: block;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--cc-section-cols-images {
    width: calc(170 / 390 * 100vw);
    margin: 0 auto calc(20 / 390 * 100vw);
  }
  .p--cc-section-cols-images img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .p--cc-section-cols-content {
    width: auto;
  }
  .p--cc-section-defines {
    padding: calc(20 / 390 * 100vw) 0;
  }
  .p--cc-section-defines dl {
    display: block;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--cc-section-defines dl dt {
    width: auto;
    font-size: calc(18 / 390 * 100vw);
    line-height: 1.0;
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--cc-section-defines dl dd {
    width: auto;
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.66667;
  }
  .p--cc-more--contents {
    display: none;
  }
  .p--cc-more .cmn--button01 {
    margin: 0 auto;
    cursor: pointer;
  }
  .p--cc-more .cmn--button01.close {
    border: none;
    background: none;
  }
  .p--cc-more .cmn--button01.close span {
    padding: calc(30 / 390 * 100vw) 0 0;
    display: block;
    background-image: url(assets/images/common/arrow--under__wh.svg);
    background-repeat: no-repeat;
    background-size: calc(12 / 390 * 100vw) calc(8.73 / 390 * 100vw);
    background-position: top calc(15 / 390 * 100vw) center;
  }
  .p--cc-section-table__wrap {
    width: calc(320 / 390 * 100vw);
    overflow-x: scroll;
  }
  .p--cc-section-table {
    width: 800px;
  }
}

/*
    Pages [Course Guide ikoro & nispa]
--------------------------------------------------------------*/
.ikoro--map {
  margin: 160px 0 0;
  position: relative;
}

.ikoro--map__inner {
  width: 1100px;
  margin: 0 auto;
  min-height: 580px;
  display: flex;
  justify-content: space-between;
  background-image: url(assets/images/pages/courseguide/ikoro/ikoro__bg01.png);
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: top center;
  position: relative;
}

.ikoro--map .course__icon {
  display: block;
  position: absolute;
  width: 56px;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.ikoro--map .course__icon img {
  width: 100%;
  vertical-align: bottom;
}

.ikoro--map .course__icon:hover {
  opacity: 0.65;
}

.ikoro--map .ikoro-course__hole-1 {
  top: 199.5px;
  left: 344px;
}

.ikoro--map .ikoro-course__hole-2 {
  top: 175.5px;
  left: 235px;
}

.ikoro--map .ikoro-course__hole-3 {
  top: 277px;
  left: 117px;
}

.ikoro--map .ikoro-course__hole-4 {
  top: 299px;
  left: 68.5px;
}

.ikoro--map .ikoro-course__hole-5 {
  top: 366px;
  left: 55px;
}

.ikoro--map .ikoro-course__hole-6 {
  top: 378.5px;
  left: 126px;
}

.ikoro--map .ikoro-course__hole-7 {
  top: 307.5px;
  left: 145px;
}

.ikoro--map .ikoro-course__hole-8 {
  top: 239.5px;
  left: 206px;
}

.ikoro--map .ikoro-course__hole-9 {
  top: 218px;
  left: 276px;
}

.ikoro--map .ikoro-course__hole-10 {
  top: 270px;
  left: 272px;
}

.ikoro--map .ikoro-course__hole-11 {
  top: 346.5px;
  left: 212px;
}

.ikoro--map .ikoro-course__hole-12 {
  top: 396px;
  left: 272.5px;
}

.ikoro--map .ikoro-course__hole-13 {
  top: 456px;
  left: 251px;
}

.ikoro--map .ikoro-course__hole-14 {
  top: 421px;
  left: 142.5px;
}

.ikoro--map .ikoro-course__hole-15 {
  top: 369.5px;
  left: 311px;
}

.ikoro--map .ikoro-course__hole-16 {
  top: 322px;
  left: 307px;
}

.ikoro--map .ikoro-course__hole-17 {
  top: 309.5px;
  left: 363px;
}

.ikoro--map .ikoro-course__hole-18 {
  top: 246px;
  left: 382.5px;
}

.ikoro--map .ikoro-course__hole-19 {
  top: 139px;
  left: 523.5px;
}

.ikoro--map .ikoro-course__hole-20 {
  top: 39.5px;
  left: 584px;
}

.ikoro--map .ikoro-course__hole-21 {
  top: 77.5px;
  left: 535.5px;
}

.ikoro--map .ikoro-course__hole-22 {
  top: 29.5px;
  left: 507px;
}

.ikoro--map .ikoro-course__hole-23 {
  top: 53.5px;
  left: 450px;
}

.ikoro--map .ikoro-course__hole-24 {
  top: 110px;
  left: 440.5px;
}

.ikoro--map .ikoro-course__hole-25 {
  top: 171.5px;
  left: 467px;
}

.ikoro--map .ikoro-course__hole-26 {
  top: 146px;
  left: 413px;
}

.ikoro--map .ikoro-course__hole-27 {
  top: 143px;
  left: 320px;
}

.ikoro--map__blank {
  width: 630px;
}

.ikoro--map-content {
  width: 450px;
  padding: 150px 0 0;
}

.ikoro--map-content-title {
  font-family: var(--font-main);
  font-size: 4.4rem;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin: 0 0 20px;
}

.ikoro--map-content-subtitle {
  font-family: var(--font-serif);
  font-size: 2.4rem;
  letter-spacing: 0.025em;
  font-weight: 400;
  line-height: 1.66667;
  margin: 0 0 10px;
}

.ikoro--map-content-text {
  font-size: 1.4rem;
  line-height: 1.71429;
}

.ikoro--map-content-caution {
  font-size: 1.2rem;
  display: block;
  margin: 1.0em 0 0;
}

.nispa--map {
  margin: 160px 0 0;
  position: relative;
}

.nispa--map__inner {
  width: 1100px;
  margin: 0 auto;
  min-height: 580px;
  display: flex;
  justify-content: space-between;
  background-image: url(assets/images/pages/courseguide/nispa/nispa__bg01.png);
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: top center;
  position: relative;
}

.nispa--map .course__icon {
  display: block;
  position: absolute;
  width: 56px;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.nispa--map .course__icon img {
  width: 100%;
  vertical-align: bottom;
}

.nispa--map .course__icon:hover {
  opacity: 0.65;
}

.nispa--map .nispa-course__hole-1 {
  top: 199.5px;
  left: 344px;
}

.nispa--map__blank {
  width: 550px;
  order: 2;
}

.nispa--map-content {
  width: 550px;
  padding: 40px 0 0 150px;
  order: 1;
}

.nispa--map-content-title {
  font-family: var(--font-main);
  font-size: 4.4rem;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin: 0 0 20px;
}

.nispa--map-content-subtitle {
  font-family: var(--font-serif);
  font-size: 2.4rem;
  letter-spacing: 0.025em;
  font-weight: 400;
  line-height: 1.66667;
  margin: 0 0 10px;
}

.nispa--map-content-text {
  font-size: 1.4rem;
  line-height: 1.71429;
}

.nispa--map .nispa-course__hole-1 {
  top: 235px;
  left: 697.5px;
}

.nispa--map .nispa-course__hole-2 {
  top: 165.5px;
  left: 760.5px;
}

.nispa--map .nispa-course__hole-3 {
  top: 128.5px;
  left: 852px;
}

.nispa--map .nispa-course__hole-4 {
  top: 182.5px;
  left: 912.5px;
}

.nispa--map .nispa-course__hole-5 {
  top: 257px;
  left: 917px;
}

.nispa--map .nispa-course__hole-6 {
  top: 269px;
  left: 875.5px;
}

.nispa--map .nispa-course__hole-7 {
  top: 204.5px;
  left: 837.5px;
}

.nispa--map .nispa-course__hole-8 {
  top: 259px;
  left: 730px;
}

.nispa--map .nispa-course__hole-9 {
  top: 305.5px;
  left: 650.5px;
}

.nispa--map .nispa-course__hole-10 {
  top: 334px;
  left: 695.5px;
}

.nispa--map .nispa-course__hole-11 {
  top: 363px;
  left: 750.5px;
}

.nispa--map .nispa-course__hole-12 {
  top: 225.5px;
  left: 802.5px;
}

.nispa--map .nispa-course__hole-13 {
  top: 316.5px;
  left: 874px;
}

.nispa--map .nispa-course__hole-14 {
  top: 288.5px;
  left: 799px;
}

.nispa--map .nispa-course__hole-15 {
  top: 332px;
  left: 795px;
}

.nispa--map .nispa-course__hole-16 {
  top: 415px;
  left: 795px;
}

.nispa--map .nispa-course__hole-17 {
  top: 415px;
  left: 698px;
}

.nispa--map .nispa-course__hole-18 {
  top: 398.5px;
  left: 641px;
}

.pcg--data {
  max-width: 800px;
  margin: 50px auto 110px;
}

.pcg--data-title {
  font-family: var(--font-main);
  font-size: 3.0rem;
  letter-spacing: 0.1em;
  font-weight: 400;
  margin: 35px 0 10px;
}

.pcg--data__layout {
  display: flex;
  justify-content: space-between;
}

.pcg--data__leftcols {
  width: 31.25%;
}

.pcg--data__leftcols table {
  width: 100%;
}

.pcg--data__leftcols table th {
  background-color: #C8C8C8;
  padding: 6px;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  font-weight: 400;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  vertical-align: middle;
}

.pcg--data__leftcols table td {
  background-color: #C8C8C8;
  padding: 6px;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  font-weight: 400;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  vertical-align: middle;
}

.pcg--data__rightcols {
  width: 68.75%;
}

.pcg--data__rightcols table {
  width: 100%;
}

.pcg--data__rightcols table th {
  background-color: #C8C8C8;
  padding: 6px;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  font-weight: 400;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  text-align: right;
  vertical-align: middle;
}

.pcg--data__rightcols table td {
  background-color: #C8C8C8;
  padding: 6px;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  font-weight: 400;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  text-align: right;
  vertical-align: middle;
}

.pcg--data .databg__01 {
  background-color: #F0F0F0;
}

.pcg--data .dataline__adjusted__lbn {
  border-bottom: none;
}

.pcg--data .dataline__adjusted__lrn {
  border-right: none;
}

.pcg--detail-header {
  margin: 160px auto 50px;
  padding: 0 24px;
}

.pcg--detail-header__inner {
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.pcg--detail-header-content {
  width: 40%;
}

.pcg--detail-header-title {
  font-weight: 400;
  font-size: 3.8rem;
  letter-spacing: 0.1em;
  font-family: var(--font-main);
  margin: 0 0 10px;
}

.pcg--detail-header-sub-data {
  font-weight: 400;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  font-family: var(--font-main);
  margin: 0 0 30px;
}

.pcg--detail-header-lead {
  font-size: 1.6rem;
  line-height: 1.75;
}

.pcg--detail-header-data {
  margin: 0 0 110px;
}

.pcg--detail-header-data th {
  font-weight: 400;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  font-family: var(--font-main);
  padding: 10px 0;
  border-bottom: 1px solid #000;
  line-height: 1.0;
}

.pcg--detail-header-data td {
  font-weight: 400;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  font-family: var(--font-main);
  padding: 10px 0;
  border-bottom: 1px solid #000;
  line-height: 1.0;
}

.pcg--detail-header-data td.dta--separation {
  padding: 10px 15px;
}

.pcg--detail-figure {
  width: 50%;
}

.pcg--detail-figure img {
  width: 100%;
  vertical-align: bottom;
}

.pcg--detail-title {
  font-weight: 400;
  font-size: 3.2rem;
  letter-spacing: 0.1em;
  font-family: var(--font-main);
  text-align: center;
  margin: 0 0 20px;
}

.pcg--gallery {
  position: relative;
  margin: 0 0 75px;
}

.pcg--gallery .slick-prev, .pcg--gallery .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 14.65px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  z-index: 20;
}

.pcg--gallery .slick-prev:hover, .pcg--gallery .slick-next:hover {
  opacity: 0.65;
}

.pcg--gallery .slick-prev::before, .pcg--gallery .slick-next::before {
  font-size: 0;
  line-height: 0;
}

.pcg--gallery .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
  left: 20%;
}

.pcg--gallery .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
  right: 20%;
}

.pcg--gallery .slick-dots > li.slick-active > button {
  background-color: #000;
}

.pcg--gallery-list {
  margin: 0 auto;
}

.pcg--gallery-list .slick-slide {
  padding: 0;
  transform: scale(0.85);
  opacity: 0.8;
  transition: all 0.5s ease;
  aspect-ratio: 700 / 445;
}

.pcg--gallery-list .slick-slide img {
  width: 100%;
  height: auto;
  display: block;
}

.pcg--gallery-list .slick-center {
  transform: scale(1);
  opacity: 1;
  z-index: 2;
  aspect-ratio: 800 / 510;
}

.pcg--gallery-list .slick-center img {
  width: 100%;
  height: auto;
  display: block;
}

.pcg--gallery-list .slick-slide {
  position: relative;
}

.pcg--gallery-list .slick-slide img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: auto;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .ikoro--map {
    margin: calc(100 / 390 * 100vw) 0 0;
  }
  .ikoro--map-content-title {
    font-family: var(--font-main);
    font-size: calc(24 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
    text-align: center;
  }
  .ikoro--map-content-subtitle {
    font-size: calc(18 / 390 * 100vw);
    line-height: 1.44444;
    margin: 0 0 calc(10 / 390 * 100vw);
    text-align: center;
  }
  .ikoro--map-content-text {
    font-size: calc(14 / 390 * 100vw);
    text-align: center;
  }
  .ikoro--map-smpbox {
    display: block;
  }
  .ikoro--map-smpbox img {
    width: 100%;
    vertical-align: bottom;
  }
  .nispa--map {
    margin: calc(100 / 390 * 100vw) 0 0;
  }
  .nispa--map-content-title {
    font-family: var(--font-main);
    font-size: calc(24 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
    text-align: center;
  }
  .nispa--map-content-subtitle {
    font-size: calc(18 / 390 * 100vw);
    line-height: 1.44444;
    margin: 0 0 calc(10 / 390 * 100vw);
    text-align: center;
  }
  .nispa--map-content-text {
    font-size: calc(14 / 390 * 100vw);
    text-align: center;
  }
  .nispa--map-smpbox {
    display: block;
  }
  .nispa--map-smpbox img {
    width: 100%;
    vertical-align: bottom;
  }
  .pcg--data {
    max-width: initial;
    margin: calc(70 / 390 * 100vw) auto calc(100 / 390 * 100vw);
    padding: 0 calc(20 / 390 * 100vw);
  }
  .pcg--data-title {
    font-size: calc(18 / 390 * 100vw);
    margin: calc(30 / 390 * 100vw) 0 calc(10 / 390 * 100vw);
  }
  .pcg--data__wrap {
    overflow-x: auto;
  }
  .pcg--data__layout {
    display: flex;
    min-width: 800px;
    /* adjust as needed */
  }
  .pcg--data__leftcols {
    position: sticky;
    left: 0;
    z-index: 2;
    background: #fff;
    flex-shrink: 0;
  }
  .pcg--data__rightcols {
    overflow-x: auto;
  }
  .pcg--data__leftcols {
    width: 250px;
  }
  .pcg--data__leftcols table {
    width: 100%;
  }
  .pcg--data__leftcols table th {
    padding: calc(6 / 390 * 100vw);
    font-size: calc(12 / 390 * 100vw);
  }
  .pcg--data__leftcols table td {
    padding: calc(6 / 390 * 100vw);
    font-size: calc(12 / 390 * 100vw);
  }
  .pcg--data__rightcols {
    width: 550px;
  }
  .pcg--data__rightcols table {
    width: 100%;
  }
  .pcg--data__rightcols table th {
    padding: calc(6 / 390 * 100vw);
    font-size: calc(12 / 390 * 100vw);
  }
  .pcg--data__rightcols table td {
    padding: calc(6 / 390 * 100vw);
    font-size: calc(12 / 390 * 100vw);
  }
  .pcg--data .databg__01 {
    background-color: #F0F0F0;
  }
  .pcg--data .dataline__adjusted__lbn {
    border-bottom: none;
  }
  .pcg--data .dataline__adjusted__lrn {
    border-right: none;
  }
  .pcg--detail-header {
    margin: calc(70 / 390 * 100vw) auto calc(35 / 390 * 100vw);
    padding: 0 calc(20 / 390 * 100vw);
  }
  .pcg--detail-header__inner {
    max-width: initial;
    display: block;
  }
  .pcg--detail-header-content {
    width: calc(320 / 390 * 100vw);
    margin: 0 auto;
  }
  .pcg--detail-header-title {
    font-size: calc(24 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
    text-align: center;
  }
  .pcg--detail-header-sub-data {
    font-size: calc(14 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
    text-align: center;
  }
  .pcg--detail-header-lead {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.71429;
    letter-spacing: -0.05em;
  }
  .pcg--detail-header-data {
    margin: 0 auto calc(15 / 390 * 100vw);
  }
  .pcg--detail-header-data th {
    font-size: calc(14 / 390 * 100vw);
    padding: calc(10 / 390 * 100vw) 0;
  }
  .pcg--detail-header-data td {
    font-size: calc(14 / 390 * 100vw);
    padding: calc(10 / 390 * 100vw) 0;
  }
  .pcg--detail-header-data td.dta--separation {
    padding: calc(10 / 390 * 100vw) calc(15 / 390 * 100vw);
  }
  .pcg--detail-figure {
    width: auto;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .pcg--detail-figure img {
    width: 100%;
    vertical-align: bottom;
  }
  .pcg--detail-title {
    font-size: calc(18 / 390 * 100vw);
    margin: 0 0 calc(15 / 390 * 100vw);
  }
  .pcg--gallery {
    margin: 0 0 calc(55 / 390 * 100vw);
  }
  .pcg--gallery .slick-prev, .pcg--gallery .slick-next {
    width: calc(11.66 / 390 * 100vw);
    height: calc(16 / 390 * 100vw);
  }
  .pcg--gallery .slick-prev {
    background-image: url(assets/images/common/arrow--left__bk.svg);
    left: 2.5%;
  }
  .pcg--gallery .slick-next {
    background-image: url(assets/images/common/arrow--right__bk.svg);
    right: 2.5%;
  }
  .pcg--gallery .slick-dots > li.slick-active > button {
    background-color: #000;
  }
  .pcg--gallery .slick-dots {
    bottom: 1.56vw;
  }
}

.pcg--sectionSMP {
  background-image: url(assets/images/pages/courseguide/smp__nav/bg__01.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  margin: 0 0 calc(50 / 390 * 100vw);
}

.pcg--sectionSMP__inner {
  padding: calc(50 / 390 * 100vw) calc(10 / 390 * 100vw) calc(45 / 390 * 100vw);
}

.pcg-title {
  margin: 0 auto calc(20 / 390 * 100vw);
}

.pcg-title img {
  width: 100%;
  vertical-align: bottom;
}

.pcg-contents-line {
  width: calc(370 / 390 * 100vw);
  height: calc(5 / 390 * 100vw);
  background-image: url(assets/images/pages/courseguide/smp__nav/line.svg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: block;
  margin: calc(10 / 390 * 100vw) 0 0;
}

.pcg-nav__wrap {
  display: flex;
  position: relative;
  justify-content: space-between;
  margin: 0 0 calc(10 / 390 * 100vw);
}

.pcg-nav__wrap:after {
  content: "";
  background-color: #FFF;
  width: 1px;
  height: 100%;
  display: block;
  position: absolute;
  left: 50%;
  top: 0;
}

.pcg-nav-list {
  margin: calc(4 / 390 * 100vw) 0 0;
  display: flex;
}

.pcg-nav-list > li {
  margin: 0 calc(5 / 390 * 100vw) 0 0;
}

.pcg-nav-list > li:last-child {
  margin: 0;
}

.pcg-nav-list li a {
  opacity: 0.4;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url(assets/images/pages/courseguide/smp__nav/title__bg__01.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.pcg-nav-list li a:link {
  text-decoration: none;
}

.pcg-nav-list li a:visited {
  text-decoration: none;
}

.pcg-nav-list li a:hover {
  text-decoration: none;
}

.pcg-nav-list li a span {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #FFF;
  box-sizing: border-box;
  font-family: var(--font-main);
  letter-spacing: 0.1em;
  font-size: calc(10 / 390 * 100vw);
  color: #FFF;
}

.pcg-nav-list li a.active {
  opacity: 1.0;
}

.pcg-nav-list.cols3 li a {
  width: calc(55 / 390 * 100vw);
  height: calc(45 / 390 * 100vw);
}

.pcg-nav-list.cols3 li a span {
  width: calc(50 / 390 * 100vw);
  height: calc(40 / 390 * 100vw);
}

.pcg-nav-list.cols2 li a {
  width: calc(85 / 390 * 100vw);
  height: calc(45 / 390 * 100vw);
}

.pcg-nav-list.cols2 li a span {
  width: calc(80 / 390 * 100vw);
  height: calc(40 / 390 * 100vw);
}

.pcg-nav-box {
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url(assets/images/pages/courseguide/smp__nav/title__bg__01.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: calc(175 / 390 * 100vw);
  height: calc(45 / 390 * 100vw);
  opacity: 0.4;
}

.pcg-nav-box:link {
  text-decoration: none;
}

.pcg-nav-box:visited {
  text-decoration: none;
}

.pcg-nav-box:hover {
  text-decoration: none;
}

.pcg-nav-box.focus {
  opacity: 1.0;
}

.pcg-nav-box span {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #FFF;
  box-sizing: border-box;
  width: calc(170 / 390 * 100vw);
  height: calc(40 / 390 * 100vw);
  font-family: var(--font-main);
  letter-spacing: 0.2em;
  font-size: calc(12 / 390 * 100vw);
  color: #FFF;
}

.pcg-contents__wrap {
  background-color: #000;
}

.pcg-contents {
  padding: calc(10 / 390 * 100vw);
}

.pcg-contents-list {
  align-items: center;
  flex-wrap: wrap;
}

.pcg-contents-list > li {
  margin: 0 calc(4 / 390 * 100vw) calc(4 / 390 * 100vw) 0;
}

.pcg-contents-list > li:nth-child(3n) {
  margin: 0 0 calc(4 / 390 * 100vw);
}

.pcg-box {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(113 / 390 * 100vw);
  height: calc(113 / 390 * 100vw);
  background-color: #CCC;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  filter: grayscale(100%);
  -webkit-filter: grayscale(100%);
  transition: filter 0.4s ease;
}

.pcg-box:link {
  text-decoration: none;
}

.pcg-box:visited {
  text-decoration: none;
}

.pcg-box:hover {
  text-decoration: none;
}

.pcg-box.active-color {
  filter: grayscale(0%);
  -webkit-filter: grayscale(0%);
}

.pcg-box span {
  display: block;
  text-align: center;
  font-size: calc(12 / 390 * 100vw);
  font-weight: 400;
  font-family: var(--font-main);
  line-height: 1.25;
  color: #FFF;
  letter-spacing: 0.16em;
}

.pcg-box.pcg--ashiri01 {
  background-image: url(assets/images/pages/courseguide/smp__nav/ikoro__ashiri/hole1.jpg);
}

.pcg-box.pcg--ashiri02 {
  background-image: url(assets/images/pages/courseguide/smp__nav/ikoro__ashiri/hole2.jpg);
}

.pcg-box.pcg--ashiri03 {
  background-image: url(assets/images/pages/courseguide/smp__nav/ikoro__ashiri/hole3.jpg);
}

.pcg-box.pcg--ashiri04 {
  background-image: url(assets/images/pages/courseguide/smp__nav/ikoro__ashiri/hole4.jpg);
}

.pcg-box.pcg--ashiri05 {
  background-image: url(assets/images/pages/courseguide/smp__nav/ikoro__ashiri/hole5.jpg);
}

.pcg-box.pcg--ashiri06 {
  background-image: url(assets/images/pages/courseguide/smp__nav/ikoro__ashiri/hole6.jpg);
}

.pcg-box.pcg--ashiri07 {
  background-image: url(assets/images/pages/courseguide/smp__nav/ikoro__ashiri/hole7.jpg);
}

.pcg-box.pcg--ashiri08 {
  background-image: url(assets/images/pages/courseguide/smp__nav/ikoro__ashiri/hole8.jpg);
}

.pcg-box.pcg--ashiri09 {
  background-image: url(assets/images/pages/courseguide/smp__nav/ikoro__ashiri/hole9.jpg);
}

/*--------------------------------------------------------------
    # _pages02.scss
--------------------------------------------------------------*/
/*
    Pages [Tournament History]
--------------------------------------------------------------*/
.p--th-intro {
  padding: 75px 24px;
}

.p--th-intro__inner {
  max-width: 670px;
  margin: 0 auto;
}

.p--th-intro-title {
  font-size: 3.4rem;
  font-family: var(--font-serif);
  line-height: 1.52941;
  letter-spacing: 0.025em;
  text-align: center;
  font-weight: 400;
  margin: 0 0 50px;
}

.p--th-intro-photo {
  margin: 0 0 30px;
}

.p--th-intro-photo img {
  width: 100%;
  vertical-align: bottom;
}

.p--th-intro-text {
  text-align: center;
  line-height: 1.625;
  font-size: 1.6rem;
}

.p--th-box {
  margin: 0 0 50px;
  background-image: url(assets/images/pages/tournamenthistory/th__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 85px 0 75px;
}

.p--th-box-title {
  display: flex;
  justify-content: center;
  margin: 0 0 30px;
  align-items: baseline;
}

.p--th-box-title span {
  display: block;
}

.p--th-box-title .sub--title {
  color: #FFF;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.06em;
  font-size: 4.0rem;
  margin-right: 0.75em;
}

.p--th-box-title .main--title {
  color: #FFF;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.06em;
  font-size: 8.0rem;
}

.p--th-box-sub-title {
  text-align: center;
  font-size: 1.8rem;
  color: #FFF;
  letter-spacing: 0.1em;
  margin: 0 0 50px;
}

.p--th-box-text {
  max-width: 55%;
  color: #FFF;
  text-align: left;
  line-height: 1.85714;
  margin: 0 auto 20px;
}

.p--th-box-text:last-child {
  margin: 0 auto;
}

.p--th-box-logo {
  width: 192px;
  margin: 50px auto 0;
}

.p--th-box-logo img {
  width: 100%;
  vertical-align: bottom;
}

.p--th-data {
  padding: 80px 24px 75px;
}

.p--th-data-title {
  max-width: 1200px;
  margin: 0 auto 25px;
  background-image: url(assets/images/pages/tournamenthistory/th__line.svg);
  background-repeat: repeat-x;
  background-position: left center;
  background-size: contain;
  text-align: center;
}

.p--th-data-title span {
  display: inline-block;
  background-color: #FFF;
  padding: 0 15px;
  font-size: 4.0rem;
  font-family: var(--font-main);
  letter-spacing: 0.1em;
  font-weight: 400;
}

.p--th-data-title strong {
  font-weight: 400;
}

.p--th-data-sub-title {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
  margin: 0 0 40px;
}

.p--th-data-list {
  max-width: 900px;
  margin: 0 auto 20px;
  border-top: 1px solid #707070;
  padding: 20px 0 0;
}

.p--th-data-box {
  background-color: #F0F0F0;
  margin: 0 0 5px;
}

.p--th-data-box span {
  display: block;
}

.p--th-data-box__inner {
  padding: 10px 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.p--th-data-box-title {
  width: 51.19048%;
  font-size: 1.4rem;
  font-weight: 700;
}

.p--th-data-box-content {
  width: 45.83333%;
  background-color: #006636;
  color: #FFF;
  font-size: 1.6rem;
  font-weight: 700;
}

.p--th-data-box-content__inner {
  padding: 10px;
}

.p--th-data-box-content-sub {
  font-style: normal;
  padding: 0 20px 0 0;
  margin: 0 10px 0 0;
  background-image: url(assets/images/common/arrow--right__wh.svg);
  background-repeat: no-repeat;
  background-size: 10.07px 13.84px;
  background-position: center right;
}

.p--th-data-line {
  max-width: 1200px;
  margin: 75px auto 0;
  display: block;
}

.p--th-banner {
  margin: 0 auto 75px;
  max-width: 900px;
}

.p--th-banner img {
  width: 100%;
  vertical-align: bottom;
}

@media screen and (max-width: 768px) {
  .p--th-intro {
    padding: calc(50 / 390 * 100vw) 0;
  }
  .p--th-intro__inner {
    max-width: initial;
    margin: 0 auto;
  }
  .p--th-intro-title {
    font-size: calc(24 / 390 * 100vw);
    line-height: 1.41667;
    margin: 0 0 calc(30 / 390 * 100vw);
  }
  .p--th-intro-photo {
    margin: 0 0 calc(30 / 390 * 100vw);
  }
  .p--th-intro-text {
    text-align: center;
    line-height: 1.375;
    font-size: calc(16 / 390 * 100vw);
  }
  .p--th-box {
    margin: 0 0 calc(50 / 390 * 100vw);
    padding: calc(45 / 390 * 100vw) 0;
  }
  .p--th-box:last-child {
    margin: 0;
  }
  .p--th-box-title {
    margin: 0 0 calc(15 / 390 * 100vw);
  }
  .p--th-box-title .sub--title {
    font-size: calc(25 / 390 * 100vw);
    margin-right: 0.7em;
  }
  .p--th-box-title .main--title {
    letter-spacing: 0.07em;
    font-size: calc(60 / 390 * 100vw);
  }
  .p--th-box-sub-title {
    font-size: calc(16 / 390 * 100vw);
    line-height: 1.25;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--th-box-logo {
    width: calc(106 / 390 * 100vw);
    margin: calc(20 / 390 * 100vw) auto 0;
  }
  .p--th-box .p--cc-section-text {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.57143;
    text-align: center;
    color: #FFF;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--th-box .p--cc-section-text:last-child {
    margin: 0;
  }
  .p--th-data {
    padding: calc(80 / 390 * 100vw) calc(20 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
  .p--th-data-title {
    max-width: calc(380 / 390 * 100vw);
    margin: 0 auto calc(20 / 390 * 100vw);
    background-image: url(assets/images/pages/tournamenthistory/th__line__smp.svg);
    background-repeat: no-repeat;
    background-position: left 0px top calc(20 / 390 * 100vw);
    background-size: 110%;
    text-align: center;
  }
  .p--th-data-title span {
    padding: 0 calc(20 / 390 * 100vw);
    font-size: calc(25 / 390 * 100vw);
    line-height: 1.4;
  }
  .p--th-data-title strong {
    font-weight: 400;
    display: block;
    font-size: calc(32 / 390 * 100vw);
  }
  .p--th-data-sub-title {
    font-size: calc(16 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
    line-height: 1.5;
  }
  .p--th-data-list {
    max-width: initial;
    margin: 0 auto calc(15 / 390 * 100vw);
    padding: calc(15 / 390 * 100vw) 0 0;
  }
  .p--th-data-box {
    width: calc(320 / 390 * 100vw);
    margin: 0 auto calc(5 / 390 * 100vw);
  }
  .p--th-data-box span {
    display: block;
  }
  .p--th-data-box__inner {
    padding: calc(10 / 390 * 100vw) calc(20 / 390 * 100vw);
    display: block;
  }
  .p--th-data-box-title {
    width: auto;
    font-size: calc(13 / 390 * 100vw);
    line-height: 1.53846;
    margin: 0 0 calc(5 / 390 * 100vw);
  }
  .p--th-data-box-content {
    width: auto;
    font-size: calc(16 / 390 * 100vw);
  }
  .p--th-data-box-content__inner {
    padding: calc(5 / 390 * 100vw) calc(10 / 390 * 100vw);
  }
  .p--th-data-box-content-sub {
    font-style: normal;
    padding: 0 calc(20 / 390 * 100vw) 0 0;
    margin: 0 calc(10 / 390 * 100vw) 0 0;
    background-size: calc(10.7 / 390 * 100vw) calc(13.84 / 390 * 100vw);
  }
  .p--th-data-line {
    max-width: calc(350 / 390 * 100vw);
    margin: calc(35 / 390 * 100vw) auto 0;
    display: block;
    width: calc(350 / 390 * 100vw);
    overflow: hidden;
  }
  .p--th-banner {
    margin: 0 auto calc(35 / 390 * 100vw);
    max-width: calc(350 / 390 * 100vw);
  }
  .p--th-banner img {
    width: 100%;
    vertical-align: bottom;
  }
}

/*
    Pages [Gallery]
--------------------------------------------------------------*/
.p--gallery-hero__inner {
  position: relative;
  width: 100%;
  min-height: 768px;
  overflow: hidden;
}

.p--gallery-hero-title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  color: #FFF;
  font-family: var(--font-main);
  letter-spacing: 0.1em;
  font-weight: 400;
  font-size: 4.0rem;
  text-align: center;
}

.p--gallery-hero .slick-dots {
  bottom: 40px;
}

.p--gallery-hero-list img {
  width: 100%;
  height: 768px;
  object-fit: cover;
}

.p--gallery {
  background-image: url(assets/images/pages/gallery/gal__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin: 0 0 25px;
}

.p--gallery-modal-nav {
  padding: 25px 0 0;
}

.p--gallery-modal-list {
  display: flex;
  flex-wrap: wrap;
}

.p--gallery-modal-list > li {
  width: 14.28571%;
  margin: 0 0 15px;
}

.p--gallery-modal-list > li img {
  width: 100%;
  vertical-align: bottom;
}

.p--gallery-exp {
  padding: 100px 24px 75px;
}

.p--gallery-exp__inner {
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.p--gallery-profile {
  width: 20.44444%;
}

.p--gallery-profile img {
  width: 100%;
  vertical-align: bottom;
}

.p--gallery-photo {
  margin: 0 0 10px;
}

.p--gallery-content {
  width: 75%;
}

.p--gallery-content p {
  margin: 0 0 1.0em;
  line-height: 1.75;
  font-size: 1.6rem;
  color: #FFF;
}

.p--gallery-content p:last-child {
  margin: 0;
}

.p--gallery-post {
  color: #FFF;
  font-size: 1.2rem;
  margin: 0 0 10px;
}

.p--gallery-jp__name {
  color: #FFF;
  font-size: 2.4rem;
  margin: 0 0 10px;
  font-family: var(--font-serif);
}

.p--gallery-en__name {
  color: #FFF;
  font-size: 1.2rem;
  font-family: var(--font-main);
  letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
  .p--gallery-hero__inner {
    min-height: calc(686 / 390 * 100vw);
    background-color: #2A2A28;
  }
  .p--gallery-hero-title {
    font-size: calc(24 / 390 * 100vw);
  }
  .p--gallery-hero .slick-dots {
    bottom: -4.11vw;
  }
  .p--gallery-hero-list img {
    width: 100%;
    height: calc(662 / 390 * 100vw);
    object-fit: cover;
  }
  .p--gallery {
    background-image: url(assets/images/pages/gallery/gal__bg__smp.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    margin: 0 0 calc(25 / 390 * 100vw);
  }
  .p--gallery-modal-nav {
    padding: 0;
  }
  .p--gallery-modal-list {
    display: flex;
    flex-wrap: wrap;
  }
  .p--gallery-modal-list > li {
    width: 14.28571%;
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--gallery-modal-list > li img {
    width: 100%;
    vertical-align: bottom;
  }
  .p--gallery-exp {
    padding: calc(50 / 390 * 100vw) calc(45 / 390 * 100vw) calc(45 / 390 * 100vw);
  }
  .p--gallery-exp__inner {
    max-width: initial;
    display: flex;
    flex-direction: column;
  }
  .p--gallery-profile {
    width: calc(185 / 390 * 100vw);
    margin: 0 auto calc(50 / 390 * 100vw);
  }
  .p--gallery-photo {
    width: calc(185 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--gallery-content {
    width: auto;
  }
  .p--gallery-content p {
    line-height: 1.57143;
    font-size: calc(14 / 390 * 100vw);
  }
  .p--gallery-post {
    font-size: calc(12 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--gallery-jp__name {
    font-size: calc(24 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--gallery-en__name {
    font-size: calc(12 / 390 * 100vw);
  }
}

/*
    Pages [Shop]
--------------------------------------------------------------*/
.p--shop-hero {
  margin: 76px 0 50px;
}

.p--shop-hero__inner {
  margin: 0 auto;
  background-image: url(assets/images/pages/shop/shop__main__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 75px 0;
}

.p--shop-hero-logo {
  width: 368px;
  margin: 0 auto 35px;
}

.p--shop-hero-logo img {
  width: 100%;
  vertical-align: bottom;
}

.p--shop-hero-text {
  color: #FFF;
  font-size: 1.6rem;
  line-height: 1.75;
  text-align: center;
  margin: 0 0 30px;
}

.p--shop-hero-title {
  font-size: 1.4rem;
  color: #000;
  font-weight: 700;
  margin: 0 0 12px;
  text-align: center;
}

.p--shop-hero-box {
  box-sizing: border-box;
  border: 5px solid #006636;
  background-color: #F0F0F0;
  width: 700px;
  margin: 0 auto;
}

.p--shop-hero-box__inner {
  padding: 10px 15px;
}

.p--shop-hero-box-text {
  font-size: 1.2rem;
  font-weight: 700;
  text-align: center;
  margin: 0 0 10px;
}

.p--shop-hero-box-define {
  display: flex;
  justify-content: center;
  align-items: center;
}

.p--shop-hero-box-define dt {
  padding: 5px 15px 5px 5px;
  background-color: #006636;
  font-size: 1.1rem;
  color: #FFF;
  font-weight: 700;
  margin-right: 20px;
  background-image: url(assets/images/common/arrow--right__wh.svg);
  background-position: right 5px center;
  background-size: 6.01px 8.26px;
  background-repeat: no-repeat;
}

.p--shop-hero-box-define dd {
  font-weight: 700;
  font-size: 1.1rem;
}

.p--shop-hero-box-define dd a {
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.p--shop-hero-box-define dd a:link {
  text-decoration: underline;
  color: #000;
}

.p--shop-hero-box-define dd a:visited {
  text-decoration: underline;
  color: #000;
}

.p--shop-hero-box-define dd a:hover {
  text-decoration: underline;
  color: #000;
  opacity: 0.45;
}

.p--shop--goods {
  background-image: url(assets/images/pages/shop/box__bg.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  margin: 0 0 75px;
  padding: 45px 0 75px;
}

.p--shop--goods::before, .p--shop--goods::after {
  content: "";
  position: absolute;
  top: 0;
  width: 6.07613%;
  height: 100%;
  background-color: #fff;
  z-index: 2;
}

.p--shop--goods::before {
  left: 0;
}

.p--shop--goods::after {
  right: 0;
}

.p--shop--goods-title {
  text-align: center;
  font-family: var(--font-main);
  font-size: 5.5rem;
  letter-spacing: 0.06em;
  color: #FFF;
  font-weight: 400;
  margin: 0 0 20px;
}

.p--shop--goods-sub-title {
  color: #FFF;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1em;
  margin: 0 0 30px;
}

.p--shop--goods-text {
  color: #FFF;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.71429;
}

.p--shop-box {
  position: relative;
  z-index: 10;
  margin: 40px 0 0;
}

.p--shop-box-content {
  margin: 30px 0 0;
}

.p--shop-box-main-title {
  font-family: var(--font-serif);
  color: #FFF;
  font-size: 4.0rem;
  font-weight: 400;
  text-align: center;
  margin: 0 0 10px;
}

.p--shop-box-sub-title {
  color: #FFF;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
  margin: 0 0 30px;
}

.p--shop-box-text {
  color: #FFF;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.75;
}

.p--shop-box-define dt {
  text-align: center;
  margin: 30px 0 20px;
}

.p--shop-box-define dt div {
  box-sizing: border-box;
  border: 1px solid #FFF;
  font-size: 1.8rem;
  color: #FFF;
  letter-spacing: 0.1em;
  display: inline-block;
  padding: 10px 25px;
}

.p--shop-box-define dd {
  color: #FFF;
  text-align: center;
  font-size: 1.8rem;
}

.p--shop-box-item-sub-title {
  font-family: var(--font-serif);
  font-size: 2.0rem;
  letter-spacing: 0.06em;
  color: #FFF;
  margin: 0 0 10px;
  text-align: center;
  font-weight: 400;
}

.p--shop-box-item-main-title {
  font-family: var(--font-serif);
  font-size: 4.0rem;
  letter-spacing: 0.06em;
  color: #FFF;
  margin: 0 0 10px;
  text-align: center;
  font-weight: 400;
}

.p--shop-box-price {
  text-align: center;
}

.p--shop-box-price span {
  display: inline-block;
  background-color: #FFF;
  padding: 5px 20px;
  font-size: 1.6rem;
  color: #006636;
  font-weight: 700;
  margin: 0 0 15px;
}

.p--shop-box-button__wrap {
  margin: 20px 0 0;
}

.p--shop-box-button__wrap .cmn--button01 {
  margin: 0 auto;
}

.p--shop-box-caution {
  display: block;
  margin: 20px 0;
  color: #FFF;
  font-size: 1.0rem;
  text-align: center;
}

.p--shop-box .slick-slide {
  padding: 0;
  transform: scale(0.85);
  opacity: 1.0;
  transition: all 0.5s ease;
  min-height: auto;
}

.p--shop-box .slick-slide img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 700 / 445;
}

.p--shop-box .slick-slide .p--shop-box-content {
  display: none;
}

.p--shop-box .slick-center {
  transform: scale(1);
  opacity: 1;
  z-index: 2;
}

.p--shop-box .slick-center img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 800 / 510;
}

.p--shop-box .slick-center .p--shop-box-content {
  display: block;
}

.p--shop-box .slick-prev, .p--shop-box .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 17.5vw;
  display: block;
  width: 14.65px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  z-index: 20;
}

.p--shop-box .slick-prev:hover, .p--shop-box .slick-next:hover {
  opacity: 0.65;
}

.p--shop-box .slick-prev::before, .p--shop-box .slick-next::before {
  font-size: 0;
  line-height: 0;
}

.p--shop-box .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
  left: 20%;
}

.p--shop-box .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
  right: 20%;
}

.p--shop-box.bg__wh-list .slick-prev {
  background-image: url(assets/images/common/arrow--left__wh.svg);
}

.p--shop-box.bg__wh-list .slick-next {
  background-image: url(assets/images/common/arrow--right__wh.svg);
}

.p--shop-box.bg__bk-list .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
}

.p--shop-box.bg__bk-list .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
}

.p--shop-box .slick-dots > li.slick-active > button {
  background-color: #000;
}

.p--shop-under-button {
  margin: 0 0 110px;
}

@media screen and (max-width: 768px) {
  .p--shop .p--cc-nav-list > li {
    margin: 0 calc(10 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
  .p--shop .p--cc-nav-list {
    padding: 0 calc(10 / 390 * 100vw);
  }
  .p--shop-hero {
    margin: calc(50 / 390 * 100vw) 0 calc(30 / 390 * 100vw);
    min-height: calc(500 / 390 * 100vw);
  }
  .p--shop-hero__inner {
    max-width: initial;
    margin: 0 auto;
    background-image: url(assets/images/pages/shop/shop__main__bg.jpg);
    padding: calc(50 / 390 * 100vw) calc(15 / 390 * 100vw);
  }
  .p--shop-hero-logo {
    width: calc(200 / 390 * 100vw);
    margin: 0 auto calc(35 / 390 * 100vw);
  }
  .p--shop-hero-text {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.57143;
    margin: 0 0 calc(30 / 390 * 100vw);
  }
  .p--shop-hero-title {
    font-size: calc(14 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--shop-hero-box {
    border: 3px solid #006636;
    width: calc(360 / 390 * 100vw);
    margin: 0 auto;
  }
  .p--shop-hero-box__inner {
    padding: calc(10 / 390 * 100vw);
  }
  .p--shop-hero-box-text {
    font-size: calc(12 / 390 * 100vw);
    margin: 0 0 calc(5 / 390 * 100vw);
    line-height: 1.5;
  }
  .p--shop-hero-box-define {
    display: block;
  }
  .p--shop-hero-box-define dt {
    padding: calc(5 / 390 * 100vw) calc(20 / 390 * 100vw) calc(5 / 390 * 100vw) calc(5 / 390 * 100vw);
    text-align: center;
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.5;
    margin: 0 0 calc(10 / 390 * 100vw);
    background-position: right calc(15 / 390 * 100vw) center;
    background-size: calc(6.01 / 390 * 100vw) calc(8.26 / 390 * 100vw);
  }
  .p--shop-hero-box-define dd {
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.5;
    text-align: center;
  }
  .p--shop--goods {
    margin: 0 0 calc(50 / 390 * 100vw);
    padding: calc(30 / 390 * 100vw) 0 calc(50 / 390 * 100vw);
  }
  .p--shop--goods::before, .p--shop--goods::after {
    display: none;
  }
  .p--shop--goods::before {
    left: 0;
  }
  .p--shop--goods::after {
    right: 0;
  }
  .p--shop--goods-title {
    font-size: calc(25 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--shop--goods-sub-title {
    font-size: calc(14 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--shop--goods-text {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.42857;
    padding: 0 calc(20 / 390 * 100vw);
  }
  .p--shop-box {
    margin: calc(20 / 390 * 100vw) 0 0;
  }
  .p--shop-box-content {
    margin: calc(20 / 390 * 100vw) 0 0;
  }
  .p--shop-box-main-title {
    font-size: calc(25 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--shop-box-sub-title {
    font-size: calc(14 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--shop-box-text {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.57143;
    text-align: left;
  }
  .p--shop-box-text br {
    display: none;
  }
  .p--shop-box-define dt {
    margin: calc(30 / 390 * 100vw) 0 calc(20 / 390 * 100vw);
  }
  .p--shop-box-define dt div {
    font-size: calc(14 / 390 * 100vw);
    padding: calc(10 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
  .p--shop-box-define dd {
    font-size: calc(14 / 390 * 100vw);
  }
  .p--shop-box-item-sub-title {
    font-size: calc(14 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--shop-box-item-main-title {
    font-size: calc(25 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--shop-box-price span {
    padding: calc(5 / 390 * 100vw) calc(10 / 390 * 100vw);
    font-size: calc(11 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--shop-box-button__wrap {
    margin: calc(20 / 390 * 100vw) 0 0;
  }
  .p--shop-box-caution {
    margin: calc(20 / 390 * 100vw) 0;
    font-size: calc(10 / 390 * 100vw);
  }
  .p--shop-box .slick-prev, .p--shop-box .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: calc(110 / 390 * 100vw);
    display: block;
    width: calc(12.12 / 390 * 100vw);
    height: calc(16.5 / 390 * 100vw);
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    -webkit-transition: all 0.25s ease;
    -moz-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all  0.25s ease;
    z-index: 20;
  }
  .p--shop-box .slick-prev:hover, .p--shop-box .slick-next:hover {
    opacity: 0.65;
  }
  .p--shop-box .slick-prev::before, .p--shop-box .slick-next::before {
    font-size: 0;
    line-height: 0;
  }
  .p--shop-box .slick-prev {
    left: 5.0%;
  }
  .p--shop-box .slick-next {
    right: 5.0%;
  }
  .p--shop-under-button {
    margin: 0 0 calc(50 / 390 * 100vw);
  }
}

/*
    Pages [Practice Range]
--------------------------------------------------------------*/
.p--pr-main {
  background-image: url(assets/images/pages/practicerange/bg__01.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 100px 0 50px;
  margin: 0 0 25px;
}

.p--pr-title {
  font-family: var(--font-main);
  font-size: 8.0rem;
  color: #FFF;
  font-weight: 400;
  letter-spacing: 0.06em;
  text-align: center;
  margin: 0 0 20px;
}

.p--pr-sub-title {
  font-size: 1.8rem;
  letter-spacing: 0.025em;
  color: #FFF;
  font-weight: 700;
  text-align: center;
  margin: 0 0 20px;
}

.p--pr-text {
  color: #FFF;
  font-size: 1.6rem;
  line-height: 1.75;
  text-align: center;
}

.p--pr-box {
  position: relative;
  z-index: 10;
  margin: 40px 0 0;
}

.p--pr-box .slick-slide {
  padding: 0;
  transform: scale(0.85);
  opacity: 1.0;
  transition: all 0.5s ease;
  aspect-ratio: 700 / 445;
  min-height: auto;
}

.p--pr-box .slick-slide img {
  width: 100%;
  height: auto;
  display: block;
}

.p--pr-box .slick-slide .p--pr-box-content {
  display: none;
}

.p--pr-box .slick-center {
  transform: scale(1);
  opacity: 1;
  z-index: 2;
  aspect-ratio: 800 / 510;
}

.p--pr-box .slick-center img {
  width: 100%;
  height: auto;
  display: block;
}

.p--pr-box .slick-center .p--pr-box-content {
  display: block;
}

.p--pr-box .slick-prev, .p--pr-box .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 17.5vw;
  display: block;
  width: 14.65px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  z-index: 20;
}

.p--pr-box .slick-prev:hover, .p--pr-box .slick-next:hover {
  opacity: 0.65;
}

.p--pr-box .slick-prev::before, .p--pr-box .slick-next::before {
  font-size: 0;
  line-height: 0;
}

.p--pr-box .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
  left: 20%;
}

.p--pr-box .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
  right: 20%;
}

.p--pr-box.bg__wh-list .slick-prev {
  background-image: url(assets/images/common/arrow--left__wh.svg);
}

.p--pr-box.bg__wh-list .slick-next {
  background-image: url(assets/images/common/arrow--right__wh.svg);
}

.p--pr-box.bg__bk-list .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
}

.p--pr-box.bg__bk-list .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
}

.p--pr-box .slick-dots > li.slick-active > button {
  background-color: #000;
}

.p--pr-box-text {
  font-size: 1.4rem;
  color: #FFF;
  text-align: center;
}

.p--pr-box-content {
  padding: 20px 0 0;
}

@media screen and (max-width: 768px) {
  .p--pr-main {
    padding: calc(100 / 390 * 100vw) 0 calc(50 / 390 * 100vw);
    margin: 0 0 calc(25 / 390 * 100vw);
  }
  .p--pr-title {
    font-size: calc(60 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--pr-sub-title {
    font-size: calc(18 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--pr-text {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.57143;
  }
  .p--pr-box {
    margin: calc(40 / 390 * 100vw) 0 0;
  }
  .p--pr-box .slick-slide {
    padding: 0;
    transform: scale(0.85);
    opacity: 1.0;
    transition: all 0.5s ease;
    aspect-ratio: 700 / 445;
    min-height: auto;
  }
  .p--pr-box .slick-slide img {
    width: 100%;
    height: auto;
    display: block;
  }
  .p--pr-box .slick-slide .p--pr-box-content {
    display: none;
  }
  .p--pr-box .slick-center {
    transform: scale(1);
    opacity: 1;
    z-index: 2;
    aspect-ratio: 800 / 510;
  }
  .p--pr-box .slick-center img {
    width: 100%;
    height: auto;
    display: block;
  }
  .p--pr-box .slick-center .p--pr-box-content {
    display: block;
  }
  .p--pr-box .slick-prev, .p--pr-box .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: calc(90 / 390 * 100vw);
    display: block;
    width: calc(12.12 / 390 * 100vw);
    height: calc(16.5 / 390 * 100vw);
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    -webkit-transition: all 0.25s ease;
    -moz-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all  0.25s ease;
    z-index: 20;
  }
  .p--pr-box .slick-prev:hover, .p--pr-box .slick-next:hover {
    opacity: 0.65;
  }
  .p--pr-box .slick-prev::before, .p--pr-box .slick-next::before {
    font-size: 0;
    line-height: 0;
  }
  .p--pr-box .slick-prev {
    left: 5.0%;
  }
  .p--pr-box .slick-next {
    right: 5.0%;
  }
  .p--pr-box-text {
    font-size: calc(14 / 390 * 100vw);
  }
  .p--pr-box-content {
    padding: calc(20 / 390 * 100vw) 0 0;
  }
}

/*
    Pages [RESTAURANT]
--------------------------------------------------------------*/
.food__bg-banner {
  display: block;
  position: absolute;
  bottom: 40px;
  left: 5.85652%;
  width: 190px;
  height: 190px;
}

.food__bg-banner img {
  width: 100%;
  vertical-align: bottom;
}

.p--foods-main__wrap {
  padding: 75px 24px;
}

.p--foods-main {
  max-width: 1200px;
  margin: 0 auto;
  background-image: url(assets/images/pages/foods/main/bg__01.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p--foods-main__inner {
  padding: 40px 50px;
  display: flex;
  justify-content: space-between;
}

.p--foods-main-photo {
  width: 60%;
}

.p--foods-main-photo img {
  width: 100%;
  vertical-align: bottom;
}

.p--foods-main-content {
  width: 36.36364%;
}

.p--foods-main-content__inner {
  padding: 45px 0 0;
}

.p--foods-main-title {
  font-size: 5.0rem;
  font-family: var(--font-main);
  font-weight: 400;
  color: #FFF;
  letter-spacing: 0.06em;
  line-height: 1.2;
  margin: 0 0 30px;
}

.p--foods-main-sub-title {
  padding: 15px 0;
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  margin: 0 0 26.5px;
  font-size: 2.1rem;
  letter-spacing: 0.018em;
  font-family: var(--font-serif);
  color: #FFF;
  font-weight: 400;
}

.p--foods-main-text {
  color: #FFF;
  line-height: 1.42857;
  font-size: 1.4rem;
  margin: 0 0 15px;
}

.p--foods-scrollinfinity {
  margin: 0 0 75px;
}

.p--foods-scrollinfinity-list > li {
  max-width: 450px;
  margin: 0 8px;
}

.p--foods-scrollinfinity-list > li img {
  width: 100%;
  vertical-align: bottom;
}

.scroll-infinity__wrap {
  overflow: hidden;
  position: relative;
}

.scroll-infinity__list {
  display: flex;
  width: max-content;
  animation: scroll-left 80s linear infinite;
}

.scroll-infinity__list li {
  flex-shrink: 0;
  margin-right: 8px;
}

@keyframes scroll-left {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-50%);
  }
}

.p--foods-menu {
  padding: 25px;
}

.p--foods-menu__wrap {
  padding: 0 24px;
  margin: 0 0 75px;
}

.p--foods-menu__inner {
  max-width: 1000px;
  margin: 0 auto;
  background-color: #006636;
}

.p--foods-menu__cinner {
  background-color: #00502A;
  padding: 25px;
}

.p--foods-menu-title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0 auto 10px;
  position: relative;
  font-family: var(--font-main);
  color: #FFF;
  white-space: nowrap;
  font-size: 2.0rem;
  letter-spacing: 0.1em;
  font-weight: 400;
}

.p--foods-menu-title::before, .p--foods-menu-title::after {
  content: '';
  display: block;
  flex: 1;
  height: 7px;
  background: url(assets/images/common/line__wh.svg) repeat-x center;
  background-size: contain;
  background-repeat: repeat-x;
}

.p--foods-menu-title::before {
  margin-right: 20px;
}

.p--foods-menu-title::after {
  margin-left: 20px;
}

.p--foods-menu-list {
  display: flex;
  flex-wrap: wrap;
}

.p--foods-menu-list.one--item {
  display: flex;
  justify-content: center;
}

.p--foods-menu-list.one--item > li {
  margin: 0 0 5px;
  width: 30.33333%;
}

.p--foods-menu-list > li {
  width: 24.55556%;
  margin: 0 0.55556% 5px 0;
}

.p--foods-menu-list > li:nth-child(4n) {
  margin: 0 0 5px;
}

.p--foods-menu-list > li a {
  display: block;
  padding: 10px;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  font-size: 1.4rem;
  background-color: #000;
  background-image: url(assets/images/common/arrow--upper__wh.svg);
  background-repeat: no-repeat;
  background-size: 13.74px 10px;
  background-position: center right 5px;
}

.p--foods-menu-list > li a:link {
  text-decoration: none;
  color: #FFF;
}

.p--foods-menu-list > li a:visited {
  text-decoration: none;
  color: #FFF;
}

.p--foods-menu-list > li a:hover {
  text-decoration: none;
  color: #FFF;
  opacity: 0.45;
}

.p--foods--content {
  background-image: url(assets/images/pages/foods/bg__01.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  margin: 0 0 75px;
  padding: 45px 0 50px;
}

.p--foods--content::before, .p--foods--content::after {
  content: "";
  position: absolute;
  top: 0;
  width: 6.07613%;
  height: 100%;
  background-color: #fff;
  z-index: 2;
}

.p--foods--content::before {
  left: 0;
}

.p--foods--content::after {
  right: 0;
}

.p--foods--content-title {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  max-width: 1100px;
  margin: 0 auto 20px;
  font-family: var(--font-main);
  font-size: 4.0rem;
  letter-spacing: 0.06em;
  color: #000;
  font-weight: 400;
}

.p--foods--content-title::before, .p--foods--content-title::after {
  content: '';
  display: block;
  flex: 1;
  height: 7px;
  background-image: url(assets/images/common/line__bk.svg);
  background-position: center;
  background-repeat: repeat-x;
}

.p--foods--content-title::before {
  margin-right: 20px;
}

.p--foods--content-title::after {
  margin-left: 20px;
}

.p--foods--content-sub-title {
  color: #000;
  font-size: 2.0rem;
  font-weight: 400;
  text-align: center;
  letter-spacing: 0.2em;
  margin: 0 0 30px;
  font-family: var(--font-serif);
}

.p--foods-box {
  position: relative;
  z-index: 10;
  margin: 40px 0 0;
}

.p--foods-box .price--text {
  color: #006636;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.p--foods-box-content {
  margin: 30px 0 0;
}

.p--foods-box-main-title {
  color: #000;
  font-size: 2.0rem;
  font-weight: 400;
  text-align: center;
  letter-spacing: 0.06em;
  margin: 0 0 15px;
  line-height: 1.35;
}

.p--foods-box .sub--text {
  font-weight: 400;
  letter-spacing: 0.1em;
  font-size: 1.4rem;
  display: block;
  margin: 0 0 5px;
  line-height: 1.35;
}

.p--foods-box-main-text {
  text-align: center;
  margin: 0 0 15px;
}

.p--foods-box .slick-dots {
  bottom: -10px;
}

.p--foods-box .foods-slick-dots {
  margin: 20px 0 30px;
}

.p--foods-box .foods-slick-dots .slick-dots {
  position: relative;
  bottom: inherit;
}

.p--foods-box .slick-slide {
  padding: 0;
  transform: scale(0.85);
  opacity: 1.0;
  transition: all 0.5s ease;
  min-height: auto;
}

.p--foods-box .slick-slide img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 700 / 445;
}

.p--foods-box .slick-slide .p--foods-box-content {
  display: none;
}

.p--foods-box .slick-center {
  transform: scale(1);
  opacity: 1;
  z-index: 2;
}

.p--foods-box .slick-center img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 800 / 510;
}

.p--foods-box .slick-center .p--foods-box-content {
  display: block;
}

.p--foods-box .slick-prev, .p--foods-box .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 17.5vw;
  display: block;
  width: 14.65px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  z-index: 20;
}

.p--foods-box .slick-prev:hover, .p--foods-box .slick-next:hover {
  opacity: 0.65;
}

.p--foods-box .slick-prev::before, .p--foods-box .slick-next::before {
  font-size: 0;
  line-height: 0;
}

.p--foods-box .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
  left: 20%;
}

.p--foods-box .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
  right: 20%;
}

.p--foods-box.bg__wh-list .slick-prev {
  background-image: url(assets/images/common/arrow--left__wh.svg);
}

.p--foods-box.bg__wh-list .slick-next {
  background-image: url(assets/images/common/arrow--right__wh.svg);
}

.p--foods-box.bg__bk-list .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
}

.p--foods-box.bg__bk-list .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
}

.p--foods-box .slick-dots > li.slick-active > button {
  background-color: #000;
}

.p--foods-meta {
  max-width: 1100px;
  margin: 0 auto;
}

.p--foods-meta-text {
  margin: 0 0 20px;
  text-align: center;
  font-size: 1.6rem;
}

.p--foods-meta-text .meta--price {
  color: #006636;
  font-weight: 700;
}

.p--foods-meta-text .meta-arrows {
  color: #006636;
  font-weight: 700;
  padding: 0 15px 0 0;
  background-image: url(assets/images/common/arrow--right__bk.svg);
  background-repeat: no-repeat;
  background-position: center right;
  background-size: 9px 12.37px;
  margin-right: 5px;
}

.p--foods-meta-button__wrap {
  margin: 40px 0 0;
}

.p--foods-meta-button__wrap .cmn--button01 {
  margin: 0 auto;
}

.p--foods-meta-line {
  margin: 50px 0 0;
  padding: 0;
  display: block;
  height: 5px;
  width: 100%;
  background-image: url(assets/images/common/line__bk02.svg);
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: contain;
}

.p--foods-sc {
  background-color: #FFF;
  max-width: 1000px;
  margin: 40px auto 0;
}

.p--foods-sc__inner {
  padding: 45px 50px;
}

.p--foods-sc-title {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  margin: 0 0 20px;
  position: relative;
  text-align: center;
  padding: 20px 0;
}

.p--foods-sc-title:before {
  content: "";
  width: 69px;
  height: 66.5px;
  display: block;
  background-image: url(assets/images/pages/foods/soupcurry/logo.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: absolute;
  top: 15px;
  left: 120px;
}

.p--foods-sc-title .title__upper {
  font-size: 2.4rem;
  font-family: var(--font-serif);
  letter-spacing: 0.1em;
  color: #006636;
  font-weight: 400;
  margin: 0 0 10px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.p--foods-sc-title .title__upper em {
  display: block;
  font-style: normal;
  padding: 0 0 0 120px;
}

.p--foods-sc-title .title__upper i {
  display: block;
  width: 130.5px;
  height: 28.5px;
  background-image: url(assets/images/pages/foods/soupcurry/sub__title.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  margin-left: 20px;
}

.p--foods-sc-title .title__under {
  font-size: 2.4rem;
  font-family: var(--font-serif);
  letter-spacing: 0.1em;
  color: #006636;
  font-weight: 400;
}

.p--foods-sc-title span {
  display: block;
}

.p--foods-sc-text {
  font-size: 1.6rem;
  text-align: center;
  line-height: 1.75;
  margin: 0 0 30px;
}

.p--foods-sc__cols {
  display: flex;
  justify-content: space-between;
}

.p--foods-sc__cols h4 {
  color: #006636;
  font-size: 1.2rem;
  margin: 0 0 10px;
}

.p--foods-sc__cols p {
  font-size: 1.2rem;
  line-height: 1.83333;
}

.p--foods-sc__cols-left {
  width: 50%;
  padding: 0 20px 0 0;
}

.p--foods-sc__cols-right {
  width: 50%;
  border-left: 1px solid #000;
  padding: 0 0 0 20px;
}

.p--foods--banner {
  width: 100%;
  min-height: 388px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 0 40px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.p--foods--banner.party--banner {
  background-image: url(assets/images/pages/foods/party__bg.jpg);
}

.p--foods--banner.drink--banner {
  background-image: url(assets/images/pages/foods/drink__bg.jpg);
}

.p--foods--banner.breakfast--banner {
  background-image: url(assets/images/pages/foods/breakfast__bg.jpg);
}

.p--foods--banner.wine--banner {
  background-image: url(assets/images/pages/foods/wine__bg.jpg);
}

.p--foods--banner .cmn--button01 {
  margin: 0 auto;
}

.p--foods--banner-title {
  margin: 0 0 30px;
}

.p--foods--banner-title span {
  display: block;
}

.p--foods--banner-title.color__bk .title--en {
  color: #000;
}

.p--foods--banner-title.color__bk .title--jp {
  color: #000;
}

.p--foods--banner-title .title--en {
  font-family: var(--font-main);
  font-size: 4.0rem;
  letter-spacing: 0.06em;
  color: #FFF;
  font-weight: 400;
  text-align: center;
  margin: 0 0 30px;
  line-height: 1.0;
}

.p--foods--banner-title .title--suben {
  font-family: var(--font-main);
  font-size: 2.4rem;
  letter-spacing: 0.06em;
  color: #FFF;
  font-weight: 400;
  text-align: center;
  margin: 0 0 10px;
  line-height: 1.0;
}

.p--foods--banner-title .title--jp {
  font-size: 2.0rem;
  letter-spacing: 0.06em;
  color: #FFF;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.2em;
}

.p--foods__index {
  background-image: url(assets/images/pages/foods/party__menu__bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin: 0 0 75px;
}

.p--foods__index .p--foods--room-lead {
  color: #FFF;
}

.p--foods__index .p--foods--room-title {
  border-bottom: 1px solid #FFF;
  border-top: 1px solid #FFF;
  color: #FFF;
}

.p--foods__index .p--foods--room-caution {
  color: #FFF;
}

.p--foods__index .p--foods--room-box-text {
  color: #FFF;
}

.p--foods__hub {
  margin: 125px 0 0;
  padding: 0 !important;
}

.p--foods__hub .p--foods--banner-title .title--en {
  color: #000;
}

.p--foods__hub .p--foods--banner-title .title--jp {
  color: #000;
}

.p--foods__hub .p--foods--room-caution-list > li {
  color: #000;
}

.p--foods--reserve {
  max-width: 1200px;
  background-color: #F0F0F0;
  margin: 50px auto 75px;
}

.p--foods--reserve__inner {
  padding: 50px;
}

.p--foods--reserve-primary {
  max-width: 900px;
  margin: 0 auto 10px;
}

.p--foods--reserve-primary-title {
  font-weight: 400;
  color: var(--sub-color);
  font-family: var(--font-serif);
  font-size: 2.7rem;
  margin: 0 0 30px;
  text-align: center;
}

.p--foods--reserve-primary-list {
  padding: 0 0 0 20px;
}

.p--foods--reserve-primary-list > li {
  margin: 0 0 20px;
  padding: 0 0 0 10px;
  font-size: 1.6rem;
  line-height: 1.5;
}

.p--foods--reserve-secondry {
  background-color: #FFF;
  max-width: 1000px;
  margin: 0 auto;
}

.p--foods--reserve-secondry__inner {
  padding: 50px;
}

.p--menu-bottominfo {
  max-width: 1200px;
  margin: 0 auto 75px;
}

.p--menu-bottominfo__inner {
  padding: 0 50px;
}

.p--menu-bottominfo-text {
  text-align: center;
  line-height: 1.5;
  font-size: 1.6rem;
}

.p--menu-bottominfo .p--foods-meta-button__wrap {
  margin: 20px 0 0;
}

.p--menu-bottominfo-box {
  margin: 0 0 75px;
}

.p--menu-bottominfo-box:last-child {
  margin: 0;
}

.p--foods--room {
  padding: 60px 0 75px;
}

.p--foods--room-lead {
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  margin: 0 0 15px;
}

.p--foods--room-title {
  max-width: 900px;
  border-bottom: 1px solid #707070;
  border-top: 1px solid #707070;
  padding: 20px 0;
  margin: 0 auto 15px;
  text-align: center;
  font-size: 2.8rem;
  color: var(--sub-color);
  font-weight: 700;
  letter-spacing: 0.1em;
}

.p--foods--room-caution {
  text-align: center;
  font-size: 1.0rem;
  letter-spacing: 0.1em;
}

.p--foods--room-caution-list {
  margin: 35px 0 0;
  text-align: center;
}

.p--foods--room-caution-list > li {
  font-size: 1.2rem;
  margin: 0 0 10px;
  color: #FFF;
}

.p--foods--room-box {
  position: relative;
  z-index: 10;
  margin: 40px 0 0;
}

.p--foods--room-box .slick-slide {
  padding: 0;
  transform: scale(1);
  opacity: 1.0;
  transition: all 0.5s ease;
  min-height: auto;
  margin: 0 40px;
}

.p--foods--room-box .slick-slide img {
  width: 100%;
  height: auto;
  display: block;
}

.p--foods--room-box .slick-slide .p--pr-box-content {
  display: block;
}

.p--foods--room-box .slick-center {
  transform: scale(1);
  opacity: 1;
  z-index: 2;
}

.p--foods--room-box .slick-center img {
  width: 100%;
  height: auto;
  display: block;
}

.p--foods--room-box .slick-center .p--pr-box-content {
  display: block;
}

.p--foods--room-box .slick-prev, .p--foods--room-box .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 10.5vw;
  display: block;
  width: 14.65px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  z-index: 20;
}

.p--foods--room-box .slick-prev:hover, .p--foods--room-box .slick-next:hover {
  opacity: 0.65;
}

.p--foods--room-box .slick-prev::before, .p--foods--room-box .slick-next::before {
  font-size: 0;
  line-height: 0;
}

.p--foods--room-box .slick-prev {
  background-image: url(assets/images/common/arrow--left__bk.svg);
  left: 28.0%;
}

.p--foods--room-box .slick-next {
  background-image: url(assets/images/common/arrow--right__bk.svg);
  right: 28.0%;
}

.p--foods--room-box .slick-dots > li.slick-active > button {
  background-color: #000;
}

.p--foods--room-box-text {
  font-size: 1.8rem;
  color: #000;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.p--foods--room-box-content {
  padding: 20px 0 0;
}

@media screen and (max-width: 768px) {
  .food__bg-banner {
    bottom: calc(20 / 390 * 100vw);
    left: calc(20 / 390 * 100vw);
    width: calc(120 / 390 * 100vw);
    height: calc(120 / 390 * 100vw);
  }
  .p--foods-main__wrap {
    padding: calc(50 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
  .p--foods-main {
    max-width: initial;
  }
  .p--foods-main__inner {
    padding: calc(20 / 390 * 100vw);
    display: block;
  }
  .p--foods-main-photo {
    width: auto;
  }
  .p--foods-main-photo img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .p--foods-main-content {
    width: auto;
  }
  .p--foods-main-content__inner {
    padding: calc(20 / 390 * 100vw) 0 0;
  }
  .p--foods-main-title {
    font-size: calc(25 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--foods-main-title br {
    display: none;
  }
  .p--foods-main-sub-title {
    padding: calc(10 / 390 * 100vw) 0;
    margin: 0 0 calc(15 / 390 * 100vw);
    font-size: calc(20 / 390 * 100vw);
  }
  .p--foods-main-text {
    line-height: 1.66667;
    font-size: calc(12 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--foods-main-text br {
    display: none;
  }
  .p--foods-main .cmn--button01 {
    margin: 0 auto;
  }
  .p--foods-scrollinfinity {
    margin: 0 0 calc(50 / 390 * 100vw);
  }
  .p--foods-scrollinfinity-list > li {
    max-width: calc(200 / 390 * 100vw);
    margin: 0 calc(5 / 390 * 100vw);
  }
  .p--foods-scrollinfinity-list > li img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .scroll-infinity__list li {
    margin-right: calc(5 / 390 * 100vw);
  }
  .p--foods-menu {
    padding: calc(10 / 390 * 100vw);
  }
  .p--foods-menu__wrap {
    padding: 0 calc(20 / 390 * 100vw);
    margin: 0 0 calc(50 / 390 * 100vw);
  }
  .p--foods-menu__inner {
    max-width: initial;
  }
  .p--foods-menu__cinner {
    padding: calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) 0;
  }
  .p--foods-menu-title {
    margin: 0 auto calc(15 / 390 * 100vw);
    font-size: calc(20 / 390 * 100vw);
  }
  .p--foods-menu-title::before, .p--foods-menu-title::after {
    content: '';
    height: calc(7 / 390 * 100vw);
  }
  .p--foods-menu-title::before {
    margin-right: calc(20 / 390 * 100vw);
  }
  .p--foods-menu-title::after {
    margin-left: calc(20 / 390 * 100vw);
  }
  .p--foods-menu-list {
    display: flex;
    flex-wrap: wrap;
  }
  .p--foods-menu-list.one--item {
    display: flex;
    justify-content: center;
  }
  .p--foods-menu-list.one--item > li {
    margin: 0 0 calc(5 / 390 * 100vw);
    width: calc(200 / 390 * 100vw);
  }
  .p--foods-menu-list > li {
    width: calc(150 / 390 * 100vw);
    margin: 0 calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) 0;
  }
  .p--foods-menu-list > li:nth-child(5n) {
    margin: 0 calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) 0;
  }
  .p--foods-menu-list > li:nth-child(2n) {
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--foods-menu-list > li a {
    padding: calc(5 / 390 * 100vw);
    -webkit-transition: all 0.25s ease;
    -moz-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all  0.25s ease;
    font-size: calc(12 / 390 * 100vw);
    background-size: calc(7.67 / 390 * 100vw) calc(5.58 / 390 * 100vw);
    background-position: center right calc(5 / 390 * 100vw);
  }
  .p--foods-menu-list > li a:link {
    text-decoration: none;
    color: #FFF;
  }
  .p--foods-menu-list > li a:visited {
    text-decoration: none;
    color: #FFF;
  }
  .p--foods-menu-list > li a:hover {
    text-decoration: none;
    color: #FFF;
    opacity: 0.45;
  }
  .p--foods--content {
    margin: 0 0 calc(50 / 390 * 100vw);
    padding: calc(30 / 390 * 100vw) 0 calc(40 / 390 * 100vw);
  }
  .p--foods--content::before, .p--foods--content::after {
    display: none;
  }
  .p--foods--content::before {
    left: 0;
  }
  .p--foods--content::after {
    right: 0;
  }
  .p--foods--content-title {
    margin: 0 auto calc(20 / 390 * 100vw);
    font-size: calc(22.5 / 390 * 100vw);
    padding: 0 calc(20 / 390 * 100vw);
  }
  .p--foods--content-title::before, .p--foods--content-title::after {
    height: calc(5 / 390 * 100vw);
  }
  .p--foods--content-title::before {
    margin-right: calc(10 / 390 * 100vw);
  }
  .p--foods--content-title::after {
    margin-left: calc(10 / 390 * 100vw);
  }
  .p--foods--content-sub-title {
    font-size: calc(16 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--foods-box {
    margin: calc(20 / 390 * 100vw) 0 0;
  }
  .p--foods-box .price--text {
    font-size: calc(12 / 390 * 100vw);
  }
  .p--foods-box-content {
    margin: calc(30 / 390 * 100vw) 0 0;
  }
  .p--foods-box-main-title {
    font-size: calc(16 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--foods-box .sub--text {
    font-size: calc(12 / 390 * 100vw);
    margin: 0 0 calc(5 / 390 * 100vw);
  }
  .p--foods-box-main-text {
    margin: 0 0 calc(20 / 390 * 100vw);
    font-size: calc(12 / 390 * 100vw);
  }
  .p--foods-box .slick-dots {
    bottom: calc(-10 / 390 * 100vw);
  }
  .p--foods-box .foods-slick-dots {
    margin: calc(10 / 390 * 100vw) 0 calc(20 / 390 * 100vw);
  }
  .p--foods-box .slick-prev, .p--foods-box .slick-next {
    top: calc(110 / 390 * 100vw);
    width: calc(14.65 / 390 * 100vw);
    height: calc(20 / 390 * 100vw);
  }
  .p--foods-box .slick-prev {
    left: 5%;
  }
  .p--foods-box .slick-next {
    right: 5%;
  }
  .p--foods-meta {
    max-width: initial;
    padding: 0 calc(20 / 390 * 100vw);
    margin: 0 auto;
  }
  .p--foods-meta-text {
    margin: 0 0 calc(20 / 390 * 100vw);
    text-align: center;
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.35;
  }
  .p--foods-meta-text .meta-arrows {
    padding: 0 calc(10 / 390 * 100vw) 0 0;
    background-image: url(assets/images/common/arrow--right__bk.svg);
    background-size: calc(8 / 390 * 100vw) calc(11.37 / 390 * 100vw);
    margin-right: calc(5 / 390 * 100vw);
  }
  .p--foods-meta-button__wrap {
    margin: calc(20 / 390 * 100vw) 0 0;
  }
  .p--foods-meta-line {
    margin: calc(30 / 390 * 100vw) auto 0;
    height: calc(7 / 390 * 100vw);
    width: auto;
    background-size: cover;
  }
  .p--foods-sc {
    max-width: initial;
    margin: calc(20 / 390 * 100vw) auto 0;
  }
  .p--foods-sc__inner {
    padding: calc(20 / 390 * 100vw);
  }
  .p--foods-sc-title {
    margin: 0 0 calc(20 / 390 * 100vw);
    padding: calc(15 / 390 * 100vw) 0;
  }
  .p--foods-sc-title:before {
    content: "";
    width: calc(34.5 / 390 * 100vw);
    height: calc(33.5 / 390 * 100vw);
    top: calc(5 / 390 * 100vw);
    left: calc(40 / 390 * 100vw);
  }
  .p--foods-sc-title .title__upper {
    font-size: calc(16 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--foods-sc-title .title__upper em {
    padding: 0 0 0 calc(50 / 390 * 100vw);
  }
  .p--foods-sc-title .title__upper i {
    display: block;
    width: calc(65 / 390 * 100vw);
    height: calc(14 / 390 * 100vw);
    margin-left: calc(10 / 390 * 100vw);
  }
  .p--foods-sc-title .title__under {
    font-size: calc(16 / 390 * 100vw);
  }
  .p--foods-sc-text {
    font-size: calc(13 / 390 * 100vw);
    text-align: left;
    line-height: 1.53846;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--foods-sc__cols h4 {
    font-size: calc(12 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--foods-sc__cols p {
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.66667;
  }
  .p--foods-sc__cols-left {
    padding: 0 calc(10 / 390 * 100vw) 0 0;
  }
  .p--foods-sc__cols-right {
    padding: 0 0 0 calc(10 / 390 * 100vw);
  }
  .p--foods--banner {
    min-height: calc(175 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--foods--banner-title {
    margin: 0 0 calc(15 / 390 * 100vw);
  }
  .p--foods--banner-title .title--en {
    font-size: calc(24 / 390 * 100vw);
    margin: 0 0 calc(15 / 390 * 100vw);
  }
  .p--foods--banner-title .title--suben {
    font-size: calc(16 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--foods--banner-title .title--jp {
    font-size: calc(14 / 390 * 100vw);
  }
  .p--foods__index {
    margin: 0 0 calc(35 / 390 * 100vw);
  }
  .p--foods__hub {
    margin: calc(75 / 390 * 100vw) 0 0;
  }
  .p--foods--reserve {
    margin: calc(50 / 390 * 100vw) auto calc(50 / 390 * 100vw);
  }
  .p--foods--reserve__inner {
    padding: calc(20 / 390 * 100vw);
  }
  .p--foods--reserve-primary {
    margin: 0 auto calc(10 / 390 * 100vw);
  }
  .p--foods--reserve-primary-title {
    font-size: calc(20 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--foods--reserve-primary-list {
    padding: 0 0 0 calc(20 / 390 * 100vw);
    margin: 0 0 calc(30 / 390 * 100vw);
  }
  .p--foods--reserve-primary-list > li {
    margin: 0 0 calc(10 / 390 * 100vw);
    padding: 0 0 0 calc(10 / 390 * 100vw);
    font-size: calc(13 / 390 * 100vw);
  }
  .p--foods--reserve-secondry__inner {
    padding: calc(20 / 390 * 100vw);
  }
  .p--menu-bottominfo {
    max-width: initial;
    margin: 0 auto calc(50 / 390 * 100vw);
  }
  .p--menu-bottominfo__inner {
    padding: 0 calc(20 / 390 * 100vw);
  }
  .p--menu-bottominfo-text {
    font-size: calc(13 / 390 * 100vw);
    text-align: left;
  }
  .p--menu-bottominfo-text br {
    display: none;
  }
  .p--menu-bottominfo .p--foods-meta-button__wrap {
    margin: calc(20 / 390 * 100vw) 0 0;
  }
  .p--menu-bottominfo .p--foods-meta-button__wrap .cmn--button01.widthfree--button {
    width: calc(200 / 390 * 100vw) !important;
  }
  .p--menu-bottominfo-box {
    margin: 0 0 calc(25 / 390 * 100vw);
  }
  .p--menu-bottominfo-box:last-child {
    margin: 0;
  }
  .p--foods--room {
    padding: calc(20 / 390 * 100vw) 0;
  }
  .p--foods--room-lead {
    font-size: calc(14 / 390 * 100vw);
    letter-spacing: 0.05em;
    margin: 0 0 calc(15 / 390 * 100vw);
  }
  .p--foods--room-title {
    max-width: calc(350 / 390 * 100vw);
    padding: calc(15 / 390 * 100vw) 0;
    margin: 0 auto calc(15 / 390 * 100vw);
    font-size: calc(18 / 390 * 100vw);
    color: var(--sub-color);
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.25;
  }
  .p--foods--room-caution {
    font-size: calc(10 / 390 * 100vw);
  }
  .p--foods--room-caution-list {
    margin: calc(30 / 390 * 100vw) 0 0;
    text-align: left;
    padding: 0 calc(20 / 390 * 100vw);
  }
  .p--foods--room-caution-list > li {
    font-size: calc(12 / 390 * 100vw);
    margin: 0 0 calc(8 / 390 * 100vw);
    line-height: 1.35;
  }
  .p--foods--room-box {
    margin: calc(20 / 390 * 100vw) 0 0;
  }
  .p--foods--room-box .slick-slide {
    padding: 0;
    margin: 0 calc(15 / 390 * 100vw);
  }
  .p--foods--room-box .slick-prev, .p--foods--room-box .slick-next {
    top: calc(80 / 390 * 100vw);
    width: calc(14.65 / 390 * 100vw);
    height: calc(20 / 390 * 100vw);
  }
  .p--foods--room-box .slick-prev {
    background-image: url(assets/images/common/arrow--left__bk.svg);
    left: 7.5%;
  }
  .p--foods--room-box .slick-next {
    background-image: url(assets/images/common/arrow--right__bk.svg);
    right: 7.5%;
  }
  .p--foods--room-box-text {
    font-size: calc(13 / 390 * 100vw);
  }
  .p--foods--room-box-content {
    padding: calc(15 / 390 * 100vw) 0 0;
  }
}

/*
    Pages [Menu]
--------------------------------------------------------------*/
.p--menu__wrapper {
  margin: 125px 83px 75px;
}

.p--menu__content {
  max-width: 1200px;
  margin: 0 auto;
  background-image: url(assets/images/pages/foods/bg__01.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.p--menu__content__inner {
  padding: 50px;
}

.p--menu-title-sub {
  font-size: 2.0rem;
  letter-spacing: 0.2em;
  font-weight: 700;
  text-align: center;
  margin: 0 0 30px;
}

.p--menu-lead {
  font-size: 2.0rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
  margin: 0 0 45px;
  text-align: center;
}

.p--menu-party-cols {
  display: flex;
  justify-content: space-between;
  max-width: 1000px;
  margin: 0 auto 50px;
}

.p--menu-party-cols .p--menu-box__wrapper {
  width: 45.7%;
}

.p--menu-box__wrapper {
  background-color: #FFF;
  position: relative;
  padding: 8px;
}

.p--menu-box__wrapper::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 8px;
  right: 8px;
  bottom: 8px;
  border: 1px solid #707070;
  background-color: #FFF;
  z-index: 0;
  pointer-events: none;
}

.p--menu-box__wrapper.drink__wrapper {
  max-width: 1000px;
  margin: 0 auto 50px;
}

.p--menu-box__wrapper.breakfast__wrapper {
  max-width: 800px;
  margin: 0 auto 50px;
}

.p--menu-box__content {
  position: relative;
  z-index: 1;
  padding: 40px 10px;
}

.p--menu-box__content.drink__inner {
  padding: 50px 50px;
}

.p--menu-box__content.breakfast__inner {
  padding: 50px 124px;
}

.p--menu-ctitle__wrapper {
  text-align: center;
  margin: 0 0 20px;
}

.p--menu-ctitle {
  padding: 8px 15px;
  background-color: var(--sub-color);
  display: inline-block;
  font-size: 2.0rem;
  letter-spacing: 0.1em;
  color: #FFF;
  font-weight: 700;
}

.p--menu-ctitle-l4 {
  margin: 0 0 10px;
  padding: 5px 10px;
  display: inline-block;
  background-color: #000000;
  color: #FFF;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
}

.p--menu-ctitle-l5 {
  margin: 0 0 15px;
  font-size: 1.6rem;
}

.p--menu-ctext {
  margin: 0 0 1.5em;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  letter-spacing: normal;
}

.p--menu-ctext-light {
  font-weight: 400;
  font-size: 1.6rem;
  margin: 0 0 1.5em;
  line-height: 1.5;
}

.p--menu-ctext-light.center-text {
  text-align: center;
}

.p--menu-ctext-left {
  margin: 0 0 1.5em;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: left;
  letter-spacing: normal;
}

.p--menu-ctext-left:last-child {
  margin: 0;
}

.p--menu .menu-price {
  color: var(--sub-color);
}

.p--menu-caution {
  text-align: center;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.83333;
}

.p--menu .section--colums {
  display: flex;
  justify-content: space-between;
}

.p--menu .section--colums .drink--section__content {
  width: 47.22222%;
}

.p--menu .section--flex__440half {
  display: flex;
  justify-content: space-between;
}

.p--menu .section--flex__440half .drink--section__content {
  width: 48.88889%;
}

.p--menu .drink--section {
  margin: 0 0 50px;
}

.p--menu .drink--section .p--menu-ctitle {
  display: block;
  font-size: 1.8rem;
}

.p--menu .drink--csection {
  padding: 0 0 30px;
  margin: 0 0 30px;
  border-bottom: 1px solid #000;
}

.p--menu .breakfast--section {
  margin: 0 0 50px;
}

.p--menu .breakfast--section .p--menu-ctitle {
  display: block;
  font-size: 1.8rem;
}

@media screen and (max-width: 768px) {
  .p--menu .p--foods--content-title {
    padding: 0;
  }
  .p--menu__wrapper {
    margin: calc(75 / 390 * 100vw) calc(20 / 390 * 100vw) calc(50 / 390 * 100vw);
  }
  .p--menu__content {
    max-width: initial;
  }
  .p--menu__content__inner {
    padding: calc(20 / 390 * 100vw);
  }
  .p--menu-title-sub {
    font-size: calc(16 / 390 * 100vw);
    margin: 0 0 calc(15 / 390 * 100vw);
  }
  .p--menu-lead {
    font-size: calc(16 / 390 * 100vw);
    margin: 0 0 calc(30 / 390 * 100vw);
    text-align: left;
  }
  .p--menu-lead br {
    display: none;
  }
  .p--menu-party-cols {
    display: block;
    max-width: initial;
    margin: 0 auto calc(30 / 390 * 100vw);
  }
  .p--menu-party-cols .p--menu-box__wrapper {
    width: auto;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--menu-box__wrapper {
    padding: calc(5 / 390 * 100vw);
  }
  .p--menu-box__wrapper::before {
    content: "";
    position: absolute;
    top: calc(5 / 390 * 100vw);
    left: calc(5 / 390 * 100vw);
    right: calc(5 / 390 * 100vw);
    bottom: calc(5 / 390 * 100vw);
  }
  .p--menu-box__wrapper.drink__wrapper {
    max-width: initial;
    margin: 0 auto calc(30 / 390 * 100vw);
  }
  .p--menu-box__wrapper.breakfast__wrapper {
    max-width: initial;
    margin: 0 auto calc(30 / 390 * 100vw);
  }
  .p--menu-box__content {
    padding: calc(15 / 390 * 100vw);
  }
  .p--menu-box__content.drink__inner {
    padding: calc(15 / 390 * 100vw);
  }
  .p--menu-box__content.breakfast__inner {
    padding: calc(15 / 390 * 100vw);
  }
  .p--menu-ctitle__wrapper {
    text-align: center;
    margin: 0 0 calc(15 / 390 * 100vw);
  }
  .p--menu-ctitle {
    padding: calc(5 / 390 * 100vw) calc(10 / 390 * 100vw);
    font-size: calc(15 / 390 * 100vw);
    display: block;
  }
  .p--menu-ctitle-l4 {
    margin: 0 0 calc(10 / 390 * 100vw);
    padding: calc(5 / 390 * 100vw) calc(10 / 390 * 100vw);
    font-size: calc(13 / 390 * 100vw);
  }
  .p--menu-ctitle-l5 {
    margin: 0 0 calc(10 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
  }
  .p--menu-ctext {
    font-size: calc(13 / 390 * 100vw);
    line-height: 1.53846;
    text-align: left;
  }
  .p--menu-ctext-light {
    font-size: calc(13 / 390 * 100vw);
    line-height: 1.53846;
  }
  .p--menu-ctext-light.center-text {
    text-align: left;
  }
  .p--menu-ctext-light.center-text br {
    display: none;
  }
  .p--menu-ctext-left {
    font-size: calc(13 / 390 * 100vw);
    line-height: 1.53846;
  }
  .p--menu-caution {
    font-size: calc(10 / 390 * 100vw);
    line-height: 1.8;
    text-align: left;
  }
  .p--menu .section--colums {
    display: block;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--menu .section--colums .drink--section__content {
    width: auto;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--menu .section--flex__440half {
    display: block;
  }
  .p--menu .section--flex__440half .drink--section__content {
    width: auto;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--menu .drink--section {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--menu .drink--section .p--menu-ctitle {
    font-size: calc(15 / 390 * 100vw);
  }
  .p--menu .drink--csection {
    padding: 0 0 calc(20 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--menu .breakfast--section {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--menu .breakfast--section .p--menu-ctitle {
    display: block;
    font-size: calc(15 / 390 * 100vw);
  }
}

/*
    Pages [NIDOM GENGHISKHAN & Hokkaido wine]
--------------------------------------------------------------*/
.genghiskhan__bg {
  background-image: url(assets/images/pages/foods/genghiskhan/main.jpg);
}

.wine__bg {
  background-image: url(assets/images/pages/foods/wine/main.jpg);
}

.genghiskhan__hero-logo {
  width: 200px;
  display: block;
  margin: 0 auto 20px;
}

.genghiskhan__hero-logo img {
  width: 100%;
  vertical-align: bottom;
}

.genghiskhan__hero-title {
  text-align: center;
  font-size: 5.3rem;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.06em;
  color: #FFF;
  margin: 0 0 26px;
}

.genghiskhan__hero-sub-title {
  text-align: center;
  font-size: 2.6rem;
  letter-spacing: 0.05em;
  color: #FFF;
  font-weight: 700;
}

.wine__hero-title-suben {
  text-align: center;
  font-size: 3.1rem;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.06em;
  color: #FFF;
  margin: 0 0 13px;
}

.wine__hero-title {
  text-align: center;
  font-size: 5.3rem;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.06em;
  color: #FFF;
  margin: 0 0 26px;
}

.wine__hero-sub-title {
  text-align: center;
  font-size: 2.6rem;
  letter-spacing: 0.05em;
  color: #FFF;
  font-weight: 700;
  line-height: 1.2;
}

.p--gw__wrapper {
  padding: 100px 24px 150px;
}

.p--gw__content {
  max-width: 1000px;
  margin: 0 auto;
}

.p--gw-lead {
  font-size: 2.0rem;
  letter-spacing: 0.2em;
  line-height: 1.8;
  font-family: var(--font-serif);
  text-align: center;
  margin: 0 0 100px;
}

.p--gw-wine-copy {
  margin: 0 0 20px;
  font-size: 3.1rem;
  letter-spacing: 0.2em;
  font-weight: 600;
  line-height: 1.16129;
  font-family: var(--font-serif);
  text-align: center;
}

.p--gw-wine-lead {
  font-size: 2.0rem;
  letter-spacing: 0.2em;
  line-height: 1.8;
  font-family: var(--font-serif);
  text-align: center;
  margin: 0 0 30px;
}

.p--gw-wine-figure {
  max-width: 440px;
  margin: 0 auto 60px;
}

.p--gw-wine-figure img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

.p--gw__section-gray {
  background-color: #F0F0F0;
  margin: 0 0 50px;
}

.p--gw__section-gray .p--foods-meta-button__wrap {
  margin: 10px 0 30px;
}

.p--gw__section-gray .p--foods-meta-button__wrap.button__bottom {
  margin: 30px 0 0;
}

.p--gw__section-gray__content {
  padding: 70px 50px;
}

.p--gw__section-gray-copy {
  font-size: 2.0rem;
  letter-spacing: 0.2em;
  line-height: 1.5;
  font-family: var(--font-serif);
  text-align: center;
  margin: 0 0 18px;
}

.p--gw__section-gray-copy.long-bottom {
  margin-bottom: 70px;
}

.p--gw__section-gray-title {
  display: block;
  font-weight: 400;
  font-size: 3.1rem;
  letter-spacing: 0.2em;
  line-height: 1.16129;
  font-family: var(--font-serif);
  text-align: center;
  margin: 0 0 70px;
}

.p--gw__section-gray-title.tight-bottom {
  margin-bottom: 25px;
}

.p--gw__section-gray-title-sub {
  display: block;
  background-color: #000;
  padding: 14px 0;
  font-size: 2.4rem;
  letter-spacing: 0.2em;
  line-height: 1.5;
  font-family: var(--font-serif);
  text-align: center;
  color: #FFF;
  margin: 0 0 40px;
  font-weight: 400;
}

.p--gw__section-gray-title-sub.topic--title {
  background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5.6%, #000 5.6%);
  margin: 0;
  position: relative;
}

.p--gw__section-gray-title-sub.topic--title i {
  display: block;
  position: absolute;
  width: 135px;
  height: 135px;
  top: -45px;
  left: -10px;
}

.p--gw__section-gray-title-sub.topic--title i img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

.p--gw__section-gray-halfcols {
  display: flex;
  gap: 10px;
  margin: 0 0 70px;
}

.p--gw__section-gray-halfcols.tight-bottom {
  margin: 0;
}

.p--gw__section-gray-halfcols02 {
  display: flex;
  justify-content: space-between;
  margin: 0 0 35px;
}

.p--gw__section-gray-halfcols02 .p--gw__section-gray-halfcols__content {
  width: calc(420 / 900 * 100%);
  padding: 60px 0 0;
}

.p--gw__section-gray-halfcols02 .p--gw__section-gray-halfcols__images {
  width: calc(425 / 900 * 100%);
}

.p--gw__section-gray-halfcols02 .p--gw__section-gray-halfcols__images img {
  width: 100%;
  vertical-align: bottom;
}

.p--gw__section-gray-halfcols02 .p--gw__section-gray-halfcols__images.under-images {
  padding: 60px 0 0;
}

.p--gw__section-gray-halfcols__content {
  display: flex;
  flex-direction: column;
  width: calc(450 / 900 * 100%);
}

.p--gw__section-gray-halfcols__content > h4 {
  font-size: 1.2rem;
  color: var(--sub-color);
  font-weight: 700;
  line-height: 1.83333;
}

.p--gw__section-gray-halfcols__content p {
  font-size: 1.2rem;
  line-height: 1.83333;
  margin: 0 0 1.5em;
}

.p--gw__section-gray-images img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

.p--gw__section-gray-images.under-images {
  margin-top: auto;
}

.p--gw__section-gray-images.normal-bottom {
  margin: 0 0 70px;
}

.p--gw__section-gray__profile {
  background-color: #FFF;
  margin: 0 0 25px;
}

.p--gw__section-gray__profile__inner {
  padding: 25px;
  display: flex;
  justify-content: space-between;
  gap: calc(24 / 395 * 100%);
}

.p--gw__section-gray__profile-photo {
  width: calc(130 / 395 * 100%);
}

.p--gw__section-gray__profile-photo img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
  margin: 0 0 15px;
}

.p--gw__section-gray__profile-photo .profile--post {
  display: block;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.33333;
  font-weight: 700;
  color: var(--sub-color);
}

.p--gw__section-gray__profile-photo .profile--name {
  display: block;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.83333;
  font-weight: 700;
}

.p--gw__section-gray__profile-photo .profile--name em {
  font-style: normal;
  font-size: 1.4rem;
}

.p--gw__section-gray__profile-content {
  width: calc(240 / 395 * 100%);
}

.p--gw__section-gray__profile-copy {
  font-size: 1.4rem;
  line-height: 1.57143;
  font-weight: 600;
  font-family: var(--font-serif);
  color: #000;
  margin: 0 0 14px;
  letter-spacing: 0.1em;
}

.p--gw__section-gray-lead {
  font-size: 1.4rem;
  line-height: 1.71429;
  font-weight: 600;
  font-family: var(--font-serif);
  color: #000;
  margin: 0 0 14px;
  letter-spacing: 0.1em;
  text-align: center;
  margin: 0 0 60px;
}

.p--gw__section-gray__figure01 {
  position: relative;
}

.p--gw__section-gray__circle-label {
  position: absolute;
  top: -45px;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000;
  width: 140px;
  height: 140px;
  border-radius: 50%;
}

.p--gw__section-gray__circle-label span {
  color: #FFF;
  font-size: 1.6rem;
  line-height: 1.4375;
  font-weight: 400;
  font-family: var(--font-serif);
  text-align: center;
  display: block;
}

.p--gw__section-gray-ah-sub-title {
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  line-height: 1.5625;
  font-weight: 400;
  font-family: var(--font-serif);
  display: block;
  margin: 0 0 5px;
}

.p--gw__section-gray-ah-title {
  font-size: 2.4rem;
  letter-spacing: 0.2em;
  font-weight: 600;
  font-family: var(--font-serif);
  line-height: 1.5625;
  display: block;
  margin: 0 0 10px;
}

.p--gw .ah-flex--box {
  display: flex;
  flex-direction: unset;
}

.p--gw .ah-flex--box-images {
  margin-right: 30px;
}

.p--gw .ah-flex--box-content {
  padding: 20px 0 0;
}

.p--gw .ah-flex--box-content > p {
  max-width: 310px;
}

.p--gw .ah-flex--box-title {
  margin: 0 0 15px;
  font-size: 2.4rem;
  letter-spacing: 0.2em;
  font-weight: 600;
  font-family: var(--font-serif);
  display: block;
}

.p--gw .ah-flex--box-title rt {
  padding: 0 0 5px;
}

.p--gw .ah-flex--box-title-sub {
  font-weight: 700;
  font-size: 1.4rem;
  margin: 0 0 10px;
  line-height: 1.57143;
}

.p--gw-menu-title {
  margin: 45px 0 45px;
  text-align: center;
}

.p--gw-menu-title span {
  display: block;
}

.p--gw-menu-title-en {
  margin: 0 0 12px;
  font-family: var(--font-main);
  letter-spacing: 0.1em;
  font-weight: 400;
  font-size: 1.4rem;
}

.p--gw-menu-title-jp {
  font-family: var(--font-serif);
  letter-spacing: 0.1em;
  font-weight: 400;
  font-size: 2.4rem;
}

.p--gw__section-cmenubox {
  border-bottom: 1px solid #000;
}

.p--gw-menulist {
  max-width: 900px;
  margin: 30px auto 0;
  display: flex;
  flex-wrap: wrap;
}

.p--gw-menulist > li {
  width: calc(265 / 900 * 100%);
  margin: 0 calc(52.5 / 900 * 100%) 45px 0;
}

.p--gw-menulist > li:nth-child(3n) {
  margin: 0 0 45px 0;
}

.p--gw-menulist-photo {
  position: relative;
}

.p--gw-menulist-title {
  line-height: 1.5;
  font-size: 1.6rem;
  font-weight: 700;
}

.p--gw-menulist-title em {
  font-style: normal;
  font-size: 1.2rem;
}

.p--gw-menulist-text {
  line-height: 1.78571;
  font-size: 1.4rem;
  margin: 1.0em 0 0;
}

.p--gw .price--title {
  color: var(--sub-color);
}

.p--gw-menulist__circle-label {
  width: 68px;
  height: 68px;
  position: absolute;
  top: -20px;
  left: -20px;
  background-color: #000;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FFF;
}

.p--gw-menulist__circle-label span {
  display: block;
  text-align: center;
  font-family: var(--font-serif);
  font-weight: 900;
  font-size: 0.8rem;
  letter-spacing: 0.1em;
}

.p--gw-menulist__circle-label span b {
  letter-spacing: 0.15em;
  font-size: 1.4rem;
  display: block;
  margin: 0 0 5px;
}

.p--gw__section {
  padding: 0 0 100px;
}

.p--gw__section .genghiskhan--button {
  width: 318px;
  margin: 15px auto 0;
}

.p--gw__section-pricebox {
  display: flex;
  justify-content: space-between;
  margin: 40px auto 0;
  max-width: 900px;
}

.p--gw__section-pricebox-list > li {
  margin: 0 0 20px;
}

.p--gw__section-pricebox-list {
  width: calc(265 / 900 * 100%);
}

.p--gw__section-pricebox-menubox {
  width: calc(265 / 900 * 100%);
  background-color: #F0F0F0;
}

.p--gw__section-pricebox-menubox__inner {
  padding: 30px 30px 13px;
}

.p--gw__section-menubox-photo {
  margin: 0 -17px -17px;
}

.p--gw__section-menubox-photo img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

.p--gw__section-menubox-text {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.625;
  margin: 0 0 1.0em;
}

.p--gw__section-menubox-caution {
  line-height: 1.5;
  font-size: 1.2rem;
  display: block;
  margin: 0 0 35px;
}

.p--gw__section-menudrink {
  max-width: 900px;
  margin: 0 auto 30px;
  display: flex;
  justify-content: space-between;
}

.p--gw__section-menudrink__content {
  width: calc(425 / 900 * 100%);
}

.p--gw__section-menudrink-define {
  margin: 0 0 2.0em;
}

.p--gw__section-menudrink-define dt {
  background-color: var(--sub-color);
  padding: 8.5px 10px;
  display: block;
  text-align: center;
  margin: 0 0 20px;
  font-weight: 700;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  color: #FFF;
}

.p--gw__section-menudrink-define dd {
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.5;
  margin: 0 0 1.5em;
}

.p--gw__section-menudrink-define dd:last-child {
  margin: 0;
}

.p--gw__section-caution-list {
  max-width: 900px;
  margin: 0 auto;
}

.p--gw__section-caution-list > li {
  font-size: 1.2rem;
  line-height: 1.5;
}

.p--gw__section-info-title {
  text-align: center;
  font-size: 2.0rem;
  font-weight: 700;
  margin: 0 0 20px;
  line-height: 1.2;
}

.p--gw__section-info-text {
  text-align: center;
  margin: 0 0 12px;
  font-size: 1.4rem;
  font-weight: 700;
}

.p--gw__section-info-text em {
  font-style: normal;
  color: var(--sub-color);
}

.p--gw__section-info-caution {
  display: block;
  text-align: center;
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 1.5;
}

.p--gw__section-info-box {
  margin: 25px auto 0;
  max-width: 700px;
  border: 5px solid var(--sub-color);
  background-color: #F0F0F0;
}

.p--gw__section-info-box__inner {
  padding: 20px 40px;
}

.p--gw__section-info-box-table th {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.42857;
  color: var(--sub-color);
  padding: 0 20px 5px 0;
}

.p--gw__section-info-box-table td {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.42857;
  padding: 0 20px 5px 0;
}

.p--gw__section-info-box-table td em {
  font-style: normal;
  font-weight: 400;
  font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
  .genghiskhan__hero-logo {
    width: calc(100 / 390 * 100vw);
    margin: 0 auto calc(10 / 390 * 100vw);
  }
  .genghiskhan__hero-logo img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .genghiskhan__hero-title {
    font-size: calc(24 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .genghiskhan__hero-sub-title {
    font-size: calc(14 / 390 * 100vw);
  }
  .wine__hero-title-suben {
    font-size: calc(14 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .wine__hero-title {
    font-size: calc(24 / 390 * 100vw);
    margin: 0 0 calc(15 / 390 * 100vw);
  }
  .wine__hero-sub-title {
    font-size: calc(14 / 390 * 100vw);
  }
  .p--gw__wrapper {
    padding: calc(50 / 390 * 100vw) calc(20 / 390 * 100vw) calc(50 / 390 * 100vw);
  }
  .p--gw__content {
    max-width: initial;
  }
  .p--gw-lead {
    font-size: calc(14 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--gw-wine-copy {
    margin: 0 0 calc(10 / 390 * 100vw);
    font-size: calc(24 / 390 * 100vw);
  }
  .p--gw-wine-lead {
    font-size: calc(14 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--gw-wine-figure {
    max-width: calc(200 / 390 * 100vw);
    margin: 0 auto calc(20 / 390 * 100vw);
  }
  .p--gw__section-gray {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--gw__section-gray .p--foods-meta-button__wrap {
    margin: calc(10 / 390 * 100vw) 0 calc(20 / 390 * 100vw);
  }
  .p--gw__section-gray__content {
    padding: calc(30 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
  .p--gw__section-gray-copy {
    font-size: calc(14 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--gw__section-gray-copy.long-bottom {
    margin-bottom: calc(40 / 390 * 100vw);
  }
  .p--gw__section-gray-title {
    font-size: calc(24 / 390 * 100vw);
    margin: 0 0 calc(30 / 390 * 100vw);
  }
  .p--gw__section-gray-title.tight-bottom {
    margin-bottom: calc(10 / 390 * 100vw);
  }
  .p--gw__section-gray-title-sub {
    padding: calc(10 / 390 * 100vw);
    font-size: calc(16 / 390 * 100vw);
    text-align: left;
    margin: 0 0 calc(15 / 390 * 100vw);
    font-weight: 400;
  }
  .p--gw__section-gray-title-sub.topic--title {
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5.6%, #000 5.6%);
    padding: calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) calc(60 / 390 * 100vw);
  }
  .p--gw__section-gray-title-sub.topic--title i {
    width: calc(80 / 390 * 100vw);
    height: calc(80 / 390 * 100vw);
    top: calc(-40 / 390 * 100vw);
    left: calc(-10 / 390 * 100vw);
  }
  .p--gw__section-gray-halfcols {
    display: block;
    gap: inherit;
    margin: 0 0 calc(40 / 390 * 100vw);
  }
  .p--gw__section-gray-halfcols.tight-bottom {
    margin: 0;
  }
  .p--gw__section-gray-halfcols02 {
    display: block;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--gw__section-gray-halfcols02 .p--gw__section-gray-halfcols__content {
    width: auto;
    padding: calc(30 / 390 * 100vw) 0 0;
  }
  .p--gw__section-gray-halfcols02 .p--gw__section-gray-halfcols__images {
    width: auto;
  }
  .p--gw__section-gray-halfcols02 .p--gw__section-gray-halfcols__images img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .p--gw__section-gray-halfcols02 .p--gw__section-gray-halfcols__images.under-images {
    padding: calc(0 / 390 * 100vw) 0 0;
  }
  .p--gw__section-gray-halfcols__content {
    display: block;
    flex-direction: inherit;
    width: auto;
  }
  .p--gw__section-gray-halfcols__content > h4 {
    font-size: calc(12 / 390 * 100vw);
  }
  .p--gw__section-gray-halfcols__content p {
    font-size: calc(12 / 390 * 100vw);
  }
  .p--gw__section-gray-images {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--gw__section-gray-images img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .p--gw__section-gray-images.under-images {
    margin-top: auto;
  }
  .p--gw__section-gray-images.normal-bottom {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--gw__section-gray__profile {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--gw__section-gray__profile__inner {
    padding: calc(20 / 390 * 100vw);
    gap: calc(10 / 390 * 100vw);
  }
  .p--gw__section-gray__profile-photo {
    width: calc(110 / 390 * 100vw);
  }
  .p--gw__section-gray__profile-photo .profile--post {
    font-size: calc(10 / 390 * 100vw);
  }
  .p--gw__section-gray__profile-photo .profile--name {
    font-size: calc(10 / 390 * 100vw);
  }
  .p--gw__section-gray__profile-photo .profile--name em {
    font-size: calc(12 / 390 * 100vw);
  }
  .p--gw__section-gray__profile-content {
    width: calc(180 / 390 * 100vw);
  }
  .p--gw__section-gray__profile-copy {
    font-size: calc(13 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--gw__section-gray-lead {
    font-size: calc(12 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
    margin: 0 0 calc(30 / 390 * 100vw);
    text-align: left;
  }
  .p--gw__section-gray__figure01 {
    position: relative;
  }
  .p--gw__section-gray__figure01 img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .p--gw__section-gray__circle-label {
    top: calc(-20 / 390 * 100vw);
    width: calc(60 / 390 * 100vw);
    height: calc(60 / 390 * 100vw);
    border-radius: 50%;
  }
  .p--gw__section-gray__circle-label span {
    color: #FFF;
    font-size: calc(7 / 390 * 100vw);
  }
  .p--gw__section-gray-ah-images {
    width: auto;
  }
  .p--gw__section-gray-ah-images img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .p--gw__section-gray-ah-sub-title {
    font-size: calc(16 / 390 * 100vw);
    letter-spacing: 0.02em;
    margin: 0 0 calc(5 / 390 * 100vw);
  }
  .p--gw__section-gray-ah-title {
    font-size: calc(20 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
    letter-spacing: normal;
  }
  .p--gw .ah-flex--box {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--gw .ah-flex--box-images {
    margin-right: calc(15 / 390 * 100vw);
    width: calc(60 / 390 * 100vw);
  }
  .p--gw .ah-flex--box-images img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .p--gw .ah-flex--box-content {
    padding: 0;
  }
  .p--gw .ah-flex--box-content > p {
    max-width: calc(300 / 390 * 100vw);
  }
  .p--gw .ah-flex--box-title {
    margin: 0 0 calc(5 / 390 * 100vw);
    font-size: calc(20 / 390 * 100vw);
  }
  .p--gw .ah-flex--box-title rt {
    padding: 0 0 calc(5 / 390 * 100vw);
  }
  .p--gw .ah-flex--box-title-sub {
    font-size: calc(14 / 390 * 100vw);
    margin: 0 0 calc(5 / 390 * 100vw);
  }
  .p--gw .p--foods--content-title {
    padding: 0;
  }
  .p--gw-menu-title {
    margin: calc(30 / 390 * 100vw) 0 calc(30 / 390 * 100vw);
  }
  .p--gw-menu-title-en {
    margin: 0 0 calc(10 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
  }
  .p--gw-menu-title-jp {
    font-family: var(--font-serif);
    letter-spacing: 0.05em;
    font-size: calc(20 / 390 * 100vw);
  }
  .p--gw-menulist {
    max-width: initial;
    margin: calc(20 / 390 * 100vw) auto 0;
    display: flex;
    flex-wrap: wrap;
  }
  .p--gw-menulist > li {
    width: calc(170 / 390 * 100vw);
    margin: 0 calc(10 / 390 * 100vw) calc(30 / 390 * 100vw) 0;
  }
  .p--gw-menulist > li:nth-child(3n) {
    margin: 0 calc(10 / 390 * 100vw) calc(30 / 390 * 100vw) 0;
  }
  .p--gw-menulist > li:nth-child(2n) {
    margin: 0 0 calc(30 / 390 * 100vw) 0;
  }
  .p--gw-menulist-photo {
    position: relative;
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--gw-menulist-photo img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .p--gw-menulist-title {
    font-size: calc(14 / 390 * 100vw);
  }
  .p--gw-menulist-title em {
    font-size: calc(10 / 390 * 100vw);
  }
  .p--gw-menulist-text {
    line-height: 1.66667;
    font-size: calc(12 / 390 * 100vw);
  }
  .p--gw-menulist__circle-label {
    width: calc(50 / 390 * 100vw);
    height: calc(50 / 390 * 100vw);
    top: calc(-15 / 390 * 100vw);
    left: calc(-15 / 390 * 100vw);
  }
  .p--gw-menulist__circle-label span {
    font-size: calc(6 / 390 * 100vw);
  }
  .p--gw-menulist__circle-label span b {
    font-size: calc(11 / 390 * 100vw);
    margin: 0 0 calc(5 / 390 * 100vw);
  }
  .p--gw__section {
    padding: 0 0 calc(50 / 390 * 100vw);
  }
  .p--gw__section .genghiskhan--button {
    width: calc(300 / 390 * 100vw);
    margin: calc(15 / 390 * 100vw) auto 0;
  }
  .p--gw__section-pricebox {
    display: block;
    margin: calc(30 / 390 * 100vw) auto 0;
    max-width: initial;
  }
  .p--gw__section-pricebox-list > li {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--gw__section-pricebox-list {
    width: auto;
  }
  .p--gw__section-pricebox-menubox {
    width: auto;
  }
  .p--gw__section-pricebox-menubox__inner {
    padding: calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) 13px;
  }
  .p--gw__section-menubox-photo {
    margin: 0;
  }
  .p--gw__section-menubox-photo img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
  }
  .p--gw__section-menubox-text {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.42857;
  }
  .p--gw__section-menubox-caution {
    line-height: 1.5;
    font-size: calc(11 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--gw__section-menudrink {
    max-width: initial;
    margin: 0 auto calc(20 / 390 * 100vw);
    display: block;
  }
  .p--gw__section-menudrink__content {
    width: auto;
  }
  .p--gw__section-menudrink-define {
    margin: 0 0 1.0em;
  }
  .p--gw__section-menudrink-define dt {
    padding: calc(10 / 390 * 100vw);
    margin: 0 0 calc(20 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
  }
  .p--gw__section-menudrink-define dd {
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.66667;
    margin: 0 0 1.0em;
  }
  .p--gw__section-menudrink-define dd:last-child {
    margin: 0;
  }
  .p--gw__section-caution-list {
    max-width: initial;
    margin: 0 auto;
  }
  .p--gw__section-caution-list > li {
    font-size: calc(11 / 390 * 100vw);
    line-height: 1.45455;
  }
  .p--gw__section-info-title {
    font-size: calc(16 / 390 * 100vw);
    margin: 0 0 calc(15 / 390 * 100vw);
  }
  .p--gw__section-info-text {
    text-align: left;
    margin: 0 0 calc(10 / 390 * 100vw);
    font-size: calc(12 / 390 * 100vw);
  }
  .p--gw__section-info-caution {
    text-align: left;
    font-size: calc(11 / 390 * 100vw);
    line-height: 1.45455;
  }
  .p--gw__section-info-box {
    margin: calc(20 / 390 * 100vw) auto 0;
    max-width: initial;
    border: calc(3 / 390 * 100vw) solid var(--sub-color);
  }
  .p--gw__section-info-box__inner {
    padding: calc(20 / 390 * 100vw);
  }
  .p--gw__section-info-box-table th {
    font-size: calc(12 / 390 * 100vw);
    padding: 0 calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) 0;
    width: 20%;
  }
  .p--gw__section-info-box-table td {
    font-size: calc(12 / 390 * 100vw);
    padding: 0 calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) 0;
  }
  .p--gw__section-info-box-table td em {
    font-size: calc(10 / 390 * 100vw);
  }
}

/*
    Pages [Information]
--------------------------------------------------------------*/
.p--info-nav {
  margin: 0 0 150px;
}

.p--info-nav-list {
  display: flex;
  justify-content: center;
  align-items: center;
}

.p--info-nav-list > li > a {
  color: #000;
  font-size: 1.7rem;
  font-family: var(--font-main);
  font-weight: 400;
  letter-spacing: 0.1em;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  line-height: 2.0rem;
}

.p--info-nav-list > li > a:link {
  text-decoration: none;
}

.p--info-nav-list > li > a:visited {
  text-decoration: none;
}

.p--info-nav-list > li > a:hover {
  text-decoration: none;
  opacity: 0.65;
}

.p--info-nav-list > li > a span {
  display: block;
  padding: 0 24px 0 0;
  background-image: url(assets/images/common/arrow--under__bk.svg);
  background-repeat: no-repeat;
  background-size: 17px 12.37px;
  background-position: center right;
}

.p--info-nav-list > li.separation {
  width: 22px;
  height: 22px;
  margin: 0 24px;
  background-image: url(assets/images/common/icon__line45__bk.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center right;
}

.p--info-section {
  max-width: 900px;
  margin: 0 auto 150px;
}

.p--info-intro {
  margin: 0 0 100px;
}

.p--info-title {
  font-size: 3.4rem;
  font-weight: 600;
  font-family: var(--font-serif);
  letter-spacing: 0.025em;
  margin: 0 0 25px;
  text-align: center;
}

.p--info-lead {
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.75;
}

.p--info-cbox {
  margin: 0 0 100px;
}

.p--info-flex-sb {
  display: flex;
  justify-content: space-between;
}

.p--info-flex-sb__cols-left {
  width: 45%;
}

.p--info-flex-sb__cols-right {
  width: 48.88889%;
}

.p--info-headline01 {
  margin: 0 0 32px;
  position: relative;
  display: flex;
  align-items: center;
}

.p--info-headline01 span {
  font-family: var(--font-serif);
  font-weight: 500;
  font-size: 2.4rem;
  letter-spacing: 0.025em;
  line-height: 1.64;
  display: inline-block;
  padding: 0 20px 0 0;
}

.p--info-headline01 span em {
  font-style: normal;
  font-size: 2.0rem;
}

.p--info-headline01:after {
  content: "";
  height: 1px;
  width: 100%;
  background-color: #000;
  display: inline-block;
  flex: 1;
}

.p--info-headline02 {
  font-size: 2.0rem;
  font-family: var(--font-serif);
  font-weight: 500;
  margin: 0 0 10px;
}

.p--info-headline02 em {
  font-style: normal;
  font-size: 1.6rem;
}

.p--info-figure img {
  width: 100%;
  vertical-align: bottom;
}

.p--info-figure01 {
  max-width: 403px;
}

.p--info-figure01 img {
  width: 100%;
  vertical-align: bottom;
}

.p--info-text {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: -0.035em;
}

.p--info-caution-list {
  margin: 15px 0 0;
}

.p--info-caution-list > li {
  font-size: 1.2rem;
  letter-spacing: 0.025em;
  line-height: 1.5;
  padding-left: 1.0em;
  text-indent: -1.0em;
}

.p--info-flexc {
  display: flex;
  justify-content: space-between;
  margin: 20px 0;
}

.p--info-flexc-photo {
  width: 19.75309%;
}

.p--info-flexc-photo img {
  width: 100%;
  vertical-align: bottom;
}

.p--info-flexc-content {
  width: 76.54321%;
}

.p--info-flexc-content p {
  font-size: 1.6rem;
  margin: 0 0 10px;
}

.p--info-flexc-content-list > li {
  font-size: 1.6rem;
  margin: 0 0 10px;
  padding: 0 0 0 20px;
  background-image: url(assets/images/common/arrow--right__bk.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 8.33px 11.44px;
}

.p--info-feebox {
  margin: 0 0 12px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-image: url(assets/images/common/line__dot.png);
  background-repeat: repeat-x;
  background-position: left center;
  background-size: 50%;
  width: 385px;
}

.p--info-feebox.ads__01 {
  margin: 24px 0 0;
}

.p--info-feebox dt {
  font-size: 1.6rem;
  font-family: var(--font-serif);
  font-weight: 500;
  letter-spacing: 0.025em;
  display: inline-block;
  background-color: #FFF;
  padding: 5px 15px 5px 0;
}

.p--info-feebox dt .fs__s {
  font-size: 1.2rem;
}

.p--info-feebox dt .fs__l {
  font-size: 2.0rem;
}

.p--info-feebox dt.en__title {
  font-size: 2.0rem;
}

.p--info-feebox dd {
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  display: inline-block;
  background-color: #FFF;
  padding: 5px 0 5px 10px;
}

.p--info-table {
  width: 405px;
}

.p--info-table.access-table th {
  text-align: center;
  padding: 12px 20px;
}

.p--info-table.access-table td {
  text-align: center;
  font-size: 1.2rem;
}

.p--info-table.start__table {
  width: 100%;
}

.p--info-table.start__table th {
  border-left: 2px solid #FFF;
  font-weight: 700;
  text-align: center;
  padding: 10px;
}

.p--info-table.start__table td.c--gray01 {
  text-align: center;
}

.p--info-table.start__table td {
  font-size: 1.2rem;
}

.p--info-table th {
  background-color: #000;
  padding: 20px;
  vertical-align: middle;
  color: #FFF;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.5;
}

.p--info-table th.b--type01 {
  border-left: 2px solid #FFF;
}

.p--info-table td {
  border-left: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  padding: 12.5px 20px;
  vertical-align: middle;
}

.p--info-table td.c--gray01 {
  background-color: #F0F0F0;
}

.p--info-table td.c--gray02 {
  background-color: #C8C8C8;
}

.p--info-table td.s--date {
  text-align: left;
}

.p--info-table td.s--price {
  text-align: right;
  font-size: 1.4rem;
  font-weight: 700;
  border-left: none;
}

.p--info-table .gap-row tr td {
  height: 3px;
  padding: 0;
  border: none;
  background-color: #FFF;
}

.p--info-access-head {
  margin: 0 0 20px;
  display: flex;
  align-items: center;
}

.p--info-access-head.ads__01 {
  margin: 50px 0 0;
}

.p--info-access-head dt {
  margin-right: 20px;
  padding: 0 0 0 20px;
  background-image: url(assets/images/common/arrow--right__bk.svg);
  background-repeat: no-repeat;
  background-position: left 5.5px;
  background-size: 8.33px 11.44px;
  font-family: var(--font-serif);
  font-size: 2.0rem;
  letter-spacing: 0.025em;
}

.p--info-access-head dt .head__caution {
  display: block;
  margin: 7px 0 0;
  font-size: 1.2rem;
  letter-spacing: 0.025em;
  font-family: '游ゴシック', '游ゴシック体', '游ゴシック Medium', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'Noto Sans JP','Lato', sans-serif;
}

.p--info-access-head dd {
  width: 60px;
}

.p--info-access-head dd img {
  width: 100%;
  vertical-align: bottom;
}

.p--info-access-tel {
  margin: 60px 0 0;
  font-family: var(--font-serif);
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0.025em;
}

.p--info-access-tel em {
  font-size: 2.4rem;
  font-family: var(--font-main);
  letter-spacing: 0.06em;
  font-style: normal;
}

@media screen and (max-width: 768px) {
  .p--info-nav {
    margin: calc(30 / 390 * 100vw) 0;
    padding: 0 calc(35 / 390 * 100vw);
  }
  .p--info-nav-list {
    flex-wrap: wrap;
  }
  .p--info-nav-list > li {
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--info-nav-list > li > a {
    font-size: calc(12 / 390 * 100vw);
    line-height: 1.0;
  }
  .p--info-nav-list > li > a span {
    display: block;
    padding: 0 calc(16 / 390 * 100vw) 0 0;
    background-size: calc(12 / 390 * 100vw) calc(8.73 / 390 * 100vw);
  }
  .p--info-nav-list > li.separation {
    display: none;
  }
  .p--info-section {
    max-width: initial;
    padding: 0 calc(20 / 390 * 100vw);
    margin: 0 auto calc(100 / 390 * 100vw);
  }
  .p--info-intro {
    margin: 0 0 calc(50 / 390 * 100vw);
  }
  .p--info-title {
    font-size: calc(22 / 390 * 100vw);
    margin: 0 0 calc(15 / 390 * 100vw);
  }
  .p--info-lead {
    font-size: calc(14 / 390 * 100vw);
    font-weight: 500;
    text-align: left;
    line-height: 1.75;
  }
  .p--info-lead br {
    display: none;
  }
  .p--info-cbox {
    margin: 0 0 calc(50 / 390 * 100vw);
  }
  .p--info-flex-sb {
    display: block;
  }
  .p--info-flex-sb__cols-left {
    width: auto;
  }
  .p--info-flex-sb__cols-right {
    width: auto;
  }
  .p--info-headline01 {
    margin: 0 0 calc(20 / 390 * 100vw);
    padding: 0 0 calc(10 / 390 * 100vw);
    border-bottom: 1px solid #000;
  }
  .p--info-headline01 span {
    width: auto;
    font-size: calc(18 / 390 * 100vw);
    line-height: 1.66667;
    display: inline-block;
    padding: 0;
  }
  .p--info-headline01 span em {
    font-size: calc(14 / 390 * 100vw);
  }
  .p--info-headline01:after {
    display: none;
  }
  .p--info-headline02 {
    font-size: calc(16 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--info-headline02 em {
    font-size: calc(14 / 390 * 100vw);
  }
  .p--info-figure img {
    width: 100%;
    vertical-align: bottom;
  }
  .p--info-figure01 {
    max-width: 100%;
  }
  .p--info-figure01 img {
    width: 100%;
    vertical-align: bottom;
  }
  .p--info-text {
    font-size: calc(13 / 390 * 100vw);
    line-height: 1.53846;
  }
  .p--info-caution-list {
    margin: calc(15 / 390 * 100vw) 0 0;
  }
  .p--info-caution-list > li {
    font-size: calc(11 / 390 * 100vw);
    margin: 0 0 calc(10 / 390 * 100vw);
  }
  .p--info-flexc {
    display: flex;
    justify-content: space-between;
    margin: 20px 0;
  }
  .p--info-flexc-photo {
    width: 19.75309%;
  }
  .p--info-flexc-photo img {
    width: 100%;
    vertical-align: bottom;
  }
  .p--info-flexc-content {
    width: 76.54321%;
  }
  .p--info-flexc-content p {
    font-size: 1.6rem;
    margin: 0 0 10px;
  }
  .p--info-flexc-content-list > li {
    font-size: 1.6rem;
    margin: 0 0 10px;
    padding: 0 0 0 20px;
    background-image: url(assets/images/common/arrow--right__bk.svg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 8.33px 11.44px;
  }
  .p--info-feebox {
    margin: 0 0 calc(10 / 390 * 100vw);
    width: auto;
  }
  .p--info-feebox.ads__01 {
    margin: calc(25 / 390 * 100vw) 0 0;
  }
  .p--info-feebox dt {
    font-size: calc(16 / 390 * 100vw);
    padding: calc(5 / 390 * 100vw) calc(15 / 390 * 100vw) calc(5 / 390 * 100vw) 0;
  }
  .p--info-feebox dt .fs__s {
    font-size: calc(12 / 390 * 100vw);
  }
  .p--info-feebox dt .fs__l {
    font-size: calc(18 / 390 * 100vw);
  }
  .p--info-feebox dt.en__title {
    font-size: calc(18 / 390 * 100vw);
  }
  .p--info-feebox dd {
    font-size: calc(12 / 390 * 100vw);
    padding: calc(5 / 390 * 100vw) 0 calc(5 / 390 * 100vw) calc(10 / 390 * 100vw);
  }
  .p--info-table__wrap {
    overflow-x: scroll;
  }
  .p--info-table {
    width: 435px;
  }
  .p--info-table.access-table th {
    text-align: center;
    padding: calc(10 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
  .p--info-table.access-table td {
    text-align: center;
    font-size: calc(12 / 390 * 100vw);
  }
  .p--info-table.start__table {
    width: 600px;
  }
  .p--info-table.start__table th {
    padding: calc(10 / 390 * 100vw);
  }
  .p--info-table.start__table td.c--gray01 {
    text-align: center;
  }
  .p--info-table.start__table td {
    font-size: 1.2rem;
  }
  .p--info-table th {
    padding: calc(20 / 390 * 100vw);
    font-size: calc(12 / 390 * 100vw);
  }
  .p--info-table td {
    padding: calc(12.5 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
  .p--info-table td.s--price {
    font-size: calc(14 / 390 * 100vw);
  }
  .p--info-table .gap-row tr td {
    height: calc(5 / 390 * 100vw);
  }
  .p--info-access-head {
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--info-access-head.ads__01 {
    margin: calc(50 / 390 * 100vw) 0 0;
  }
  .p--info-access-head dt {
    margin-right: calc(20 / 390 * 100vw);
    padding: 0 0 0 calc(20 / 390 * 100vw);
    background-position: left calc(6 / 390 * 100vw);
    background-size: calc(8.33 / 390 * 100vw) calc(11.44 / 390 * 100vw);
    font-size: calc(20 / 390 * 100vw);
  }
  .p--info-access-head dt .head__caution {
    margin: calc(7 / 390 * 100vw) 0 0;
    font-size: calc(12 / 390 * 100vw);
  }
  .p--info-access-head dd {
    width: calc(70 / 390 * 100vw);
  }
  .p--info-access-head dd img {
    width: 100%;
    vertical-align: bottom;
  }
  .p--info-access-tel {
    margin: calc(70 / 390 * 100vw) 0 0;
    font-size: calc(15 / 390 * 100vw);
  }
  .p--info-access-tel em {
    font-size: calc(20 / 390 * 100vw);
  }
}

/*
    Pages [Access]
--------------------------------------------------------------*/
.p--access-info {
  background-color: #F0F0F0;
  max-width: 720px;
  margin: 0 auto 100px;
}

.p--access-info__inner {
  padding: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.p--access-info__title {
  width: 41.40625%;
}

.p--access-info__title svg {
  width: 265px;
  height: auto;
  fill: #000;
}

.p--access-info__content {
  width: 53.125%;
  border-left: 1px solid #707070;
}

.p--access-info__content p {
  padding: 0 0 0 10%;
  letter-spacing: 0.1em;
  font-size: 1.6rem;
  font-family: var(--font-serif);
  font-weight: 400;
  line-height: 1.5625;
}

.p--access-cols01 {
  display: flex;
  justify-content: space-between;
}

.p--access-cols01-photo img {
  width: 100%;
  vertical-align: bottom;
}

.p--access-cols__left {
  width: 54.5%;
}

.p--access-cols__right {
  width: 41.5%;
}

.p--access-title {
  text-align: center;
  margin: 0 0 50px;
}

.p--access-title .main__title {
  font-size: 3.4rem;
  font-weight: 600;
  font-family: var(--font-serif);
  letter-spacing: 0.025em;
  display: block;
}

.p--access-title .sub__title {
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: 0;
  display: block;
  margin: 20px 0 0;
}

.p--access-section {
  max-width: 1000px;
  margin: 0 auto 170px;
}

.p--access-section02 {
  max-width: 720px;
  margin: 0 auto 150px;
}

.p--access-section02.ajs__01 {
  margin: 0 auto 25px;
}

.p--access-section03 {
  max-width: 1000px;
  margin: 0 auto 90px;
}

.p--access-section03__inner {
  display: flex;
  justify-content: space-between;
}

.p--access-section03__left {
  width: 57.4%;
}

.p--access-section03__left img {
  width: 100%;
  vertical-align: bottom;
}

.p--access-section03__right {
  width: 41%;
}

.p--access-section03__right iframe {
  width: 100%;
  min-height: 575px;
}

.p--access-airplane {
  position: relative;
  height: 465px;
  margin: 0 0 80px;
}

.p--access-airplane .p--access-panel {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
}

.p--access-airplane-photo {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 465px;
}

.p--access-airplane-photo img {
  width: 100%;
  vertical-align: bottom;
}

.p--access-panel {
  display: flex;
}

.p--access-panel.align-top {
  align-items: flex-start;
}

.p--access-panel.align-center {
  align-items: center;
  margin: 50px 0 0;
}

.p--access-panel-title {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 112px;
  height: 112px;
  background-color: #000;
  border-radius: 50%;
  margin-right: 25px;
}

.p--access-panel-title span {
  display: block;
  font-family: var(--font-serif);
  color: #FFF;
  font-size: 1.6rem;
  letter-spacing: 0.025em;
  font-weight: 400;
}

.p--access-panel-table td {
  line-height: 1.57143;
  font-size: 1.4rem;
  padding: 0 10px 0 0;
}

.p--access-panel-table td.s__time {
  font-weight: 700;
}

.p--access-panel-table td.s__area {
  font-weight: 700;
  padding: 0 5px 0 0;
}

.p--access-panel-table td .marker__color01 {
  color: #C7B299;
}

.p--access-panel-table td .marker__color02 {
  color: #000;
}

.p--access-panel-table td .marker__color03 {
  color: #006636;
}

.p--access-panel-content-caution {
  display: block;
  margin: 10px 0 0;
  font-size: 1.2rem;
}

.p--access-panel-content-title {
  margin: 0 0 10px;
}

.p--access-panel-content-title.ajs__01 {
  margin: 30px 0 10px;
}

.p--access-panel-content-caution-text {
  margin: 10px 0 0;
  line-height: 1.5;
  font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
  .p--access-info {
    max-width: calc(310 / 390 * 100vw);
    margin: 0 auto calc(40 / 390 * 100vw);
  }
  .p--access-info__inner {
    padding: calc(20 / 390 * 100vw);
    display: block;
  }
  .p--access-info__title {
    width: auto;
    margin: 0 auto calc(15 / 390 * 100vw);
  }
  .p--access-info__title svg {
    width: calc(260 / 390 * 100vw);
    height: auto;
    fill: #000;
    margin: 0 auto;
  }
  .p--access-info__content {
    width: auto;
    border-top: 1px solid #707070;
    border-left: none;
  }
  .p--access-info__content p {
    padding: calc(15 / 390 * 100vw) 0;
    font-size: calc(13 / 390 * 100vw);
  }
  .p--access-cols01 {
    display: block;
    padding: 0;
  }
  .p--access-cols01-photo img {
    width: 100%;
    vertical-align: bottom;
  }
  .p--access-cols__left {
    width: auto;
  }
  .p--access-cols__right {
    width: auto;
  }
  .p--access-title {
    margin: 0 0 calc(25 / 390 * 100vw);
  }
  .p--access-title .main__title {
    font-size: calc(22 / 390 * 100vw);
  }
  .p--access-title .sub__title {
    font-size: calc(15 / 390 * 100vw);
    margin: calc(20 / 390 * 100vw) 0 0;
  }
  .p--access-section {
    margin: 0 auto calc(40 / 390 * 100vw);
  }
  .p--access-section__inner {
    padding: 0 calc(20 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
  .p--access-section02 {
    max-width: initial;
    padding: 0 calc(20 / 390 * 100vw) calc(20 / 390 * 100vw);
    margin: 0 auto calc(40 / 390 * 100vw);
  }
  .p--access-section02.ajs__01 {
    margin: 0;
  }
  .p--access-section02 .p--info-access-tel {
    margin: calc(20 / 390 * 100vw) 0 0;
  }
  .p--access-section03 {
    max-width: initial;
    margin: 0 auto calc(50 / 390 * 100vw);
    padding: 0 calc(20 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
  .p--access-section03__inner {
    display: block;
  }
  .p--access-section03__left {
    width: auto;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--access-section03__left img {
    width: 100%;
    vertical-align: bottom;
  }
  .p--access-section03__right {
    width: auto;
  }
  .p--access-section03__right iframe {
    width: 100%;
    min-height: calc(340 / 390 * 100vw);
  }
  .p--access-airplane {
    position: relative;
    height: auto;
    margin: 0 0 calc(40 / 390 * 100vw);
  }
  .p--access-airplane .p--access-panel {
    position: relative;
    z-index: 5;
    top: 0;
    left: 0;
  }
  .p--access-airplane-photo {
    position: relative;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
  }
  .p--access-airplane-photo img {
    width: 100%;
    vertical-align: bottom;
  }
  .p--access-panel {
    display: block;
  }
  .p--access-panel.align-center {
    margin: calc(30 / 390 * 100vw) 0 0;
  }
  .p--access-panel-title {
    width: calc(80 / 390 * 100vw);
    height: calc(80 / 390 * 100vw);
    margin: 0 auto calc(30 / 390 * 100vw);
  }
  .p--access-panel-title span {
    font-size: calc(14 / 390 * 100vw);
  }
  .p--access-panel-content {
    width: auto;
    margin: 0 0 calc(20 / 390 * 100vw);
  }
  .p--access-panel-table {
    width: 100%;
  }
  .p--access-panel-table td {
    font-size: calc(12 / 390 * 100vw);
    padding: 0 calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) 0;
  }
  .p--access-panel-table td.s__time {
    font-weight: 700;
  }
  .p--access-panel-table td.s__area {
    font-size: calc(12 / 390 * 100vw);
    font-weight: 700;
    padding: 0 calc(10 / 390 * 100vw) 0 0;
  }
  .p--access-panel-content-caution {
    display: block;
    margin: calc(10 / 390 * 100vw) 0 0;
    font-size: calc(12 / 390 * 100vw);
  }
  .p--access-panel-content-title {
    margin: 0 0 10px;
  }
  .p--access-panel-content-title.ajs__01 {
    margin: 30px 0 10px;
  }
  .p--access-panel-content-caution-text {
    margin: 10px 0 0;
    line-height: 1.5;
    font-size: 1.2rem;
  }
}

/*--------------------------------------------------------------
    # _post.scss
--------------------------------------------------------------*/
/*
    News & Events [Archives]
--------------------------------------------------------------*/
.p--nae__archives {
  padding: 50px 30px 0;
  margin: 0 0 100px;
}

.p--nae__archives__inner {
  max-width: 900px;
  margin: 0 auto;
}

.p--nae__list {
  border-top: 1px solid #000000;
}

.p--nae__list > li {
  border-bottom: 1px solid #000000;
  padding: 20px 0;
}

.p--nae__list-box {
  display: flex;
  justify-content: space-between;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.p--nae__list-box:link {
  text-decoration: none;
}

.p--nae__list-box:visited {
  text-decoration: none;
}

.p--nae__list-box:hover {
  text-decoration: none;
  opacity: 0.45;
}

.p--nae__list-box__contents {
  width: 78.88889%;
}

.p--nae__list-box__date {
  font-size: 1.4rem;
  letter-spacing: 0.025em;
  font-weight: 700;
  margin: 0 0 10px;
  color: #000;
  display: block;
}

.p--nae__list-box__title {
  font-size: 2.4rem;
  letter-spacing: 0.025em;
  font-weight: 500;
  font-family: var(--font-serif);
  line-height: 1.70833;
  margin: 0 0 10px;
  color: #000;
  display: block;
}

.p--nae__list-box__text {
  font-size: 1.4rem;
  letter-spacing: 0.025em;
  line-height: 1.57143;
  color: #000;
  display: block;
}

.p--nae__list-box__photo {
  width: 18.66667%;
}

.p--nae__list-box__photo img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
}

.p--nae-single__wrapper {
  position: relative;
  padding: 50px 30px 0;
}

.p--nae-single__content {
  max-width: 900px;
  margin: 0 auto 50px;
  padding: 0 0 30px;
  border-bottom: 1px solid #000;
}

.p--nae-single-meta {
  padding: 30px 0 0;
  border-top: 1px solid #000;
}

.p--nae-single-meta__date {
  font-weight: 700;
  font-size: 1.4rem;
  letter-spacing: 0.025em;
  line-height: 1.57143;
  margin: 0 0 5px;
  display: block;
}

@media screen and (max-width: 768px) {
  .p--nae__archives {
    padding: 7.69231vw 5.12821vw 0;
    margin: 0 0 12.82051vw;
  }
  .p--nae__list > li {
    padding: 5.12821vw 0;
  }
  .p--nae__list-box {
    display: flex;
  }
  .p--nae__list-box__contents {
    width: 62.85714%;
    order: 2;
  }
  .p--nae__list-box__date {
    font-size: 3.07692vw;
    margin: 0 0 2.5641vw;
  }
  .p--nae__list-box__title {
    font-size: 4.61538vw;
    line-height: 1.44444;
    margin: 0 0 2.5641vw;
  }
  .p--nae__list-box__text {
    font-size: 3.07692vw;
    line-height: 1.5;
  }
  .p--nae__list-box__photo {
    order: 1;
    width: 34.28571%;
  }
  .p--nae-single__wrapper {
    padding: 7.69231vw 5.12821vw 0;
  }
  .p--nae-single__content {
    max-width: initial;
    margin: 0 auto 7.69231vw;
    padding: 0 0 7.69231vw;
  }
  .p--nae-single-meta {
    padding: 5.12821vw 0 0;
  }
  .p--nae-single-meta__date {
    font-size: 3.07692vw;
    line-height: 1.5;
    margin: 0 0 1.28205vw;
  }
}

/*--------------------------------------------------------------
    # _page_styles.scss
--------------------------------------------------------------*/
/*
     Config [gutenberg Adjust]
--------------------------------------------------------------*/
body.acf_content {
  padding: 1.56vw;
}

body.acf_content p {
  font-size: 15px !important;
  line-height: 1.5;
  margin: 0 0 25px;
}

.wp-block {
  max-width: 100%;
}

.editor-post-title__block .editor-post-title__input {
  color: #FFF;
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "YuGothic", sans-serif;
  margin: 0 0 2.56vw;
  position: relative;
  font-size: 3.6rem;
}

.wp-admin .edit-post-layout .editor-styles-wrapper {
  width: 80%;
  background-color: #FFF;
  padding: 0 60px;
  max-width: 772px;
  margin: 0 auto;
}

.editor-styles-wrapper .editor-post-title__block a:link {
  color: #000;
  text-decoration: underline;
}

.editor-styles-wrapper .editor-post-title__block a:visited {
  color: #000;
  text-decoration: none;
}

.editor-styles-wrapper .editor-post-title__block a:hover {
  color: #000;
  text-decoration: none;
}

.editor-block-list__block-edit .block-editor-block-list__block-edit figure.is-resized {
  margin: -28px 0 0;
}

/* Admin checkBox */
.acf-input input[type=checkbox], .acf-input input[type=radio] {
  height: 1.0rem;
  width: 1.0rem;
}

.acf-input input[type=checkbox]:checked::before {
  height: 2.3125rem;
  width: 2.3125rem;
}

.wp-admin .edit-post-layout .editor-styles-wrapper .acf-taxonomy-field .acf-checkbox-list li {
  border: none;
  font-size: 13px;
  padding: 5px;
  margin: 0 0 5px;
}

.wp-admin .edit-post-layout .editor-styles-wrapper .categorychecklist-holder {
  background-color: #F5F5F5;
}

/*
     Config [ACF Adjust]
--------------------------------------------------------------*/
.edit-post-layout .editor-styles-wrapper .acf-table {
  border: #DFDFDF solid 1px;
}

.edit-post-layout .editor-styles-wrapper .acf-table td {
  border: 1px solid #CCC;
  padding: 10px;
}

.edit-post-layout .editor-styles-wrapper .acf-input .acf-actions a:link {
  color: #FFF;
  text-decoration: none;
}

.edit-post-layout .editor-styles-wrapper .acf-input .acf-actions a:visited {
  color: #FFF;
  text-decoration: none;
}

.edit-post-layout .editor-styles-wrapper .acf-input .acf-actions a:hover {
  color: #FFF;
  text-decoration: none;
}

/*
     Editor Contents
--------------------------------------------------------------*/
.edit-post-layout .editor-styles-wrapper {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'Lato', sans-serif;
}

.edit-post-layout .editor-styles-wrapper .acf-input a:link {
  color: #000;
  text-decoration: underline;
}

.edit-post-layout .editor-styles-wrapper .acf-input a:visited {
  color: #000;
  text-decoration: none;
}

.edit-post-layout .editor-styles-wrapper .acf-input a:hover {
  color: #000;
  text-decoration: none;
}

.edit-post-layout .editor-styles-wrapper .block-editor-block-variation-picker__variations li {
  margin: 8px 20px 0 0;
  border: none;
}

.edit-post-layout .editor-styles-wrapper .block-editor-block-variation-picker__variations li:before {
  display: none;
}

@media screen and (max-width: 768px) {
  .edit-post-layout__content .editor-styles-wrapper {
    padding: 0 7.69231vw;
  }
  .edit-post-layout .editor-styles-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
  .block-editor-editor-skeleton__body {
    display: block !important;
  }
}

/*
     Gutenberg Block
--------------------------------------------------------------*/
.edit-post-layout .editor-styles-wrapper .wp-block-group {
  background-color: #F5F5F5;
  margin: 40px 0 60px;
  padding: 10px;
}

.edit-post-layout .editor-styles-wrapper .wp-block-group__inner-container {
  padding: 40px;
}

.edit-post-layout .editor-styles-wrapper .wp-block-group__inner-container p:last-child {
  margin: 0;
}

.edit-post-layout .editor-styles-wrapper .wp-block-group.is-style-reference-block {
  margin: 40px 0 60px;
  background-color: #F5F7FD;
  line-height: 1.875;
}

.edit-post-layout .editor-styles-wrapper .wp-block-group.is-style-reference-block .wp-block-group__inner-container {
  background-color: unset;
}

.edit-post-layout .editor-styles-wrapper .wp-block-group.is-style-normal-line-block {
  margin: 40px 0 60px;
  border: 1px solid #B9B9B9;
  background-color: unset;
  line-height: 1.875;
}

.edit-post-layout .editor-styles-wrapper .wp-block-group.is-style-normal-line-block .wp-block-group__inner-container {
  background-color: unset;
}

.edit-post-layout .editor-styles-wrapper .wp-block-group.is-style-relation-block {
  margin: 40px 0 60px;
  padding: 0;
  background-color: unset;
}

.edit-post-layout .editor-styles-wrapper .wp-block-group.is-style-relation-block p {
  color: #E56A00;
}

.edit-post-layout .editor-styles-wrapper .wp-block-group.is-style-relation-block .wp-block-group__inner-container {
  background-color: unset;
  padding: 0;
}

.edit-post-layout .editor-styles-wrapper .g--gmap {
  border: 1px solid #e8e8e8;
  padding: 20px;
}

.edit-post-layout .editor-styles-wrapper .g--gmap__inner {
  border: 1px solid #e8e8e8;
}

.edit-post-layout .editor-styles-wrapper .g--gmap iframe {
  vertical-align: bottom;
  width: 100%;
  height: 410px;
}

.edit-post-layout .editor-styles-wrapper .g--linklist {
  background-color: #F8F8F8;
  padding: 15px;
  margin: 0 0 50px;
}

.edit-post-layout .editor-styles-wrapper .g--linklist__inner {
  padding: 20px;
  background-color: #FFF;
}

.edit-post-layout .editor-styles-wrapper .g--linklist-list {
  margin: 0;
  padding: 0;
}

.edit-post-layout .editor-styles-wrapper .g--linklist-list li {
  margin: 0 0 20px;
  padding: 0;
}

.edit-post-layout .editor-styles-wrapper .g--linklist-list li:before {
  display: none;
}

.edit-post-layout .editor-styles-wrapper .g--linklist-list li:last-child {
  margin: 0;
}

.edit-post-layout .editor-styles-wrapper .g--linklist-list li a {
  padding: 15px;
  border: 1px solid #e8e8e8;
  width: auto;
  display: block;
  font-weight: bold;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  background-image: url(assets/images/common/parts/arrow01__right.png);
  background-repeat: no-repeat;
  background-size: 8px;
  background-position: 96.5% center;
}

.edit-post-layout .editor-styles-wrapper .g--linklist-list li a:link {
  color: #333;
  text-decoration: none;
}

.edit-post-layout .editor-styles-wrapper .g--linklist-list li a:visited {
  color: #333;
  text-decoration: none;
}

.edit-post-layout .editor-styles-wrapper .g--linklist-list li a:hover {
  color: #000;
  border: 1px solid #000;
  text-decoration: none;
  background-color: #FFF;
  background-image: url(assets/images/common/parts/arrow01__right.png);
  background-repeat: no-repeat;
  background-size: 8px;
  background-position: 96.5% center;
}

.edit-post-layout .editor-styles-wrapper .g--linklist-list-excheck {
  display: inline-block;
  padding: 0 20px 0 0;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist {
  background-color: #EDEDED;
  padding: 10px;
  margin: 0 0 70px;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist__inner {
  background-color: #FFF;
  padding: 0;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist-list {
  margin: 0;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist-list-titleSub {
  font-weight: 300;
  margin: 0 0 0 15px;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist-list li {
  margin: 0;
  padding: 0;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist-list li:last-child {
  margin: 0;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist-list li:before {
  display: none;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist-list li a {
  display: block;
  color: var(--main-color);
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
  font-weight: 700;
  font-size: 1.5rem;
  padding: 25px 35px;
  position: relative;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist-list li a:link {
  color: var(--main-color);
  text-decoration: none;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist-list li a:visited {
  color: var(--main-color);
  text-decoration: none;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist-list li a:hover {
  color: var(--main-color);
  text-decoration: none;
  background-color: #F5F5F5;
}

.edit-post-layout .editor-styles-wrapper .g--pdflist-list li a:after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 22px;
  position: relative;
  background-image: url(assets/images/common/parts/icon__pdf.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  margin: 0 0 0 20px;
  vertical-align: middle;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox {
  margin: 50px 0 80px;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-list {
  display: flex;
  flex-wrap: wrap;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-list li {
  border: none;
  padding: 0;
  margin: 0 3.125% 30px 0;
  width: 31.25%;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-list li:before {
  display: none;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-list li img {
  width: 100%;
  vertical-align: bottom;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-list li:nth-child(3n) {
  margin: 0 0 30px 0;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-images img {
  width: 100%;
  vertical-align: bottom;
  height: auto;
  border: 5px solid #FFF;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-list li a {
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all  0.25s ease;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-list li a:link {
  color: var(--main-color);
  text-decoration: none;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-list li a:visited {
  color: var(--main-color);
  text-decoration: none;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-list li a:hover {
  color: var(--main-color);
  text-decoration: none;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-list li a:hover .g--gallerybox-images img {
  border: 5px solid var(--main-color);
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-cap {
  margin: 15px 0 0;
  padding: 0 20px 0;
  display: block;
  background-image: url(assets/images/common/parts/arrow01__right.png);
  background-repeat: no-repeat;
  background-size: 11px 11px;
  background-position: right center;
  text-align: center;
  color: #000;
  font-size: 2.0rem;
  font-weight: 700;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-cap em {
  font-style: normal;
  display: block;
  margin: 0;
  font-size: 1.3rem;
  font-weight: 300;
  line-height: 1.0;
}

.edit-post-layout .editor-styles-wrapper .g--gallerybox-cap.no-icon {
  background-image: none;
  font-weight: 400;
  font-size: 1.3rem;
}

.edit-post-layout .editor-styles-wrapper .wp-block-embed__wrapper div {
  text-align: center;
  margin: 0 auto 30px;
}

.edit-post-layout .editor-styles-wrapper .wp-block-media-text .wp-block-media-text__content {
  padding: 0 0 0 20px;
  height: 100%;
}

.edit-post-layout .editor-styles-wrapper .has-media-on-the-right .wp-block-media-text__content {
  padding: 0 20px 0 0;
  height: 100%;
}

.edit-post-layout .editor-styles-wrapper .wp-block-media-text__media {
  height: 100%;
}

.edit-post-layout .editor-styles-wrapper .wp-block-media-text {
  margin: 0 0 50px;
}

@media screen and (max-width: 768px) {
  .edit-post-layout .editor-styles-wrapper .wp-block-group {
    background-color: #F5F5F5;
    margin: 7.69231vw 0 15.38462vw;
    padding: 2.5641vw;
  }
  .edit-post-layout .editor-styles-wrapper .wp-block-group__inner-container {
    padding: 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper .wp-block-group.is-style-reference-block {
    margin: 7.69231vw 0 15.38462vw;
  }
  .edit-post-layout .editor-styles-wrapper .wp-block-group.is-style-normal-line-block {
    margin: 7.69231vw 0 15.38462vw;
  }
  .edit-post-layout .editor-styles-wrapper .wp-block-group.is-style-relation-block {
    margin: 7.69231vw 0 15.38462vw;
  }
  .edit-post-layout .editor-styles-wrapper .g--gmap {
    padding: 2.5641vw;
  }
  .edit-post-layout .editor-styles-wrapper .g--gmap__inner {
    border: 1px solid #e8e8e8;
  }
  .edit-post-layout .editor-styles-wrapper .g--gmap iframe {
    vertical-align: bottom;
    width: 100%;
    height: 51.28205vw;
  }
  .edit-post-layout .editor-styles-wrapper .g--linklist {
    padding: 2.5641vw;
    margin: 0 0 5.12821vw;
  }
  .edit-post-layout .editor-styles-wrapper .g--linklist__inner {
    padding: 3.84615vw;
    background-color: #FFF;
  }
  .edit-post-layout .editor-styles-wrapper .g--linklist-list li {
    margin: 0 0 2.5641vw;
  }
  .edit-post-layout .editor-styles-wrapper .g--linklist-list li a {
    padding: 2.5641vw;
    background-image: url(assets/images/common/parts/arrow01__right.png);
    background-repeat: no-repeat;
    background-size: 8px;
    background-position: 96.5% center;
  }
  .edit-post-layout .editor-styles-wrapper .g--linklist-list-excheck {
    display: inline-block;
  }
  .edit-post-layout .editor-styles-wrapper .g--pdflist {
    background-color: #EDEDED;
    padding: 2.5641vw;
    margin: 0 0 vw(20);
  }
  .edit-post-layout .editor-styles-wrapper .g--pdflist-list {
    margin: 0;
  }
  .edit-post-layout .editor-styles-wrapper .g--pdflist-list-titleSub {
    font-weight: 300;
    margin: 0 0 0 vw(10);
  }
  .edit-post-layout .editor-styles-wrapper .g--pdflist-list li a {
    font-size: 3.07692vw;
    padding: 3.84615vw;
  }
  .edit-post-layout .editor-styles-wrapper .g--pdflist-list li a:after {
    content: "";
    display: inline-block;
    width: 3.84615vw;
    height: 4.35897vw;
    margin: 0 0 0 2.5641vw;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox {
    margin: 0 0 7.69231vw;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-list {
    display: flex;
    flex-wrap: wrap;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-list li {
    border: none;
    padding: 0;
    margin: 0 3.125% 2.5641vw 0;
    width: 47.25%;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-list li:before {
    display: none;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-list li img {
    width: 100%;
    vertical-align: bottom;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-list li:nth-child(3n) {
    margin: 0 3.125% 2.5641vw 0;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-list li:nth-child(even) {
    margin: 0 0 2.5641vw 0;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-images img {
    width: 100%;
    vertical-align: bottom;
    height: auto;
    border: 5px solid #FFF;
    -webkit-transition: all 0.25s ease;
    -moz-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all  0.25s ease;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-list li a {
    -webkit-transition: all 0.25s ease;
    -moz-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all  0.25s ease;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-list li a:link {
    color: var(--main-color);
    text-decoration: none;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-list li a:visited {
    color: var(--main-color);
    text-decoration: none;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-list li a:hover {
    color: var(--main-color);
    text-decoration: none;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-list li a:hover .g--gallerybox-images img {
    border: 5px solid var(--main-color);
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-cap {
    margin: 2.5641vw 0 0;
    padding: 0 2.5641vw 0;
    display: block;
    background-image: url(assets/images/common/parts/arrow01__right.png);
    background-repeat: no-repeat;
    background-size: 2.5641vw 2.5641vw;
    background-position: right center;
    text-align: center;
    color: #000;
    font-size: 3.84615vw;
    font-weight: 700;
  }
  .edit-post-layout .editor-styles-wrapper .g--gallerybox-cap em {
    font-style: normal;
    display: block;
    margin: 0 0 5px;
    font-size: 2.5641vw;
    font-weight: 300;
  }
  .edit-post-layout .editor-styles-wrapper .wp-block-embed__wrapper div {
    text-align: center;
    margin: 0 auto 30px;
  }
  .edit-post-layout .editor-styles-wrapper .wp-block-media-text .wp-block-media-text__content {
    padding: 5.12821vw 0 0;
    height: 100%;
  }
  .edit-post-layout .editor-styles-wrapper .has-media-on-the-right .wp-block-media-text__content {
    padding: 5.12821vw 0 0;
    height: 100%;
  }
  .edit-post-layout .editor-styles-wrapper .has-media-on-the-right .wp-block-media-text__content p:last-child {
    margin: 0;
  }
  .edit-post-layout .editor-styles-wrapper .wp-block-media-text__media {
    height: 100%;
  }
  .edit-post-layout .editor-styles-wrapper .wp-block-media-text {
    margin: 0 0 5.12821vw;
  }
}

/*
    Pages [common]
--------------------------------------------------------------*/
/**
 # Objects -  utility -
 */
/*--------------------------------------------------------------
    # _utility.scss
--------------------------------------------------------------*/
.u-radius5 {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

.u-radiusC {
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
}

.transition {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
}

.clearfix {
  zoom: 1;
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

/*--------------------------------------------------------------
    # _animation.scss
--------------------------------------------------------------*/
/*
    Opening
--------------------------------------------------------------*/
body.preload .overlay--content {
  opacity: 0;
}

body.loaded .overlay--content {
  opacity: 1.0;
  transition: 1.05s cubic-bezier(0.86, 0, 0.07, 1);
}

/*
    home [keyvisual]
--------------------------------------------------------------*/
body.preload .rh--kev-title {
  opacity: 0;
  transform: translateY(20px);
  transition: 0.5s cubic-bezier(0.09, 0.43, 0.1, 0.79) 1s;
  filter: blur(10px);
  will-change: opacity, transform;
}

body.loaded .rh--kev-title {
  opacity: 1.0;
  transform: translateY(0);
  filter: blur(0);
  will-change: opacity, transform;
}

/*
    Common
--------------------------------------------------------------*/
.parallax--bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 150%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.parallax--bg.para--photo01 {
  background-image: url(assets/images/pages/home/kv__bg01.jpg);
}

.parallax--bg.para--photo02 {
  background-image: url(assets/images/pages/home/feature__py__bg01.jpg);
}

.parallax--bg.para--photo03 {
  background-image: url(assets/images/pages/product/step__bg01.jpg);
}

.parallax--trigger {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.to-up-ani {
  opacity: 0;
  transform: translateY(40px);
  transition: 1s cubic-bezier(0.3, 0.2, 0.3, 1) 0s;
}

.to-up-ani.lazyloaded {
  opacity: 1.0;
  transform: translateY(0);
}

.lazyloaded .to-left-ani {
  transform: translateX(0%);
}

.lazyloaded .to-right-ani {
  transform: translateX(0%);
}

.to-left-ani {
  transform: translateX(-101%);
  transition: transform .6s;
  transition-delay: .3s;
  overflow: hidden;
  display: block;
}

.to-right-ani {
  transform: translateX(101%);
  transition: transform .6s;
  transition-delay: .3s;
  overflow: hidden;
  display: block;
}

@media screen and (max-width: 768px) {
  .parallax--bg.para--photo01 {
    background-image: url(assets/images/pages/home/kv__bg01__smp.jpg);
  }
  .parallax--bg.para--photo02 {
    background-image: url(assets/images/pages/home/feature__py__bg01__smp.jpg);
  }
  .parallax--bg.para--photo03 {
    background-image: url(assets/images/pages/product/step__bg01.jpg);
  }
}
/*# sourceMappingURL=style.css.map */
