@charset "UTF-8";
footer .box-information, footer .nav-sitemap, .con-pageoutline .box-title, .con-pageoutline .box-comingsoon { margin-left: auto; margin-right: auto; width: calc(100% - 160px); }
@media only screen and (min-width: 768px) and (max-width: 1024px) { footer .box-information, footer .nav-sitemap, .con-pageoutline .box-title, .con-pageoutline .box-comingsoon { width: 92%; } }
@media only screen and (max-width: 767px) { footer .box-information, footer .nav-sitemap, .con-pageoutline .box-title, .con-pageoutline .box-comingsoon { width: 89.6%; } }

/*Animate */
/* -----------------------------------------------------------
	基本設定、リンクカラーなど
----------------------------------------------------------- */
html { font-size: 62.5%; line-height: 1.75; }

body { color: #292929; -webkit-text-size-adjust: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-size: 1.6rem; }
@media only screen and (max-width: 767px) { body { font-size: 1.4rem; } }
body a { color: #292929; line-height: 1; }
body a:link, body a:visited, body a:active, body a:hover, body a.touchstart { text-decoration: none; }
body img { max-width: 100%; -webkit-touch-callout: none; image-rendering: -webkit-optimize-contrast; }

body, pre, input, textarea, select { font-family: "Zen Old Mincho", serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; }

input, select, textarea { font-size: 100%; }

@media only screen and (min-width: 1025px) { body .view_tab-sp, body .view_tab { display: none !important; } }
@media print { body .view_tab-sp, body .view_tab { display: none !important; } }
.ie8 body .view_tab-sp, .ie8 body .view_tab { display: none !important; }
@media only screen and (min-width: 768px) { body .view_sp { display: none !important; } }
@media print { body .view_sp { display: none !important; } }
.ie8 body .view_sp { display: none !important; }
@media only screen and (max-width: 1024px) { body .view_pc { display: none !important; } }
@media only screen and (max-width: 767px) { body .view_pc-tab, body .view_tab { display: none !important; } }

* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

.visually-hidden { position: absolute !important; clip: rect(1px, 1px, 1px, 1px); padding: 0 !important; border: 0 !important; height: 1px !important; width: 1px !important; overflow: hidden; }

/* -----------------------------------------------------------
	#page
----------------------------------------------------------- */
#page { position: relative; }

/* -----------------------------------------------------------
	header
----------------------------------------------------------- */
header { padding: 24px 24px 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; }
@media only screen and (max-width: 767px) { header { padding: 8px 8px 0 16px; } }
@media only screen and (min-width: 1025px) { header .logo { padding-left: 32px; } }
@media print { header .logo { padding-left: 32px; } }
.ie8 header .logo { padding-left: 32px; }
@media only screen and (min-width: 1025px) and (max-width: 1280px) { header .logo { padding-left: 0; } }
@media print { header .logo { padding-left: 0; } }
.ie8 header .logo { padding-left: 0; }
header .logo a { display: block; }
@media only screen and (min-width: 1025px) { header .logo a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  header .logo a:hover { opacity: 0.6; } }
@media print { header .logo a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  header .logo a:hover { opacity: 0.6; } }
.ie8 header .logo a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 header .logo a:hover { opacity: 0.6; }
header .logo a svg { fill: #292929; width: 150px; }
header .gnav .gnav-mainlist { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; gap: 40px; }
@media only screen and (min-width: 1025px) and (max-width: 1280px) { header .gnav .gnav-mainlist { gap: 16px; } }
@media print { header .gnav .gnav-mainlist { gap: 16px; } }
.ie8 header .gnav .gnav-mainlist { gap: 16px; }
header .gnav .gnav-mainlist li a { font-weight: 600; letter-spacing: 1.2px; line-height: 1; }
@media only screen and (min-width: 1025px) { header .gnav .gnav-mainlist li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  header .gnav .gnav-mainlist li a:hover { color: #90825D; } }
@media print { header .gnav .gnav-mainlist li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  header .gnav .gnav-mainlist li a:hover { color: #90825D; } }
.ie8 header .gnav .gnav-mainlist li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 header .gnav .gnav-mainlist li a:hover { color: #90825D; }
header .nav-buttons .box-cv_buttons { display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; }
header .nav-buttons .box-cv_buttons .button a { background-color: rgba(41, 41, 41, 0.5); backdrop-filter: blur(2.5px); border: 1px solid rgba(255, 255, 255, 0.3); color: #fff; padding: 14px 22px; display: block; width: 100%; }
@media only screen and (min-width: 1025px) { header .nav-buttons .box-cv_buttons .button a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  header .nav-buttons .box-cv_buttons .button a:hover { background-color: #292929; } }
@media print { header .nav-buttons .box-cv_buttons .button a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  header .nav-buttons .box-cv_buttons .button a:hover { background-color: #292929; } }
.ie8 header .nav-buttons .box-cv_buttons .button a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 header .nav-buttons .box-cv_buttons .button a:hover { background-color: #292929; }
@media only screen and (max-width: 767px) { header .nav-buttons .box-cv_buttons .button a { padding: 8px 20px; } }
header .nav-buttons .box-cv_buttons .button a .wrap { font-size: 1.5rem; line-height: 1; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; gap: 0 6px; }
header .nav-buttons .box-cv_buttons .button a .wrap img { width: 20px; height: 20px; display: inline-block; }
@media only screen and (max-width: 767px) { header .nav-buttons .box-cv_buttons .button a .wrap img { width: 24px; height: 24px; } }
header .nav-buttons .box-cv_buttons .button:first-child a { -webkit-border-radius: 5rem 0 0 5rem; -moz-border-radius: 5rem 0 0 5rem; -ms-border-radius: 5rem 0 0 5rem; border-radius: 5rem 0 0 5rem; }
header .nav-buttons .box-cv_buttons .button:last-child a { -webkit-border-radius: 0 5rem 5rem 0; -moz-border-radius: 0 5rem 5rem 0; -ms-border-radius: 0 5rem 5rem 0; border-radius: 0 5rem 5rem 0; }
header .nav-buttons .box-cv_buttons .button:only-child a { -webkit-border-radius: 5rem; -moz-border-radius: 5rem; -ms-border-radius: 5rem; border-radius: 5rem; }
header .nav-buttons .button-menu { width: 100px; height: 64px; background: var(--accent-gradetion, linear-gradient(90deg, #74694e 0%, #90825d 100%)); -webkit-border-radius: 32px 0 0 32px; -moz-border-radius: 32px 0 0 32px; -ms-border-radius: 32px 0 0 32px; border-radius: 32px 0 0 32px; display: block; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; cursor: pointer; position: fixed; top: calc(50vh - 32px); right: 0; z-index: 101; }
@media only screen and (min-width: 1025px) { header .nav-buttons .button-menu { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  header .nav-buttons .button-menu:hover { background: var(--accent-gradetion, linear-gradient(90deg, #292929 0%, #6e7283 100%)); } }
@media print { header .nav-buttons .button-menu { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  header .nav-buttons .button-menu:hover { background: var(--accent-gradetion, linear-gradient(90deg, #292929 0%, #6e7283 100%)); } }
.ie8 header .nav-buttons .button-menu { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 header .nav-buttons .button-menu:hover { background: var(--accent-gradetion, linear-gradient(90deg, #292929 0%, #6e7283 100%)); }
@media only screen and (max-width: 767px) { header .nav-buttons .button-menu { width: 80px; height: 48px; } }
header .nav-buttons .button-menu .bar { display: block; background-color: #fff; width: 32px; height: 1px; position: absolute; left: 0; right: 0; margin: 0 auto; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
header .nav-buttons .button-menu .bar:nth-child(1) { top: 20px; }
@media only screen and (max-width: 767px) { header .nav-buttons .button-menu .bar:nth-child(1) { top: 12px; } }
header .nav-buttons .button-menu .bar:nth-child(2) { top: 27px; }
@media only screen and (max-width: 767px) { header .nav-buttons .button-menu .bar:nth-child(2) { top: 20px; } }
header .nav-buttons .button-menu .txt { font-family: "Marcellus", serif; font-weight: 400; font-style: normal; position: absolute; color: #fff; font-size: 1.2rem; line-height: 1; text-transform: uppercase; letter-spacing: 1px; bottom: 16px; left: 0; right: 0; margin: 0 auto; text-align: center; }
@media only screen and (max-width: 767px) { header .nav-buttons .button-menu .txt { font-size: 1rem; bottom: 8px; } }
header .nav-buttons .button-menu .txt:before { content: "MENU"; }
header .nav-buttons .button-menu.open .bar:nth-child(1) { top: 23px; transform: rotate(25deg); }
@media only screen and (max-width: 767px) { header .nav-buttons .button-menu.open .bar:nth-child(1) { top: 16px; } }
header .nav-buttons .button-menu.open .bar:nth-child(2) { top: 23px; transform: rotate(-25deg); }
@media only screen and (max-width: 767px) { header .nav-buttons .button-menu.open .bar:nth-child(2) { top: 16px; } }
header .nav-buttons .button-menu.open .txt:before { content: "CLOSE"; }
header.hamburger-menu-on { position: fixed; top: 0; right: 0; z-index: 101; }
header.hamburger-menu-on .logo { display: none; }
header.hamburger-menu-on .gnav { display: none; }
header.hamburger-menu-on .nav-buttons { display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; }
header.hamburger-menu-on .nav-buttons .box-cv_buttons .button a { padding: 0 26px; height: 64px; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }
@media only screen and (min-width: 1025px) { header.hamburger-menu-on .nav-buttons .box-cv_buttons .button a:hover { background-color: #292929; } }
@media print { header.hamburger-menu-on .nav-buttons .box-cv_buttons .button a:hover { background-color: #292929; } }
.ie8 header.hamburger-menu-on .nav-buttons .box-cv_buttons .button a:hover { background-color: #292929; }
@media only screen and (max-width: 767px) { header.hamburger-menu-on .nav-buttons .box-cv_buttons .button a { padding: 0 16px; height: 48px; } }
header.hamburger-menu-on .nav-buttons .box-cv_buttons .button a .wrap img { width: 24px; height: 24px; }
header.hamburger-menu-on .nav-buttons .box-cv_buttons .button a .wrap .txt { display: none; }
header.hamburger-menu-on .nav-buttons .box-cv_buttons .button:last-child a { -webkit-border-radius: 0; -moz-border-radius: 0; -ms-border-radius: 0; border-radius: 0; }
header.hamburger-menu-on .nav-buttons .box-cv_buttons .button:only-child a { -webkit-border-radius: 5rem 0 0 5rem; -moz-border-radius: 5rem 0 0 5rem; -ms-border-radius: 5rem 0 0 5rem; border-radius: 5rem 0 0 5rem; }
header.hamburger-menu-on .nav-buttons .button-menu { position: relative; top: 0; -webkit-border-radius: 0 32px 32px 0; -moz-border-radius: 0 32px 32px 0; -ms-border-radius: 0 32px 32px 0; border-radius: 0 32px 32px 0; }

/* -----------------------------------------------------------
	.con-modalmenu
----------------------------------------------------------- */
.con-modalmenu { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; opacity: 0; visibility: hidden; pointer-events: none; position: fixed; top: 0; right: 0; z-index: 100; width: 100%; height: 100%; }
.con-modalmenu:before { content: ""; width: 100vw; height: 100vh; background-color: rgba(41, 41, 41, 0.4); position: absolute; top: 0; right: 0; display: block; }
.con-modalmenu .box-modalmenu { clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%); position: absolute; bottom: 0; right: 0; background: #292929 0 0 repeat; width: 90vw; height: 100%; padding: 104px 11.8vw 40px; -webkit-border-radius: 40px 0 0 0; -moz-border-radius: 40px 0 0 0; -ms-border-radius: 40px 0 0 0; border-radius: 40px 0 0 0; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; overflow-y: auto; }
@media only screen and (min-width: 768px) { .con-modalmenu .box-modalmenu { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; } }
@media print { .con-modalmenu .box-modalmenu { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; } }
.ie8 .con-modalmenu .box-modalmenu { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; }
@media only screen and (min-width: 1025px) and (max-width: 1280px) { .con-modalmenu .box-modalmenu { padding: 104px 4vw 40px; } }
@media print { .con-modalmenu .box-modalmenu { padding: 104px 4vw 40px; } }
.ie8 .con-modalmenu .box-modalmenu { padding: 104px 4vw 40px; }
@media only screen and (max-width: 767px) { .con-modalmenu .box-modalmenu { width: 92vw; padding: 80px 32px 32px; } }
@media only screen and (min-width: 1025px) { .con-modalmenu .box-modalmenu .wrap-modalmenu { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; width: 100%; } }
@media print { .con-modalmenu .box-modalmenu .wrap-modalmenu { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; width: 100%; } }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; width: 100%; }
.con-modalmenu .box-modalmenu .wrap-modalmenu .logo { width: 240px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-modalmenu .box-modalmenu .wrap-modalmenu .logo { width: 120px; margin: 0 0 40px; } }
@media only screen and (max-width: 767px) { .con-modalmenu .box-modalmenu .wrap-modalmenu .logo { display: none; } }
.con-modalmenu .box-modalmenu .wrap-modalmenu .logo a { display: inline-block; }
@media only screen and (min-width: 1025px) { .con-modalmenu .box-modalmenu .wrap-modalmenu .logo a { max-width: 160px; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-modalmenu .box-modalmenu .wrap-modalmenu .logo a:hover { opacity: 0.6; } }
@media print { .con-modalmenu .box-modalmenu .wrap-modalmenu .logo a { max-width: 160px; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-modalmenu .box-modalmenu .wrap-modalmenu .logo a:hover { opacity: 0.6; } }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu .logo a { max-width: 160px; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu .logo a:hover { opacity: 0.6; }
.con-modalmenu .box-modalmenu .wrap-modalmenu .logo a img { width: 100%; }
@media only screen and (min-width: 1025px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav { width: calc(100% - 280px); } }
@media print { .con-modalmenu .box-modalmenu .wrap-modalmenu nav { width: calc(100% - 280px); } }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu nav { width: calc(100% - 280px); }
@media only screen and (min-width: 768px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; gap: 40px; } }
@media print { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; gap: 40px; } }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; gap: 40px; }
@media only screen and (min-width: 768px) and (max-width: 1280px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: flex-start; justify-content: flex-start; } }
@media print { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: flex-start; justify-content: flex-start; } }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: flex-start; justify-content: flex-start; }
@media only screen and (min-width: 1025px) and (max-width: 1280px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main { height: 65vh; } }
@media print { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main { height: 65vh; } }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main { height: 65vh; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main { width: 100%; height: 50vh; } }
@media only screen and (max-width: 767px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li { margin-bottom: 24px; } }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li > a { display: inline-block; }
@media only screen and (min-width: 1025px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li > a:hover span.en, .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li > a:hover span.jp { color: #90825D; } }
@media print { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li > a:hover span.en, .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li > a:hover span.jp { color: #90825D; } }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li > a:hover span.en, .ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li > a:hover span.jp { color: #90825D; }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li > a span { display: inline-block; }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li > a span.en { font-family: "Marcellus", serif; font-weight: 400; font-style: normal; line-height: 1; color: #fff; letter-spacing: 1.28px; text-transform: uppercase; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li > a span.jp { line-height: 1; color: #999; margin-left: 16px; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li ul { margin-top: 8px; border-left: 1px solid #fff; padding-left: 24px; }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li ul li { line-height: 200%; }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li ul li a { display: inline-block; color: #fff; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
@media only screen and (min-width: 1025px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li ul li a:hover { color: #90825D; } }
@media print { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li ul li a:hover { color: #90825D; } }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu nav .main > li ul li a:hover { color: #90825D; }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub { border-top: 1px solid #6E7283; margin-top: 80px; padding-top: 32px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub { margin-top: 48px; padding-top: 24px; } }
@media only screen and (max-width: 767px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub { margin-top: 40px; padding-top: 16px; } }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .gnav-privacy { font-family: "Marcellus", serif; font-weight: 400; font-style: normal; }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .gnav-privacy a { color: #fff; text-transform: uppercase; font-size: 1.2rem; line-height: 1; letter-spacing: 0.08em; }
@media only screen and (min-width: 1025px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .gnav-privacy a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .gnav-privacy a:hover { color: #90825D; } }
@media print { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .gnav-privacy a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .gnav-privacy a:hover { color: #90825D; } }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .gnav-privacy a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .gnav-privacy a:hover { color: #90825D; }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .facebook { text-align: right; }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .facebook a { color: #fff; font-family: "Marcellus", serif; font-weight: 400; font-style: normal; font-size: 1.2rem; letter-spacing: 0.08em; line-height: 1; display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; gap: 0 8px; }
@media only screen and (min-width: 1025px) { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .facebook a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .facebook a:hover { color: #90825D; } }
@media print { .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .facebook a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .facebook a:hover { color: #90825D; } }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .facebook a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .facebook a:hover { color: #90825D; }
.con-modalmenu .box-modalmenu .wrap-modalmenu nav .sub .facebook a img { display: inline-block; width: 16px; height: 16px; }
.con-modalmenu.open { opacity: 1; visibility: inherit; pointer-events: all; }
.con-modalmenu.open .box-modalmenu { clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%); }

/* -----------------------------------------------------------
	.con-common-cta
----------------------------------------------------------- */
.con-common-cta { border-top: 1px solid #292929; }
.con-common-cta a { display: block; }
@media only screen and (min-width: 1025px) { .con-common-cta a { padding: 120px 0; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-common-cta a:hover { background-color: #292929; }
  .con-common-cta a:hover .box-common-cta:after { background-color: #fff; }
  .con-common-cta a:hover .box-common-cta .en-title, .con-common-cta a:hover .box-common-cta .jp-title { color: #fff; } }
@media print { .con-common-cta a { padding: 120px 0; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-common-cta a:hover { background-color: #292929; }
  .con-common-cta a:hover .box-common-cta:after { background-color: #fff; }
  .con-common-cta a:hover .box-common-cta .en-title, .con-common-cta a:hover .box-common-cta .jp-title { color: #fff; } }
.ie8 .con-common-cta a { padding: 120px 0; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .con-common-cta a:hover { background-color: #292929; }
.ie8 .con-common-cta a:hover .box-common-cta:after { background-color: #fff; }
.ie8 .con-common-cta a:hover .box-common-cta .en-title, .ie8 .con-common-cta a:hover .box-common-cta .jp-title { color: #fff; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-common-cta a { padding: 80px 0; } }
@media only screen and (max-width: 767px) { .con-common-cta a { padding: 64px 0; } }
.con-common-cta a .box-common-cta { max-width: 667px; margin: 0 auto; position: relative; }
@media only screen and (max-width: 767px) { .con-common-cta a .box-common-cta { max-width: none; width: 89.6%; } }
.con-common-cta a .box-common-cta:after { content: ""; position: absolute; top: 26%; right: 0; width: 48px; height: 26px; background: url(../assets/common/icon-arrow.svg) center center no-repeat; background-size: 14px auto; border: 1px solid #DEDEDE; -webkit-border-radius: 32px; -moz-border-radius: 32px; -ms-border-radius: 32px; border-radius: 32px; }
@media only screen and (max-width: 767px) { .con-common-cta a .box-common-cta:after { top: 20%; width: 36px; height: 20px; background-size: 8px auto; } }
.con-common-cta a .box-common-cta .en-title { font-family: "Marcellus", serif; font-weight: 400; font-style: normal; color: #90825D; text-transform: uppercase; line-height: 1; letter-spacing: 0.14em; margin-bottom: 16px; }
@media only screen and (max-width: 767px) { .con-common-cta a .box-common-cta .en-title { font-size: 1.2rem; margin-bottom: 8px; } }
.con-common-cta a .box-common-cta .jp-title { font-size: 4.8rem; line-height: 1; letter-spacing: 0.04em; margin-bottom: 40px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-common-cta a .box-common-cta .jp-title { font-size: 3.6rem; margin-bottom: 24px; } }
@media only screen and (max-width: 767px) { .con-common-cta a .box-common-cta .jp-title { font-size: 2.4rem; margin-bottom: 16px; } }
.con-common-cta a .box-common-cta .detail-txt { color: #6E7283; line-height: 1.75; letter-spacing: 0.04em; }
@media only screen and (max-width: 767px) { .con-common-cta a .box-common-cta .detail-txt { font-size: 1.3rem; } }

/* -----------------------------------------------------------
	footer
----------------------------------------------------------- */
footer { background-color: #292929; color: #fff; }
footer .box-information { padding: 80px 0 48px; }
@media only screen and (min-width: 768px) { footer .box-information { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; gap: 0 64px; } }
@media print { footer .box-information { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; gap: 0 64px; } }
.ie8 footer .box-information { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; gap: 0 64px; }
@media only screen and (max-width: 767px) { footer .box-information { padding: 64px 0 40px; } }
@media only screen and (min-width: 768px) { footer .box-information .item-information { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; gap: 0 48px; } }
@media print { footer .box-information .item-information { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; gap: 0 48px; } }
.ie8 footer .box-information .item-information { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; gap: 0 48px; }
footer .box-information .item-information .logo { width: 180px; }
@media only screen and (max-width: 767px) { footer .box-information .item-information .logo { margin: 0 auto 24px; } }
footer .box-information .item-information .logo a { display: inline-block; }
@media only screen and (min-width: 1025px) { footer .box-information .item-information .logo a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  footer .box-information .item-information .logo a:hover { opacity: 0.6; } }
@media print { footer .box-information .item-information .logo a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  footer .box-information .item-information .logo a:hover { opacity: 0.6; } }
.ie8 footer .box-information .item-information .logo a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 footer .box-information .item-information .logo a:hover { opacity: 0.6; }
footer .box-information .item-information .logo a img { width: 100%; }
footer .box-information .item-information address { font-size: 1.5rem; line-height: 1.8; }
@media only screen and (max-width: 767px) { footer .box-information .item-information address { text-align: center; font-size: 1.3rem; margin-bottom: 40px; } }
footer .box-information .item-information address .tel { font-family: "Marcellus", serif; font-weight: 400; font-style: normal; letter-spacing: 0.08em; }
@media only screen and (min-width: 1025px) { footer .box-information ul { display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; gap: 0 64px; } }
@media print { footer .box-information ul { display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; gap: 0 64px; } }
.ie8 footer .box-information ul { display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; gap: 0 64px; }
@media only screen and (max-width: 767px) { footer .box-information ul { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; gap: 0 40px; } }
footer .box-information ul li:first-child { width: 200px; }
footer .box-information ul li:last-child { width: 140px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { footer .box-information ul li:last-child { margin-top: 16px; } }
footer .box-information ul li a { display: inline-block; }
@media only screen and (min-width: 1025px) { footer .box-information ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; opacity: 0.2; }
  footer .box-information ul li a:hover { opacity: 1; } }
@media print { footer .box-information ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; opacity: 0.2; }
  footer .box-information ul li a:hover { opacity: 1; } }
.ie8 footer .box-information ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; opacity: 0.2; }
.ie8 footer .box-information ul li a:hover { opacity: 1; }
@media only screen and (max-width: 1024px) { footer .box-information ul li a { opacity: 0.5; } }
footer .nav-sitemap { padding: 80px 0; border-top: 1px solid #6E7283; }
@media only screen and (max-width: 767px) { footer .nav-sitemap { padding: 48px 16px; } }
@media only screen and (min-width: 768px) { footer .nav-sitemap .main { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; gap: 80px 0; } }
@media print { footer .nav-sitemap .main { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; gap: 80px 0; } }
.ie8 footer .nav-sitemap .main { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; gap: 80px 0; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { footer .nav-sitemap .main { gap: 40px; } }
@media only screen and (min-width: 1025px) { footer .nav-sitemap .main > li { width: 33.33333%; } }
@media print { footer .nav-sitemap .main > li { width: 33.33333%; } }
.ie8 footer .nav-sitemap .main > li { width: 33.33333%; }
@media only screen and (max-width: 767px) { footer .nav-sitemap .main > li { margin-bottom: 24px; } }
footer .nav-sitemap .main > li > a { display: inline-block; }
@media only screen and (min-width: 1025px) { footer .nav-sitemap .main > li > a:hover span.en, footer .nav-sitemap .main > li > a:hover span.jp { color: #90825D; } }
@media print { footer .nav-sitemap .main > li > a:hover span.en, footer .nav-sitemap .main > li > a:hover span.jp { color: #90825D; } }
.ie8 footer .nav-sitemap .main > li > a:hover span.en, .ie8 footer .nav-sitemap .main > li > a:hover span.jp { color: #90825D; }
footer .nav-sitemap .main > li > a span { display: inline-block; }
footer .nav-sitemap .main > li > a span.en { font-family: "Marcellus", serif; font-weight: 400; font-style: normal; line-height: 1; color: #fff; letter-spacing: 1.28px; text-transform: uppercase; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
footer .nav-sitemap .main > li > a span.jp { line-height: 1; color: #999; margin-left: 16px; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
footer .nav-sitemap .main > li ul { margin-top: 8px; border-left: 1px solid #fff; padding-left: 24px; }
footer .nav-sitemap .main > li ul li { line-height: 200%; }
footer .nav-sitemap .main > li ul li a { display: inline-block; color: #fff; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
@media only screen and (min-width: 1025px) { footer .nav-sitemap .main > li ul li a:hover { color: #90825D; } }
@media print { footer .nav-sitemap .main > li ul li a:hover { color: #90825D; } }
.ie8 footer .nav-sitemap .main > li ul li a:hover { color: #90825D; }
footer .nav-sitemap .sub { border-top: 1px solid #6E7283; margin-top: 80px; padding-top: 40px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { footer .nav-sitemap .sub { margin-top: 48px; padding-top: 24px; } }
@media only screen and (max-width: 767px) { footer .nav-sitemap .sub { margin-top: 40px; padding: 16px 0 24px; position: relative; } }
footer .nav-sitemap .sub .gnav-privacy { font-family: "Marcellus", serif; font-weight: 400; font-style: normal; }
@media only screen and (max-width: 767px) { footer .nav-sitemap .sub .gnav-privacy { width: 50%; } }
footer .nav-sitemap .sub .gnav-privacy a { color: #fff; text-transform: uppercase; font-size: 1.2rem; line-height: 1; letter-spacing: 0.08em; }
@media only screen and (min-width: 1025px) { footer .nav-sitemap .sub .gnav-privacy a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  footer .nav-sitemap .sub .gnav-privacy a:hover { color: #90825D; } }
@media print { footer .nav-sitemap .sub .gnav-privacy a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  footer .nav-sitemap .sub .gnav-privacy a:hover { color: #90825D; } }
.ie8 footer .nav-sitemap .sub .gnav-privacy a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 footer .nav-sitemap .sub .gnav-privacy a:hover { color: #90825D; }
@media only screen and (min-width: 768px) { footer .nav-sitemap .sub .item { display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; gap: 0 32px; } }
@media print { footer .nav-sitemap .sub .item { display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; gap: 0 32px; } }
.ie8 footer .nav-sitemap .sub .item { display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; gap: 0 32px; }
footer .nav-sitemap .sub .item .facebook { text-align: right; }
@media only screen and (max-width: 767px) { footer .nav-sitemap .sub .item .facebook { text-align: left; } }
footer .nav-sitemap .sub .item .facebook a { color: #fff; font-family: "Marcellus", serif; font-weight: 400; font-style: normal; font-size: 1.2rem; letter-spacing: 0.08em; line-height: 1; display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; gap: 0 8px; }
@media only screen and (min-width: 1025px) { footer .nav-sitemap .sub .item .facebook a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  footer .nav-sitemap .sub .item .facebook a:hover { color: #90825D; } }
@media print { footer .nav-sitemap .sub .item .facebook a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  footer .nav-sitemap .sub .item .facebook a:hover { color: #90825D; } }
.ie8 footer .nav-sitemap .sub .item .facebook a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 footer .nav-sitemap .sub .item .facebook a:hover { color: #90825D; }
footer .nav-sitemap .sub .item .facebook a img { display: inline-block; width: 16px; height: 16px; }
footer .nav-sitemap .sub .item .copyright { font-size: 1.1rem; font-family: "Marcellus", serif; font-weight: 400; font-style: normal; line-height: 1; text-align: right; color: #6E7283; }
@media only screen and (max-width: 767px) { footer .nav-sitemap .sub .item .copyright { position: absolute; width: 100%; bottom: 0; left: 0; right: 0; margin: 0 auto; text-align: center; } }

/* -----------------------------------------------------------
	下層共通スタイル
----------------------------------------------------------- */
.con-pageoutline { margin-top: 160px; }
@media only screen and (max-width: 767px) { .con-pageoutline { margin: 80px 0 48px; } }
.con-pageoutline .box-title { line-height: 1; }
.con-pageoutline .box-title .txt-en { color: #90825D; font-family: "Marcellus", serif; font-weight: 400; font-style: normal; text-transform: uppercase; font-size: 2rem; letter-spacing: 0.08em; margin-bottom: 24px; }
@media only screen and (max-width: 767px) { .con-pageoutline .box-title .txt-en { font-size: 1.6rem; margin-bottom: 16px; } }
.con-pageoutline .box-title h1 { letter-spacing: 0.08em; font-size: 4.8rem; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-pageoutline .box-title h1 { font-size: 4rem; } }
@media only screen and (max-width: 767px) { .con-pageoutline .box-title h1 { font-size: 2.8rem; } }
@media only screen and (min-width: 768px) { .con-pageoutline .box-index-img { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; margin-top: 120px; } }
@media print { .con-pageoutline .box-index-img { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; margin-top: 120px; } }
.ie8 .con-pageoutline .box-index-img { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; margin-top: 120px; }
@media only screen and (max-width: 767px) { .con-pageoutline .box-index-img { margin-top: 40px; } }
.con-pageoutline .box-index-img .img { overflow: hidden; display: block; height: 560px; }
@media only screen and (min-width: 768px) { .con-pageoutline .box-index-img .img { order: 2; width: 70%; } }
@media print { .con-pageoutline .box-index-img .img { order: 2; width: 70%; } }
.ie8 .con-pageoutline .box-index-img .img { order: 2; width: 70%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-pageoutline .box-index-img .img { width: 60%; height: 400px; } }
@media only screen and (max-width: 767px) { .con-pageoutline .box-index-img .img { width: 89.6%; margin-left: auto; height: 240px; } }
.con-pageoutline .box-index-img .img img { display: block; object-fit: cover; width: 100%; height: 100%; }
@media only screen and (min-width: 768px) { .con-pageoutline .box-index-img dl { order: 1; width: 30%; padding-left: 7.9vw; } }
@media print { .con-pageoutline .box-index-img dl { order: 1; width: 30%; padding-left: 7.9vw; } }
.ie8 .con-pageoutline .box-index-img dl { order: 1; width: 30%; padding-left: 7.9vw; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-pageoutline .box-index-img dl { width: 40%; } }
@media only screen and (max-width: 767px) { .con-pageoutline .box-index-img dl { padding-left: 16vw; margin-top: 48px; } }
.con-pageoutline .box-index-img dl dt { color: #90825D; text-transform: uppercase; font-family: "Marcellus", serif; font-weight: 400; font-style: normal; font-size: 1.3rem; line-height: 1; letter-spacing: 0.14em; margin-bottom: 32px; }
@media only screen and (max-width: 767px) { .con-pageoutline .box-index-img dl dt { font-size: 1.2rem; margin-bottom: 16px; } }
.con-pageoutline .box-index-img dl dd { padding-right: 24px; }
.con-pageoutline .box-index-img dl dd ul { padding-left: 1em; }
.con-pageoutline .box-index-img dl dd ul li { list-style-type: decimal; list-style-position: outside; padding-left: 0.05em; line-height: 2; font-size: 1.5rem; }
@media only screen and (min-width: 1025px) { .con-pageoutline .box-index-img dl dd ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-pageoutline .box-index-img dl dd ul li a:hover { color: #90825D; } }
@media print { .con-pageoutline .box-index-img dl dd ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-pageoutline .box-index-img dl dd ul li a:hover { color: #90825D; } }
.ie8 .con-pageoutline .box-index-img dl dd ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .con-pageoutline .box-index-img dl dd ul li a:hover { color: #90825D; }
.con-pageoutline .box-comingsoon { margin: 160px auto; }
@media only screen and (max-width: 767px) { .con-pageoutline .box-comingsoon { margin: 80px auto; } }
.con-pageoutline .box-comingsoon .txt { text-align: center; }

/* -----------------------------------------------------------
	パーツ
----------------------------------------------------------- */
.button-basic a { display: block; line-height: 1; padding: 20px 56px 20px 32px; background-image: url(../assets/common/icon-arrow.svg); background-position: right 32px center; background-repeat: no-repeat; background-size: 15px auto; -webkit-border-radius: 5rem; -moz-border-radius: 5rem; -ms-border-radius: 5rem; border-radius: 5rem; border: 1px solid #DEDEDE; }
@media only screen and (min-width: 1025px) { .button-basic a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .button-basic a:hover { background-color: #292929; background-image: url(../assets/common/icon-arrow-wh.svg); color: #fff; } }
@media print { .button-basic a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .button-basic a:hover { background-color: #292929; background-image: url(../assets/common/icon-arrow-wh.svg); color: #fff; } }
.ie8 .button-basic a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .button-basic a:hover { background-color: #292929; background-image: url(../assets/common/icon-arrow-wh.svg); color: #fff; }
.button-basic.en a { font-family: "Marcellus", serif; font-weight: 400; font-style: normal; font-size: 1.4rem; text-transform: uppercase; letter-spacing: 0.08em; }
@media only screen and (max-width: 767px) { .button-basic.en a { font-size: 1.2rem; } }
.button-basic.white a { color: #fff; background-image: url(../assets/common/icon-arrow-wh.svg); }
@media only screen and (min-width: 1025px) { .button-basic.white a:hover { background-color: #fff; background-image: url(../assets/common/icon-arrow.svg); color: #6E7283; } }
@media print { .button-basic.white a:hover { background-color: #fff; background-image: url(../assets/common/icon-arrow.svg); color: #6E7283; } }
.ie8 .button-basic.white a:hover { background-color: #fff; background-image: url(../assets/common/icon-arrow.svg); color: #6E7283; }
.button-basic.blank a { background-image: none; position: relative; }
@media only screen and (min-width: 1025px) { .button-basic.blank a:hover { background-image: none; }
  .button-basic.blank a:hover:after { background-image: url(../assets/common/icon-arrow-wh.svg); } }
@media print { .button-basic.blank a:hover { background-image: none; }
  .button-basic.blank a:hover:after { background-image: url(../assets/common/icon-arrow-wh.svg); } }
.ie8 .button-basic.blank a:hover { background-image: none; }
.ie8 .button-basic.blank a:hover:after { background-image: url(../assets/common/icon-arrow-wh.svg); }
.button-basic.blank a:after { content: ""; background-image: url(../assets/common/icon-arrow.svg); background-position: center; background-repeat: no-repeat; background-size: contain; width: 15px; height: 15px; display: block; position: absolute; right: 32px; top: calc(50% - 8px); -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; transform: rotate(-45deg); }
@media only screen and (max-width: 767px) { .button-basic.blank a:after { background-size: 10px auto; width: 24px; height: 13px; } }
@media only screen and (min-width: 1025px) { .button-basic.blank.white a:hover { background-image: none; }
  .button-basic.blank.white a:hover:after { background-image: url(../assets/common/icon-arrow.svg); } }
@media print { .button-basic.blank.white a:hover { background-image: none; }
  .button-basic.blank.white a:hover:after { background-image: url(../assets/common/icon-arrow.svg); } }
.ie8 .button-basic.blank.white a:hover { background-image: none; }
.ie8 .button-basic.blank.white a:hover:after { background-image: url(../assets/common/icon-arrow.svg); }
.button-basic.blank.white a:after { background-image: url(../assets/common/icon-arrow-wh.svg); }

.button-secondary a { display: -webkit-inline-flex; display: inline-flex; -webkit-align-items: center; align-items: center; gap: 0 24px; line-height: 1; }
@media only screen and (min-width: 1025px) { .button-secondary a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .button-secondary a:hover { color: #90825D; }
  .button-secondary a:hover:after { background-color: #292929; background-image: url(../assets/common/icon-arrow-wh.svg); } }
@media print { .button-secondary a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .button-secondary a:hover { color: #90825D; }
  .button-secondary a:hover:after { background-color: #292929; background-image: url(../assets/common/icon-arrow-wh.svg); } }
.ie8 .button-secondary a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .button-secondary a:hover { color: #90825D; }
.ie8 .button-secondary a:hover:after { background-color: #292929; background-image: url(../assets/common/icon-arrow-wh.svg); }
@media only screen and (max-width: 767px) { .button-secondary a { gap: 0 8px; } }
.button-secondary a:after { content: ""; background-image: url(../assets/common/icon-arrow.svg); background-position: center; background-repeat: no-repeat; background-size: 14px auto; width: 48px; height: 26px; border: 1px solid #DEDEDE; -webkit-border-radius: 5rem; -moz-border-radius: 5rem; -ms-border-radius: 5rem; border-radius: 5rem; display: block; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
@media only screen and (max-width: 767px) { .button-secondary a:after { background-size: 10px auto; width: 24px; height: 13px; } }
.button-secondary.white a { color: #fff; }
@media only screen and (min-width: 1025px) { .button-secondary.white a:hover { color: #6E7283; }
  .button-secondary.white a:hover:after { background-color: #fff; background-image: url(../assets/common/icon-arrow.svg); } }
@media print { .button-secondary.white a:hover { color: #6E7283; }
  .button-secondary.white a:hover:after { background-color: #fff; background-image: url(../assets/common/icon-arrow.svg); } }
.ie8 .button-secondary.white a:hover { color: #6E7283; }
.ie8 .button-secondary.white a:hover:after { background-color: #fff; background-image: url(../assets/common/icon-arrow.svg); }
.button-secondary.white a:after { background-image: url(../assets/common/icon-arrow-wh.svg); }

.title-basic { margin-bottom: 40px; }
.title-basic span { display: block; line-height: 1.3; }
.title-basic span.en { font-family: "Marcellus", serif; font-weight: 400; font-style: normal; color: #90825D; text-transform: uppercase; letter-spacing: 0.14em; margin-bottom: 16px; }
.title-basic span.jp { font-weight: 400; font-size: 3.2rem; letter-spacing: 0.04em; }
@media only screen and (max-width: 767px) { .title-basic span.jp { font-size: 2.4rem; } }
.title-basic.center { text-align: center; }

.txt-link { display: inline-block; position: relative; padding-right: 56px; }
@media only screen and (min-width: 1025px) { .txt-link:hover:after { background: url(../assets/common/icon-arrow-wh.svg) center center no-repeat; background-size: contain; }
  .txt-link:hover:before { border: 1px solid #292929; background-color: #292929; } }
@media print { .txt-link:hover:after { background: url(../assets/common/icon-arrow-wh.svg) center center no-repeat; background-size: contain; }
  .txt-link:hover:before { border: 1px solid #292929; background-color: #292929; } }
.ie8 .txt-link:hover:after { background: url(../assets/common/icon-arrow-wh.svg) center center no-repeat; background-size: contain; }
.ie8 .txt-link:hover:before { border: 1px solid #292929; background-color: #292929; }
@media only screen and (max-width: 767px) { .txt-link { padding-right: 40px; } }
.txt-link:after { content: ""; background: url(../assets/common/icon-arrow.svg) center center no-repeat; background-size: contain; width: 14px; height: 11px; position: absolute; top: calc(50% - 2px); right: 18px; transform: rotate(-25deg); display: block; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
@media only screen and (max-width: 767px) { .txt-link:after { top: calc(50% - 1px); width: 10px; height: 7px; right: 12px; } }
.txt-link:before { content: ""; border: 1px solid #DEDEDE; position: absolute; top: -2px; right: 0; width: 48px; height: 26px; -webkit-border-radius: 999px; -moz-border-radius: 999px; -ms-border-radius: 999px; border-radius: 999px; display: block; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
@media only screen and (max-width: 767px) { .txt-link:before { top: 1px; width: 32px; height: 16px; } }

/* -----------------------------------------------------------
	inview
----------------------------------------------------------- */
.anime-fade-in { opacity: 0; }
.anime-fade-in.js-inview-in { -webkit-animation-duration: 0.8s; animation-duration: 0.8s; -webkit-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation-name: fade-in; animation-name: fade-in; transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1); }

@-webkit-keyframes fade-in { from { opacity: 0; transform: scale(2); -webkit-filter: blur(100px); -moz-filter: blur(100px); -ms-filter: blur(100px); filter: blur(100px); -webkit-transform: translate3d(0, 40px, 0); transform: translate3d(0, 40px, 0); }
  to { opacity: 1; transform: scale(1); -webkit-filter: blur(0px); -moz-filter: blur(0px); -ms-filter: blur(0px); filter: blur(0px); -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } }
@keyframes fade-in { from { opacity: 0; transform: scale(2); -webkit-filter: blur(100px); -moz-filter: blur(100px); -ms-filter: blur(100px); filter: blur(100px); -webkit-transform: translate3d(0, 40px, 0); transform: translate3d(0, 40px, 0); }
  to { opacity: 1; transform: scale(1); -webkit-filter: blur(0px); -moz-filter: blur(0px); -ms-filter: blur(0px); filter: blur(0px); -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } }
.fade-in-stairs > * { opacity: 0; }
.fade-in-stairs.js-inview-in > * { -webkit-animation-duration: 0.8s; animation-duration: 0.8s; -webkit-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation-name: fade-in; animation-name: fade-in; transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1); }
.fade-in-stairs.js-inview-in > *:nth-child(2) { animation-delay: .2s; }
.fade-in-stairs.js-inview-in > *:nth-child(3) { animation-delay: .4s; }
.fade-in-stairs.js-inview-in > *:nth-child(4) { animation-delay: .6s; }
.fade-in-stairs.js-inview-in > *:nth-child(5) { animation-delay: .8s; }
.fade-in-stairs.js-inview-in > *:nth-child(6) { animation-delay: 1s; }
.fade-in-stairs.js-inview-in > *:nth-child(7) { animation-delay: 1.2s; }
.fade-in-stairs.js-inview-in > *:nth-child(8) { animation-delay: 1.4s; }
.fade-in-stairs.js-inview-in > *:nth-child(9) { animation-delay: 1.6s; }
.fade-in-stairs.js-inview-in > *:nth-child(10) { animation-delay: 1.8s; }
.fade-in-stairs.js-inview-in > *:nth-child(11) { animation-delay: 2s; }
.fade-in-stairs.js-inview-in > *:nth-child(12) { animation-delay: 2.2s; }
.fade-in-stairs.js-inview-in > *:nth-child(13) { animation-delay: 2.4s; }
.fade-in-stairs.js-inview-in > *:nth-child(14) { animation-delay: 2.6s; }
.fade-in-stairs.js-inview-in > *:nth-child(15) { animation-delay: 2.8s; }
.fade-in-stairs.js-inview-in > *:nth-child(16) { animation-delay: 3s; }
.fade-in-stairs.js-inview-in > *:nth-child(17) { animation-delay: 3.2s; }
.fade-in-stairs.js-inview-in > *:nth-child(18) { animation-delay: 3.4s; }
.fade-in-stairs.js-inview-in > *:nth-child(19) { animation-delay: 3.6s; }
.fade-in-stairs.js-inview-in > *:nth-child(20) { animation-delay: 3.8s; }
.fade-in-stairs.js-inview-in > *:nth-child(21) { animation-delay: 4s; }
.fade-in-stairs.js-inview-in > *:nth-child(22) { animation-delay: 4.2s; }
.fade-in-stairs.js-inview-in > *:nth-child(23) { animation-delay: 4.4s; }
.fade-in-stairs.js-inview-in > *:nth-child(24) { animation-delay: 4.6s; }
.fade-in-stairs.js-inview-in > *:nth-child(25) { animation-delay: 4.8s; }
.fade-in-stairs.js-inview-in > *:nth-child(26) { animation-delay: 5s; }
.fade-in-stairs.js-inview-in > *:nth-child(27) { animation-delay: 5.2s; }
.fade-in-stairs.js-inview-in > *:nth-child(28) { animation-delay: 5.4s; }
.fade-in-stairs.js-inview-in > *:nth-child(29) { animation-delay: 5.6s; }
.fade-in-stairs.js-inview-in > *:nth-child(30) { animation-delay: 5.8s; }
