@charset "UTF-8";
/* Gulp compiles file */

@font-face{
  font-family:"ShipporiMincho-Fallback";
  src:local("Yu Mincho"), local("YuMincho"), local("Hiragino Mincho ProN"), local("MS PMincho");
  size-adjust:102%;
  ascent-override:95%;
  descent-override:20%;
}
@font-face{
  font-family:"ShueiGoGin-Fallback";
  src:local("Hiragino Sans"), local("Hiragino Kaku Gothic ProN"), local("Yu Gothic UI"), local("Meiryo");
  size-adjust:100%;
  ascent-override:92%;
  descent-override:18%;
}
@font-face{
  font-family:"TheSeasons-Fallback";
  src:local("Times New Roman"), local("Times"), local("Georgia");
  size-adjust:94%;
  ascent-override:90%;
  descent-override:20%;
}
@font-face{
  font-family:"Cormorant-Fallback";
  src:local("Garamond"), local("Palatino Linotype"), local("Georgia");
  size-adjust:92%;
  ascent-override:90%;
  descent-override:25%;
}
html{
  scroll-behavior:smooth;
}
html{
  color-scheme:only light;
}

body{
  font-family:var(--ff_go), "ShueiGoGin-Fallback", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.18em;
  color:var(--bc_black);
  background-color:var(--bc_gray_b);
  -webkit-font-smoothing:subpixel-antialiased;
  -webkit-font-feature-settings:"palt";
  font-feature-settings:"palt";
}
html.wf-loading.wf-inactive body, html.wf-active body{
  -webkit-transition:opacity 0.7s;
  transition:opacity 0.7s;
  opacity:1;
  visibility:visible;
}
html.wf-loading body{
  opacity:0;
  visibility:hidden;
}
body, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, td, th, figure{
  margin:0;
}

dl, dt, dd{
  padding:0;
}

ol, ul, li{
  padding:0;
  list-style:none;
}

img, picture{
  max-width:100%;
  display:block;
}

img{
  border-style:none;
}

a{
  text-decoration:none;
  color:inherit;
  -webkit-text-decoration-skip:ink;
  text-decoration-skip-ink:auto;
}

input, select, button, optgroup, textarea{
  font-family:inherit;
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  background:none;
  border:none;
  outline:0;
  margin:0;
  padding:0;
  border-radius:0;
}

button, select, input[type=submit]{
  cursor:pointer;
  text-transform:none;
}

:where(button){
  color:inherit;
}
:where(p, h1, h2, h3, h4, h5, h6, li, dt, dd, td, th, figcaption, blockquote, pre, address){
  overflow-wrap:anywhere;
  word-break:normal;
  line-break:strict;
}
:where([id]:target, input, textarea, select, button){
  scroll-margin-top:calc(var(--scroll-margin-top) * 0.1rem);
}
:root{
  --ff-default:'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'Noto Sans JP', sans-serif;
  --ff_min:'shippori-mincho-b1', sans-serif;
  --ff_go:'dnp-shuei-gothic-gin-std', sans-serif;
  --ff_en:'the-seasons', sans-serif;
  --ff_cormorant:'cormorant-infant', sans-serif;
  --bc_ff:#ffffff;
  --bc_00:#000000;
  --bc_c00:#cc0000;
  --bc_00c:#0000cc;
  --bc_black:#231815;
  --bc_white:#ffffff;
  --bc_gold:#787169;
  --bc_gray:#64615e;
  --bc_gray_b:#edece9;
  --bc_gray_c:#d9d9d9;
  --bc_accent:#936840;
  --bc_red:#8e3a3a;
  --bc_green:#283f26;
  --bc_line:#06c755;
  --bc_ff_RGB:255, 255, 255;
  --bc_00_RGB:0, 0, 0;
  --bc_c00_RGB:204, 0, 0;
  --bc_00c_RGB:0, 0, 204;
  --bc_black_RGB:35, 24, 21;
  --bc_white_RGB:255, 255, 255;
  --bc_gold_RGB:120, 113, 105;
  --bc_gray_RGB:100, 97, 94;
  --bc_gray_b_RGB:237, 236, 233;
  --bc_gray_c_RGB:217, 217, 217;
  --bc_accent_RGB:147, 104, 64;
  --bc_red_RGB:142, 58, 58;
  --bc_green_RGB:40, 63, 38;
  --bc_line_RGB:6, 199, 85;
  --pc-min-size:1000;
  --base-size:1600;
  --sp-base-size:390;
  --variable-length:var(--base-size) * 100vw;
}
:root{
  --scrollbar:0;
}
:where(.-of){
  display:block;
  line-height:0;
}
:where(.-of) > img{
  -o-object-fit:cover;
  object-fit:cover;
  font-family:"object-fit: cover;";
  background-size:cover;
  background-position:center center;
  width:100%;
  height:100%;
}

:where(.-of_contain){
  display:block;
  line-height:0;
}
:where(.-of_contain) > img{
  -o-object-fit:contain;
  object-fit:contain;
  font-family:"object-fit: contain;";
  background-size:contain;
  background-position:center center;
  width:100%;
  height:100%;
}

:where(.-line_clamp){
  display:-webkit-inline-box;
  -webkit-box-orient:vertical;
  text-align:left;
  overflow:hidden;
}

:where(.-bg){
  position:absolute;
  z-index:-1;
  top:0;
  bottom:0;
  left:0;
  right:0;
  overflow:hidden;
}
:where(.-f_min){
  font-family:var(--ff_min), "ShipporiMincho-Fallback", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

:where(.-f_min_m){
  font-family:var(--ff_min), "ShipporiMincho-Fallback", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
  font-style:normal;
  font-weight:500;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

:where(.-f_go){
  font-family:var(--ff_go), "ShueiGoGin-Fallback", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

:where(.-f_go_m){
  font-family:var(--ff_go), "ShueiGoGin-Fallback", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;
  font-style:normal;
  font-weight:500;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

:where(.-f_en){
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:300;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

:where(.-f_en_r){
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

:where(.-f_cormorant){
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:600;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

:where(.-fz_xxs){
  font-size:0.5em;
}

:where(.-fz_xs){
  font-size:0.6em;
}

:where(.-fz_s){
  font-size:0.8em;
}

:where(.-fz_m){
  font-size:1em;
}

:where(.-fz_l){
  font-size:1.2em;
}

:where(.-fz_xl){
  font-size:1.4em;
}

:where(.-small){
  font-size:0.8em;
}

:where(.-fw_l){
  font-weight:300;
}

:where(.-fw_r){
  font-weight:400;
}

:where(.-fw_m){
  font-weight:500;
}

:where(.-en){
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:300;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.03em;
  line-height:1.1;
}

:where(.-ja){
  font-family:var(--ff_go), "ShueiGoGin-Fallback", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.18em;
  line-height:1;
}
.-guideline{
  display:none;
  position:fixed;
  z-index:10000;
  top:0;
  left:0;
  width:100%;
  height:100vh;
  overflow:hidden;
  pointer-events:none;
}
.-guideline::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:1px;
  background-color:rgba(var(--bc_red_RGB), 0.5);
}
.-guideline.-visible{
  display:block;
}
.-guideline.-visible .-guideline_basic{
  display:block;
}
.-guideline.-visible.-layout1{
  display:block;
}
.-guideline.-visible.-layout1 .-guideline_basic{
  display:none;
}
.-guideline.-visible.-layout1 .-guideline-layout1{
  display:block;
}
.-guideline.-visible.-layout2{
  display:block;
}
.-guideline.-visible.-layout2 .-guideline_basic{
  display:none;
}
.-guideline.-visible.-layout2 .-guideline-layout2{
  display:grid;
  grid-template-columns:calc(50% - 3.6rem) 1fr;
}

.-guideline_basic{
  display:none;
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
}
.-guideline_basic::before, .-guideline_basic::after{
  content:"";
  position:absolute;
}
.-guideline_basic::before{
  top:0;
  bottom:0;
  width:1px;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  border-left:1px solid rgba(var(--bc_c00_RGB), 0.5);
  border-right:1px solid rgba(var(--bc_c00_RGB), 0.5);
}
.-guideline_basic::after{
  display:inline-block;
  background-color:rgba(var(--bc_c00_RGB), 1);
  color:var(--bc_white);
  line-height:1.6;
}
.-guideline_basic > span{
  position:relative;
  display:block;
  margin:auto;
}
.-guideline_basic > span::before, .-guideline_basic > span::after{
  content:"";
  position:absolute;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.-guideline_basic > span::before{
  left:0;
  right:0;
  top:0;
  height:100vh;
}
.-guideline_basic > span::after{
  display:inline-block;
  color:var(--bc_white);
  font-size:1.4rem;
  line-height:1.6;
  padding:0 1rem;
}
.-guideline_basic .-w02{
  width:calc(136rem - var(--scrollbar));
}
.-guideline_basic .-w02::before{
  border-left:1px solid rgba(var(--bc_00c_RGB), 0.5);
  border-right:1px solid rgba(var(--bc_00c_RGB), 0.5);
}
.-guideline_basic .-w02::after{
  background-color:rgba(var(--bc_00c_RGB), 0.7);
}
.-guideline_basic .-w03{
  width:calc(120rem - var(--scrollbar));
}
.-guideline_basic .-w03::before{
  border-left:1px solid rgba(var(--bc_00c_RGB), 0.3);
  border-right:1px solid rgba(var(--bc_00c_RGB), 0.3);
}
.-guideline_basic .-w03::after{
  background-color:rgba(var(--bc_00c_RGB), 0.5);
}
.-guideline_basic .-w04::before{
  border-left:1px solid rgba(var(--bc_00c_RGB), 0.8);
  border-right:1px solid rgba(var(--bc_00c_RGB), 0.8);
}
.-guideline_basic .-w04::after{
  background-color:rgba(var(--bc_00c_RGB), 0.8);
}
[data-inview]{
  opacity:0;
  -webkit-transition:opacity 1s;
  transition:opacity 1s;
}
[data-inview].is-inview{
  opacity:1;
}

[data-inview=fade-up]{
  opacity:0;
  -webkit-transform:translateY(15px);
  transform:translateY(15px);
  -webkit-transition:opacity 0.7s, -webkit-transform 1s;
  transition:opacity 0.7s, -webkit-transform 1s;
  transition:opacity 0.7s, transform 1s;
  transition:opacity 0.7s, transform 1s, -webkit-transform 1s;
}
[data-inview=fade-up].fade-up{
  -webkit-transform:translateY(0);
  transform:translateY(0);
  opacity:1;
}

[data-inview=fade-up2]{
  opacity:0;
  -webkit-transform:translateY(15px);
  transform:translateY(15px);
  -webkit-transition:opacity 1.5s, -webkit-transform 1s;
  transition:opacity 1.5s, -webkit-transform 1s;
  transition:opacity 1.5s, transform 1s;
  transition:opacity 1.5s, transform 1s, -webkit-transform 1s;
}
[data-inview=fade-up2].fade-up2{
  -webkit-transform:translateY(0);
  transform:translateY(0);
  opacity:1;
}

[data-inview-tw]{
  opacity:0;
  -webkit-transition:opacity 0.7s;
  transition:opacity 0.7s;
}
[data-inview-tw].is-inview{
  opacity:1;
  -webkit-transition:opacity 1s;
  transition:opacity 1s;
}

:root{
  --fv-opacity-duration:2s;
  --fv-scale-duration:5s;
}

[data-fv-fade]{
  overflow:hidden;
}
[data-fv-fade] [data-fv-element=fade]{
  opacity:0;
  -webkit-transition-delay:var(--fv-delay, 0s);
  transition-delay:var(--fv-delay, 0s);
  will-change:opacity;
}
[data-fv-fade].is-animated [data-fv-element=fade]{
  opacity:1;
  -webkit-transition:opacity var(--fv-duration, 1.2s) cubic-bezier(0.25, 1, 0.5, 1);
  transition:opacity var(--fv-duration, 1.2s) cubic-bezier(0.25, 1, 0.5, 1);
}
[data-fv-fade] [data-fv-element=scale-fade] img{
  opacity:0;
  -webkit-transform:scale(1.07);
  transform:scale(1.07);
  -webkit-transition-delay:var(--fv-delay, 0s);
  transition-delay:var(--fv-delay, 0s);
  will-change:opacity, transform;
}
[data-fv-fade].is-animated [data-fv-element=scale-fade] img{
  opacity:1;
  -webkit-transform:scale(1);
  transform:scale(1);
  -webkit-transition:opacity var(--fv-opacity-duration) cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform var(--fv-scale-duration) cubic-bezier(0.25, 1, 0.5, 1);
  transition:opacity var(--fv-opacity-duration) cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform var(--fv-scale-duration) cubic-bezier(0.25, 1, 0.5, 1);
  transition:opacity var(--fv-opacity-duration) cubic-bezier(0.25, 1, 0.5, 1), transform var(--fv-scale-duration) cubic-bezier(0.25, 1, 0.5, 1);
  transition:opacity var(--fv-opacity-duration) cubic-bezier(0.25, 1, 0.5, 1), transform var(--fv-scale-duration) cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform var(--fv-scale-duration) cubic-bezier(0.25, 1, 0.5, 1);
}
.l-header{
  position:relative;
}
.l-header_inner{
  position:fixed;
  top:0;
  left:0;
  z-index:100;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  width:100%;
  -webkit-transition:height 1s, opacity 1s;
  transition:height 1s, opacity 1s;
  opacity:1;
  pointer-events:none;
}
.l-header_inner::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:7.2rem;
  z-index:-1;
  background-color:rgba(var(--bc_white_RGB), 0.7);
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
  -webkit-transform:translateY(-100%);
  transform:translateY(-100%);
  -webkit-transition:-webkit-transform 1s;
  transition:-webkit-transform 1s;
  transition:transform 1s;
  transition:transform 1s, -webkit-transform 1s;
}
.l-header_logo{
  position:relative;
  z-index:10;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-transition:opacity 0.3s, -webkit-transform 1s;
  transition:opacity 0.3s, -webkit-transform 1s;
  transition:transform 1s, opacity 0.3s;
  transition:transform 1s, opacity 0.3s, -webkit-transform 1s;
  -webkit-transform:translateY(-200%);
  transform:translateY(-200%);
}
.l-header_logo img{
  width:100%;
  height:auto;
}
.no-touchevents .l-header_logo:hover{
  opacity:0.5;
}
.l-header_nav{
  font-size:1.4rem;
  letter-spacing:0.12em;
  line-height:1;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  gap:2rem;
  -webkit-transition:color 0.5s;
  transition:color 0.5s;
  pointer-events:all;
}
.l-header_sns_link{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  gap:0.5rem;
}
.l-header_sns_link a{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  pointer-events:all;
}
.l-header_sns_link i{
  -webkit-transition:background 0.5s, opacity 0.3s;
  transition:background 0.5s, opacity 0.3s;
}
html:not(.is-ready) .l-header .l-header_inner{
  -webkit-transition:none !important;
  transition:none !important;
  opacity:0;
}
body:not(.is-header_fix) .l-header .l-header_nav{
  color:var(--bc_white);
}
body:not(.is-header_fix) .l-header .l-header_nav .m-underline span::before{
  background-color:var(--bc_white);
}
body:not(.is-header_fix) .l-header .l-header_sns_link i{
  background:var(--bc_white);
}
body:not(.is-header_fix):has(.l-archive, .l-detail, .l-blog_detail) .l-header .l-header_nav{
  color:var(--bc_black);
}
body:not(.is-header_fix):has(.l-archive, .l-detail, .l-blog_detail) .l-header .l-header_nav .m-underline span::before{
  background-color:var(--bc_black);
}
body:not(.is-header_fix):has(.l-archive, .l-detail, .l-blog_detail) .l-header .l-header_sns_link i{
  background:var(--bc_black);
}
body:not(.is-header_fix):has(.sec-fv.-negative) .l-header .l-header_nav{
  color:var(--bc_black);
}
body:not(.is-header_fix):has(.sec-fv.-negative) .l-header .l-header_sns_link i{
  background:var(--bc_black);
}
body:not(.is-header_fix):has(.sec-fv.-negative) .l-header .sec-fv_logo{
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
  background:var(--bc_gold);
  -webkit-mask-image:url("../img/common/header_logo.svg");
  mask-image:url("../img/common/header_logo.svg");
}
body:not(.is-header_fix):has(.sec-fv.-negative) .l-header .sec-fv_logo img{
  opacity:0;
}
.is-header_fix .l-header .l-header_logo{
  -webkit-transform:translateY(0);
  transform:translateY(0);
}

#is-drawer{
  display:none;
}

.l-menu_drawer{
  position:fixed;
  -webkit-overflow-scrolling:touch;
  top:0;
  left:0;
  width:100%;
  bottom:0;
  opacity:0;
  z-index:1000;
  overflow-x:hidden;
  overflow-y:auto;
  pointer-events:none;
  -webkit-transition:opacity 0.4s;
  transition:opacity 0.4s;
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}
.l-menu_drawer_inner{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  width:100%;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.l-menu_drawer_left{
  position:relative;
  color:var(--bc_white);
}
.l-menu_drawer_left_inner{
  position:relative;
}
.l-menu_drawer_right{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  background-color:var(--bc_white);
}
.l-menu_drawer_topics{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}
.l-menu_drawer_topics_detail{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}
.l-menu_drawer_topics .item{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:start;
  -ms-flex-align:start;
  align-items:flex-start;
}
.l-menu_drawer_topics .item::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  height:1px;
  background-color:var(--bc_gray_b);
}
.no-touchevents .l-menu_drawer_topics .item:hover .m-btn02::before{
  -webkit-animation-name:anim-underline02;
  animation-name:anim-underline02;
  -webkit-animation-duration:0.5s;
  animation-duration:0.5s;
  -webkit-animation-timing-function:ease-in-out;
  animation-timing-function:ease-in-out;
  -webkit-animation-fill-mode:forwards;
  animation-fill-mode:forwards;
}
.no-touchevents .l-menu_drawer_topics .item:hover .thumb img{
  -webkit-transform:scale(1.05);
  transform:scale(1.05);
  opacity:0.5;
}
.l-menu_drawer_topics .thumb{
  overflow:hidden;
  aspect-ratio:200/116.67;
  height:auto;
}
.l-menu_drawer_topics .thumb img{
  -webkit-transition:opacity 0.7s, -webkit-transform 0.3s;
  transition:opacity 0.7s, -webkit-transform 0.3s;
  transition:transform 0.3s, opacity 0.7s;
  transition:transform 0.3s, opacity 0.7s, -webkit-transform 0.3s;
  -webkit-transform:scale(1);
  transform:scale(1);
  opacity:1;
}
.l-menu_drawer_logo img{
  width:100%;
  height:auto;
}
.l-menu_drawer_tel{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}
.l-menu_drawer_tel .m-title .-en{
  color:var(--bc_white);
}
.l-menu_drawer_detail{
  text-align:center;
}
.l-menu_drawer_detail .tel{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:end;
  -ms-flex-align:end;
  align-items:flex-end;
  margin-top:2rem;
  margin-bottom:1rem;
}
.l-menu_drawer_detail .tel > dt{
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-size:2rem;
  letter-spacing:0.03em;
  line-height:1.1;
  margin-right:0.25em;
}
.l-menu_drawer_detail .tel > dd{
  font-family:var(--ff_min), "ShipporiMincho-Fallback", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.08em;
  line-height:1;
}
.l-menu_drawer_detail .time,
.l-menu_drawer_detail .holiday{
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  font-size:1.3rem;
  letter-spacing:0.1em;
  line-height:1;
}
.l-menu_drawer_detail .time > dt,
.l-menu_drawer_detail .holiday > dt{
  margin-right:0.25em;
}
.l-menu_drawer_detail .time + .time::before{
  content:"/";
  display:inline-block;
  width:1.5em;
  padding-right:0.5em;
  text-align:center;
}
.l-menu_drawer_link{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
.l-menu_drawer_link .m-btn01.-white span{
  color:var(--bc_accent);
}
.l-menu_drawer_link .m-btn01.-white i{
  background:var(--bc_accent);
}
.l-menu_drawer_gnav{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
}
.l-menu_drawer_gnav a{
  font-size:1.4rem;
  letter-spacing:0.12em;
  line-height:1;
}
.l-menu_drawer_gnav .m-underline span::before{
  background-color:var(--bc_white);
}
.l-menu_drawer .m-title .-en{
  font-size:2.8rem;
  font-weight:300;
  letter-spacing:0.05em;
  line-height:1;
}
.l-menu_drawer .m-description{
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
}
.l-menu_drawer .m-btn02{
  position:absolute;
  bottom:0;
  right:0;
}
.l-menu_drawer .sns_link{
  text-align:center;
}
html:not(.is-ready) .l-menu_drawer{
  -webkit-transition:none;
  transition:none;
  opacity:0;
}
body:has(#is-drawer:checked) .l-menu_drawer{
  opacity:1;
  pointer-events:auto;
}

.l-footer{
  background-position:center center;
  background-size:cover;
}
.l-footer_inner{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  margin-inline:auto;
}
.l-footer_wrapper{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
.l-footer_signature{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  gap:1.2rem;
  font-weight:300;
  letter-spacing:0.12em;
  line-height:1.8;
  color:var(--bc_white);
}
.l-footer_signature > dt{
  font-size:1.6rem;
  line-height:1.8;
}
.l-footer_signature address{
  font-style:normal;
}
.l-footer_signature .tel{
  margin-top:1em;
}
.l-footer_signature .sns_link{
  margin-top:3rem;
}
.l-footer_signature .sns_link i{
  width:2.6rem;
  height:2.6rem;
  background:var(--bc_white);
}
.l-footer_snav_wrap{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
}
.l-footer_snav, .l-footer_external{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
  gap:1.6rem;
  font-size:1.3rem;
  font-weight:300;
  letter-spacing:0.12em;
  line-height:1;
  color:var(--bc_white);
}
.l-footer_snav span, .l-footer_external span{
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  white-space:pre;
}
.l-footer_external i{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  width:2.4rem;
  height:2.4rem;
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
  -webkit-mask-image:url("../img/common/ico_external.svg");
  mask-image:url("../img/common/ico_external.svg");
  background:var(--bc_white);
  margin-left:0.5rem;
}
.l-footer_gnav{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  font-weight:300;
  letter-spacing:0.12em;
  line-height:1;
  color:var(--bc_white);
}
.l-footer_gnav span{
  white-space:pre;
}
.l-footer_logo{
  -webkit-transition:opacity 0.3s;
  transition:opacity 0.3s;
}
.l-footer_logo img{
  width:100%;
  height:auto;
}
.no-touchevents .l-footer_logo:hover{
  opacity:0.5;
}
.l-footer_copyright{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  height:5.5rem;
  font-weight:300;
  font-size:1.3rem;
  letter-spacing:0.05em;
  line-height:1;
  color:var(--bc_white);
}
.l-footer .m-underline span::before{
  background-color:var(--bc_white);
}

.l-contact{
  position:relative;
  width:100%;
  overflow:hidden;
}
.l-contact_bg{
  position:absolute;
  bottom:-10%;
  z-index:-1;
}
.l-contact_bg{
  width:100%;
  height:auto;
}
.l-contact_inner{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  margin-inline:auto;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.l-contact_tel_detail{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  color:var(--bc_white);
}
.l-contact_tel_detail .tel{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:end;
  -ms-flex-align:end;
  align-items:flex-end;
}
.l-contact_tel_detail .tel > dt{
  letter-spacing:0.03em;
  line-height:1.1;
}
.l-contact_tel_detail .tel > dd{
  letter-spacing:0.08em;
  line-height:1;
}
.l-contact_tel_detail .time,
.l-contact_tel_detail .holiday{
  font-weight:400;
  letter-spacing:0.1em;
  line-height:1.6;
}
.l-contact_tel_detail .time > dt,
.l-contact_tel_detail .holiday > dt{
  margin-right:0.5em;
}
.l-contact_link{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
}
.l-contact .m-title .-en{
  color:var(--bc_white);
}
.l-contact .m-btn01 i{
  position:absolute;
}
.l-contact .m-btn01.-white span{
  color:var(--bc_accent);
}
.l-contact .m-btn01.-white i{
  background:var(--bc_accent);
}
.l-content_wrap{
  position:relative;
  width:100%;
}

.l-link{
  display:block;
  text-align:center;
  padding-block:0.4rem;
}

.l-inline{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
}

.l-indent{
  text-indent:1em;
}
:where(.l-sec_tit) .m-title{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  -webkit-box-align:start;
  -ms-flex-align:start;
  align-items:flex-start;
  gap:2rem;
}
:where(.l-sec_tit).-center .m-title{
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}

:where(.l-elem_tit){
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
:where(.l-elem_tit) .m-title{
  position:relative;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}
:where(.l-elem_tit) .m-title .-en{
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  font-size:1.8rem;
  font-weight:400;
  letter-spacing:0.12em;
  line-height:1;
}
:where(.l-elem_tit) .m-title .-en i{
  margin-right:0.25em;
}
:where(.l-elem_tit) .m-title .-ja{
  position:absolute;
  font-size:1.2rem;
  font-weight:400;
  letter-spacing:0.18em;
  line-height:1;
}
:where(.l-elem_tit):has(.-negative) .m-headline{
  color:var(--bc_white);
}
:where(.l-elem_tit) .m-headline{
  letter-spacing:0.15em;
}
:where(.l-elem_tit) > dd{
  position:relative;
}

:where(.l-cont_tit) :where(.m-title){
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  -webkit-box-align:start;
  -ms-flex-align:start;
  align-items:flex-start;
  gap:2rem;
}
:where(.l-cont_tit) .-ja{
  font-family:var(--ff_min), "ShipporiMincho-Fallback", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
  font-style:normal;
  font-weight:500;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  padding-inline:0.5em;
}
:where(.l-cont_tit):has(.-negative) .-ja{
  color:var(--bc_gray);
}
:where(.l-cont_tit).-center .m-title{
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}

:where(.l-cont_header) .sec-fv_inner{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  width:100%;
}
:where(.l-cont_header) .sec-fv_logo{
  position:absolute;
  aspect-ratio:16/19.1;
  height:auto;
}
:where(.l-cont_header) .sec-fv_logo a{
  display:block;
  width:100%;
  height:100%;
}
:where(.l-cont_header) .sec-fv_logo img{
  width:100%;
  height:auto;
}
:where(.l-cont_header) .sec-fv_bg{
  position:relative;
}
:where(.l-cont_header) .sec-fv_link{
  position:absolute;
  bottom:4rem;
  right:4rem;
}
:where(.l-cont_header) .l-cont_tit{
  position:absolute;
}
:where(.l-cont_header):has(.l-cont_tit.-center) :where(.l-cont_tit){
  left:50%;
  -webkit-transform:translateX(-50%);
  transform:translateX(-50%);
}
:where(.l-cont_header):has(.l-cont_tit.-center) :where(.l-cont_tit) .m-title{
  gap:1.5rem;
}
:where(.l-cont_header):is(.l-full_screen) .sec-fv_bg{
  z-index:-1;
  width:100%;
  max-width:inherit;
}
:where(.l-cont_header):is(.l-full_screen) .sec-fv_bg::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  z-index:1;
  height:12rem;
  pointer-events:none;
  background:-webkit-gradient(linear, left top, left bottom, from(#372f2f), to(rgba(55, 47, 47, 0)));
  background:linear-gradient(180deg, #372f2f 0%, rgba(55, 47, 47, 0) 100%);
  mix-blend-mode:multiply;
  opacity:0.5;
  pointer-events:none;
}
:where(.l-cont_header):is(.l-full_screen) .sec-fv_bg::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:1;
  height:30rem;
  pointer-events:none;
  background:-webkit-gradient(linear, left top, left bottom, from(rgba(55, 47, 47, 0)), to(#372f2f));
  background:linear-gradient(180deg, rgba(55, 47, 47, 0) 0%, #372f2f 100%);
  mix-blend-mode:multiply;
  opacity:0.3;
  pointer-events:none;
}
:where(.l-cont_header):is(.l-full_screen) .l-cont_tit{
  bottom:0;
}
:where(.l-cont_header):is(.l-dress) .sec-fv_inner{
  height:auto;
}
:where(.l-cont_header):is(.l-dress) .sec-fv_inner::before{
  content:"";
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  z-index:0;
  background-color:var(--bc_gray_b);
}
:where(.l-cont_header):is(.l-plan) .sec-fv_bg::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  z-index:0;
  background-color:rgba(var(--bc_black_RGB), 0.4);
}
:where(.l-cont_header):is(.l-plan) .sec-fv_dress_swiper{
  position:relative;
  z-index:-1;
  width:100%;
  height:64rem;
}
:where(.l-cont_header):is(.-white) .sec-fv_inner{
  background-color:var(--bc_white);
}
:where(.l-cont_header):is(.-white) .sec-fv_logo{
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
  background:#8a7b6d;
  -webkit-mask-image:url("../img/common/header_logo.svg");
  mask-image:url("../img/common/header_logo.svg");
}
:where(.l-cont_header):is(.-white) .sec-fv_logo img{
  opacity:0;
}
:where(.l-cont_header):is(.-gray_b) .sec-fv_inner{
  background-color:var(--bc_gray_b);
}
:where(.l-cont_header):is(.-gray_b) .sec-fv_logo{
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
  background:#8a7b6d;
  -webkit-mask-image:url("../img/common/header_logo.svg");
  mask-image:url("../img/common/header_logo.svg");
}
:where(.l-cont_header):is(.-gray_b) .sec-fv_logo img{
  opacity:0;
}
.m-drawer_btn{
  position:fixed;
  z-index:1000;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  background-color:var(--bc_gray);
  border-radius:5rem;
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.05em;
  line-height:1;
  color:var(--bc_white);
  -webkit-transition:top 1s, opacity 1s;
  transition:top 1s, opacity 1s;
  opacity:1;
  cursor:pointer;
}
.m-drawer_btn_open, .m-drawer_btn_close{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}
.m-drawer_btn_open{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
.m-drawer_btn_close{
  display:none;
}
.m-drawer_btn_open .m-drawer_btn_bar{
  position:absolute;
  right:1.5rem;
  width:0.5rem;
  height:0.5rem;
  border-radius:50%;
  background-color:var(--bc_white);
  -webkit-transition:0.3s;
  transition:0.3s;
}
.m-drawer_btn_close .m-drawer_btn_bar{
  position:absolute;
  top:50%;
  right:-2rem;
  z-index:1;
  width:11rem;
  height:1px;
  background-color:var(--bc_white);
}
.m-drawer_btn_close .m-drawer_btn_bar:nth-of-type(2){
  -webkit-transform:rotate(45deg);
  transform:rotate(45deg);
}
.m-drawer_btn_close .m-drawer_btn_bar:nth-of-type(3){
  -webkit-transform:rotate(-45deg);
  transform:rotate(-45deg);
}
html:not(.is-ready) .m-drawer_btn{
  -webkit-transition:none;
  transition:none;
  opacity:0;
}
body:has(#is-drawer:checked) .m-drawer_btn .m-drawer_btn_open{
  display:none;
}
body:has(#is-drawer:checked) .m-drawer_btn .m-drawer_btn_close{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
body:has(#is-drawer:checked) .m-drawer_btn .m-drawer_btn_open .m-drawer_btn_bar{
  width:0;
  display:none;
}
body:has(#is-drawer:checked) .m-drawer_btn .m-drawer_btn_close .m-drawer_btn_bar{
  position:absolute;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  width:1rem;
  opacity:1;
}

.m-breadcrumb{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  font-family:var(--ff_go), "ShueiGoGin-Fallback", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;
  font-style:normal;
  font-weight:300;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  color:var(--bc_gray);
  font-size:1.4rem;
  letter-spacing:0;
  line-height:1;
  height:5rem;
}
.m-breadcrumb_link{
  width:100%;
  margin:auto;
  text-align:left;
  white-space:nowrap;
}
.m-breadcrumb_item{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  position:relative;
}
.m-breadcrumb_item:first-of-type{
  color:var(--bc_00);
}
.m-breadcrumb_item + .m-breadcrumb_item{
  margin-left:0.5em;
}
.m-breadcrumb_item + .m-breadcrumb_item:before{
  content:"/";
  margin-right:0.4em;
}

.m-sticky_nav{
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
  height:8rem;
  padding-inline:1.6rem;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-transition:-webkit-transform 1s;
  transition:-webkit-transform 1s;
  transition:transform 1s;
  transition:transform 1s, -webkit-transform 1s;
  -webkit-transform:translateY(100%);
  transform:translateY(100%);
  z-index:999;
}
.m-sticky_nav a{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  background-color:var(--bc_accent);
  height:5.2rem;
  width:50%;
}
.m-sticky_nav a.visit{
  border-radius:4px;
}
.m-sticky_nav a.line{
  background-color:var(--bc_white);
  border-radius:0 4px 4px 0;
}
.m-sticky_nav a.line span{
  color:var(--bc_line);
}
.m-sticky_nav a.line i{
  background:var(--bc_line);
}
.m-sticky_nav span{
  font-size:1.3rem;
  letter-spacing:0.12em;
  line-height:1;
  color:var(--bc_white);
}
.m-sticky_nav .line_popup{
  position:absolute;
  z-index:1000;
  top:-21.5rem;
  left:1.6rem;
  width:36.6rem;
  height:19.5rem;
  background-image:url(../img/common/sticky_btn_sp_popup.webp);
  background-size:contain;
  background-position:0 0;
  opacity:0;
  pointer-events:none;
  -webkit-transform:translateY(-1rem);
  transform:translateY(-1rem);
  -webkit-transition:opacity 1s, -webkit-transform 0.3s;
  transition:opacity 1s, -webkit-transform 0.3s;
  transition:opacity 1s, transform 0.3s;
  transition:opacity 1s, transform 0.3s, -webkit-transform 0.3s;
}
.is-popup_sp_line .m-sticky_nav .line_popup{
  opacity:1;
  -webkit-transform:translateY(0);
  transform:translateY(0);
  pointer-events:all;
}
.state_fsscroll .m-sticky_nav{
  -webkit-transform:none;
  transform:none;
}
.m-sticky_nav.is-endline{
  -webkit-transform:translateY(100%) !important;
  transform:translateY(100%) !important;
}

.m-sticky_pc{
  position:fixed;
  top:calc(50% - 15.2rem);
  right:0;
  z-index:100;
  display:block;
  height:17rem;
  overflow:clip;
  pointer-events:none;
}
.m-sticky_pc > dl{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-transform:translateX(calc(100% - 4.8rem));
  transform:translateX(calc(100% - 4.8rem));
  -webkit-transform-origin:right center;
  transform-origin:right center;
  -webkit-transition:-webkit-transform 1s;
  transition:-webkit-transform 1s;
  transition:transform 1s;
  transition:transform 1s, -webkit-transform 1s;
  pointer-events:all;
}
.m-sticky_pc > dl dt{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  gap:0.25em;
  width:4.8rem;
  height:17rem;
  background-color:var(--bc_green);
  cursor:pointer;
  white-space:nowrap;
}
.m-sticky_pc > dl dt .closer{
  display:none;
}
.m-sticky_pc > dl dd{
  cursor:default;
}
.m-sticky_pc > dl dd img{
  aspect-ratio:327/170;
  width:32.7rem;
  height:auto;
}
.m-sticky_pc.-open > dl{
  -webkit-transform:translateX(0);
  transform:translateX(0);
}
.m-sticky_pc.-open dt i{
  position:relative;
  -webkit-mask-image:none;
  mask-image:none;
  background:rgba(var(--bc_white_RGB), 0);
}
.m-sticky_pc.-open dt i::before, .m-sticky_pc.-open dt i::after{
  content:"";
  position:absolute;
  top:50%;
  left:calc(50% - 1rem);
  -webkit-transform:rotate(45deg);
  transform:rotate(45deg);
  height:1px;
  width:2rem;
  background-color:var(--bc_white);
}
.m-sticky_pc.-open dt i::after{
  -webkit-transform:rotate(-45deg);
  transform:rotate(-45deg);
}
.m-sticky_pc.-open dt span:not(.closer){
  display:none;
}
.m-sticky_pc.-open dt .closer{
  display:block;
}
.m-sticky_pc:not(.is-active) > dl{
  -webkit-transform:translateX(100%);
  transform:translateX(100%);
  pointer-events:none;
}
.m-sticky_pc i{
  background-color:var(--bc_white);
}
.m-sticky_pc span{
  font-size:1.6rem;
  letter-spacing:0.05em;
  line-height:1.1;
  -webkit-writing-mode:vertical-lr;
  -ms-writing-mode:tb-lr;
  writing-mode:vertical-lr;
  -webkit-font-feature-settings:initial;
  font-feature-settings:initial;
  color:var(--bc_white);
}

.m-page_top{
  position:fixed;
  z-index:999;
  -webkit-filter:opacity(0%) drop-shadow(0px 0px 1px rgba(var(--bc_white_RGB), 0));
  filter:opacity(0%) drop-shadow(0px 0px 1px rgba(var(--bc_white_RGB), 0));
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  gap:1.6rem;
  pointer-events:none;
  margin-bottom:env(safe-area-inset-bottom);
  -webkit-transition:bottom 1s, -webkit-filter 1s;
  transition:bottom 1s, -webkit-filter 1s;
  transition:filter 1s, bottom 1s;
  transition:filter 1s, bottom 1s, -webkit-filter 1s;
}
.m-page_top::after{
  content:"";
  position:absolute;
  z-index:1;
  bottom:0;
  left:calc(50% - 0.8rem);
  height:1px;
  width:1.6rem;
  background-color:var(--bc_black);
  -webkit-transition:background 1s;
  transition:background 1s;
}
.m-page_top span{
  font-size:1.3rem;
  font-weight:300;
  letter-spacing:0.05em;
  line-height:1;
  color:var(--bc_black);
  -webkit-writing-mode:vertical-lr;
  -ms-writing-mode:tb-lr;
  writing-mode:vertical-lr;
  -webkit-transition:color 1s;
  transition:color 1s;
}
.m-page_top i{
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  width:3.2rem;
  height:3.2rem;
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
  -webkit-mask-image:url("../img/common/ico_btn_up_arrow.svg");
  mask-image:url("../img/common/ico_btn_up_arrow.svg");
  background:var(--bc_black);
  -webkit-transition:background 1s;
  transition:background 1s;
}
.state_fsscroll .m-page_top{
  -webkit-filter:opacity(100%) drop-shadow(0px 0px 1px rgba(var(--bc_white_RGB), 0.8));
  filter:opacity(100%) drop-shadow(0px 0px 1px rgba(var(--bc_white_RGB), 0.8));
  pointer-events:auto;
}
.m-page_top.is-endline::after{
  background-color:var(--bc_white);
}
.m-page_top.is-endline span{
  color:var(--bc_white);
}
.m-page_top.is-endline i{
  background:var(--bc_white);
}
.m-selection_item{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
}
.m-selection_item .l-sec_tit .m-title{
  gap:1rem;
}
.m-selection_item .l-sec_tit .m-title .-en{
  font-weight:400;
}
.m-selection_item .l-sec_tit .m-lead{
  line-height:2;
  margin-top:1rem;
}
.no-touchevents .m-selection_item:hover .m-selection_thumb img{
  -webkit-transform:scale(1.05);
  transform:scale(1.05);
  opacity:0.5;
}
.no-touchevents .m-selection_item:hover .m-selection_link .m-btn01::before{
  clip-path:inset(0);
}
.no-touchevents .m-selection_item:hover .m-selection_link .m-btn01 span{
  color:var(--bc_gold);
}
.no-touchevents .m-selection_item:hover .m-selection_link .m-btn01 i{
  background:var(--bc_gold);
}
.m-selection_thumb{
  height:auto;
  overflow:hidden;
}
.m-selection_thumb img{
  -webkit-transition:opacity 0.3s, -webkit-transform 0.3s;
  transition:opacity 0.3s, -webkit-transform 0.3s;
  transition:transform 0.3s, opacity 0.3s;
  transition:transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
  -webkit-transform:scale(1);
  transform:scale(1);
  opacity:1;
}
:where([class*=m-ico_]) i{
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
  background:currentColor;
  opacity:1;
  -webkit-transition:opacity 0.3s;
  transition:opacity 0.3s;
}
.no-touchevents :where([class*=m-ico_]):hover i{
  opacity:0.5;
}

:where(.m-ico_btn_right_arrow) i{
  width:2.4rem;
  height:2.4rem;
  -webkit-mask-image:url("../img/common/ico_btn_right_arrow.svg");
  mask-image:url("../img/common/ico_btn_right_arrow.svg");
}

:where(.m-ico_btn_up_arrow) i{
  width:3.2rem;
  height:3.2rem;
  -webkit-mask-image:url("../img/common/ico_btn_up_arrow.svg");
  mask-image:url("../img/common/ico_btn_up_arrow.svg");
}

:where(.m-ico_btn_left_angular) i{
  width:1.6rem;
  height:1.6rem;
  -webkit-mask-image:url("../img/common/ico_btn_left_angular.svg");
  mask-image:url("../img/common/ico_btn_left_angular.svg");
}

:where(.m-ico_btn_right_angular) i{
  width:1.6rem;
  height:1.6rem;
  -webkit-mask-image:url("../img/common/ico_btn_right_angular.svg");
  mask-image:url("../img/common/ico_btn_right_angular.svg");
}

:where(.m-ico_headmark_star) i{
  width:1.6rem;
  height:1.6rem;
  -webkit-mask-image:url("../img/common/ico_headmark_star.svg");
  mask-image:url("../img/common/ico_headmark_star.svg");
}

:where(.m-ico_line) i{
  width:2.6rem;
  height:2.6rem;
  -webkit-mask-image:url("../img/common/ico_sns_line.svg");
  mask-image:url("../img/common/ico_sns_line.svg");
}

:where(.m-ico_x) i{
  width:2.6rem;
  height:2.6rem;
  -webkit-mask-image:url("../img/common/ico_sns_x.svg");
  mask-image:url("../img/common/ico_sns_x.svg");
}

:where(.m-ico_insta) i{
  width:2.6rem;
  height:2.6rem;
  -webkit-mask-image:url("../img/common/ico_sns_instagram.svg");
  mask-image:url("../img/common/ico_sns_instagram.svg");
}

:where(.m-ico_tiktok) i{
  width:2.6rem;
  height:2.6rem;
  -webkit-mask-image:url("../img/common/ico_sns_tiktok.svg");
  mask-image:url("../img/common/ico_sns_tiktok.svg");
}
:where(.m-catch){
  font-family:var(--ff_min), "ShipporiMincho-Fallback", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-size:2.6rem;
  letter-spacing:0.15em;
  line-height:2;
}

:where(.m-body){
  font-family:var(--ff_go), "ShueiGoGin-Fallback", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-size:1.4rem;
  letter-spacing:0.18em;
  line-height:2.4;
}

:where(.m-headline){
  font-family:var(--ff_min), "ShipporiMincho-Fallback", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-size:2.2rem;
  letter-spacing:0.15em;
  line-height:2;
}

:where(.m-lead){
  font-family:var(--ff_go), "ShueiGoGin-Fallback", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;
  font-style:normal;
  font-weight:500;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-size:1.4rem;
  letter-spacing:0.18em;
  line-height:2.2;
  color:var(--bc_gray);
}
:where(.m-title) :where(.-ja){
  position:relative;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  padding-inline:0.25em 0.07em;
  padding-block:0.125em;
  font-weight:500;
  letter-spacing:0.18em;
  line-height:1;
}
:where(.m-title) :where(.-en){
  line-height:1.1;
  white-space:pre;
}
:where(.m-title):not(.-negative) :where(.-ja){
  background-color:var(--bc_gold);
  color:var(--bc_white);
}
:where(.m-title):not(.-negative) :where(.-en){
  color:var(--bc_black);
}
:where(.m-title).-negative :where(.-ja){
  background-color:var(--bc_white);
  color:var(--bc_gold);
}
:where(.m-title).-negative :where(.-en){
  color:var(--bc_white);
}

:where(.m-sub_title) .-ja{
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  font-family:var(--ff_min), "ShipporiMincho-Fallback", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.07em;
  line-height:1;
  color:var(--bc_white);
  background-color:var(--bc_gold);
}
:where(.m-sub_title) .-en{
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:300;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-size:10rem;
  letter-spacing:0;
  line-height:1;
  color:var(--bc_black);
  margin-top:2.4rem;
}

:where(.m-description){
  font-family:var(--ff_go), "ShueiGoGin-Fallback", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.15em;
}
:where(.m-attention) :has(li){
  padding-left:1em;
}
:where(.m-attention) :has(li)::before{
  display:inline-block;
  content:"※";
  text-indent:-1em;
}
:where(.m-attention) :not(:has(li)){
  padding-left:1em;
}
:where(.m-attention) :not(:has(li))::before{
  display:inline-block;
  content:"※";
  text-indent:-1em;
}

:where(.m-note){
  font-size:0.8em;
}
:where(.m-wraplink),
:where(.-wraplink){
  position:absolute;
  z-index:1;
  top:0;
  bottom:0;
  left:0;
  right:0;
}
:where(.m-wraplink) ~ :is(.img, .ph, .bg, .thumb),
:where(.-wraplink) ~ :is(.img, .ph, .bg, .thumb){
  overflow:hidden;
}
:where(.m-wraplink) ~ :is(.img, .ph, .bg, .thumb) img,
:where(.-wraplink) ~ :is(.img, .ph, .bg, .thumb) img{
  -webkit-transition:-webkit-transform 0.3s;
  transition:-webkit-transform 0.3s;
  transition:transform 0.3s;
  transition:transform 0.3s, -webkit-transform 0.3s;
}
.no-touchevents :where(.m-wraplink):hover ~ :is(.img, .ph, .bg, .thumb) img,
.no-touchevents :where(.-wraplink):hover ~ :is(.img, .ph, .bg, .thumb) img{
  -webkit-transform:scale(1.02);
  transform:scale(1.02);
}

:where(.m-morebtn){
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  gap:0.6rem;
  width:100%;
  height:4rem;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
:where(.m-morebtn)::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background-color:var(--bc_gray_c);
}
:where(.m-morebtn) span{
  position:relative;
  z-index:1;
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-size:1.4rem;
  letter-spacing:0.05em;
  line-height:1;
  -webkit-transition:color 0.3s;
  transition:color 0.3s;
}
:where(.m-morebtn) i{
  position:relative;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  width:1.1rem;
  height:1.1rem;
}
:where(.m-morebtn) i::before, :where(.m-morebtn) i::after{
  content:"";
  position:absolute;
  top:50%;
  -webkit-transform-origin:center center;
  transform-origin:center center;
  width:100%;
  height:1px;
  background-color:var(--bc_black);
}
:where(.m-morebtn) i::after{
  -webkit-transform:rotate(90deg);
  transform:rotate(90deg);
  -webkit-transition:-webkit-transform 0.3s;
  transition:-webkit-transform 0.3s;
  transition:transform 0.3s;
  transition:transform 0.3s, -webkit-transform 0.3s;
}
.no-touchevents :where(.m-morebtn):hover i::after, :where(.m-morebtn):is(.is-active) i::after{
  -webkit-transform:rotate(0);
  transform:rotate(0);
}

:where(.m-btn01){
  position:relative;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  gap:0.7rem;
  height:5.6rem;
  padding-inline:4rem 4.5rem;
  border-radius:4px;
  overflow:clip;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  font-family:var(--ff_go), "ShueiGoGin-Fallback", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;
  font-style:normal;
  font-weight:500;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.12em;
  line-height:1;
  background-color:var(--bc_gold);
}
:where(.m-btn01)::before{
  content:"";
  position:absolute;
  z-index:0;
  top:0;
  bottom:0;
  left:0;
  right:0;
  background-color:var(--bc_white);
  clip-path:inset(50.1% 0 50.1% 0);
  -webkit-transition:clip-path 0.3s;
  transition:clip-path 0.3s;
}
:where(.m-btn01) span,
:where(.m-btn01) input{
  position:relative;
  z-index:1;
  color:var(--bc_white);
  -webkit-transition:color 0.3s;
  transition:color 0.3s;
}
:where(.m-btn01) i{
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  width:2.4rem;
  height:2.4rem;
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
  -webkit-mask-image:url("../img/common/ico_btn_right_arrow.svg");
  mask-image:url("../img/common/ico_btn_right_arrow.svg");
  background:var(--bc_white);
  -webkit-transition:background 0.3s;
  transition:background 0.3s;
}
:where(.m-btn01).-white{
  background-color:var(--bc_white);
}
:where(.m-btn01).-white::before{
  background-color:var(--bc_gold);
}
:where(.m-btn01).-white span{
  color:var(--bc_gold);
}
:where(.m-btn01).-white i{
  background:var(--bc_gold);
}
.no-touchevents :where(.m-btn01).-white:hover span{
  color:var(--bc_white);
}
.no-touchevents :where(.m-btn01).-white:hover i{
  background:var(--bc_white);
}
:where(.m-btn01).-brown{
  background-color:var(--bc_accent);
}
:where(.m-btn01).arrow-down i{
  -webkit-transform:rotate(90deg);
  transform:rotate(90deg);
}
:where(.m-btn01).external i{
  -webkit-mask-image:url("../img/common/ico_external.svg");
  mask-image:url("../img/common/ico_external.svg");
}
.no-touchevents :where(.m-btn01):hover::before{
  clip-path:inset(0);
}
.no-touchevents :where(.m-btn01):hover span,
.no-touchevents :where(.m-btn01):hover input{
  color:var(--bc_gold);
}
.no-touchevents :where(.m-btn01):hover i{
  background:var(--bc_gold);
}

:where(.m-btn02){
  position:relative;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  overflow:clip;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:300;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.05em;
  line-height:1;
}
:where(.m-btn02)::before{
  content:"";
  position:absolute;
  z-index:0;
  bottom:0;
  left:0;
  right:0;
  height:1px;
  background-color:var(--bc_black);
  clip-path:inset(0);
}
:where(.m-btn02) span{
  position:relative;
  z-index:1;
  color:var(--bc_black);
  -webkit-transition:color 0.3s;
  transition:color 0.3s;
}
:where(.m-btn02) i{
  position:absolute;
  right:0;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  width:1.8rem;
  height:1.8rem;
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
  -webkit-mask-image:url("../img/common/ico_btn_right_arrow.svg");
  mask-image:url("../img/common/ico_btn_right_arrow.svg");
  background:var(--bc_black);
  -webkit-transition:background 0.3s;
  transition:background 0.3s;
}
.no-touchevents :where(.m-btn02):hover::before{
  -webkit-animation-name:anim-underline02;
  animation-name:anim-underline02;
  -webkit-animation-duration:0.5s;
  animation-duration:0.5s;
  -webkit-animation-timing-function:ease-in-out;
  animation-timing-function:ease-in-out;
  -webkit-animation-fill-mode:forwards;
  animation-fill-mode:forwards;
}

:where(.m-underline) > span{
  position:relative;
}
:where(.m-underline) > span::before{
  content:"";
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:1px;
  background-color:var(--bc_black);
  clip-path:inset(0% 100% 0% 0%);
}
.no-touchevents :where(.m-underline):hover > span::before{
  -webkit-animation-name:anim-underline01;
  animation-name:anim-underline01;
  -webkit-animation-duration:0.5s;
  animation-duration:0.5s;
  -webkit-animation-timing-function:ease-in-out;
  animation-timing-function:ease-in-out;
  -webkit-animation-fill-mode:forwards;
  animation-fill-mode:forwards;
}
.no-touchevents :where(.m-underline):hover.-rev > span::before{
  -webkit-animation-name:anim-underline02;
  animation-name:anim-underline02;
  -webkit-animation-duration:0.5s;
  animation-duration:0.5s;
  -webkit-animation-timing-function:ease-in-out;
  animation-timing-function:ease-in-out;
  -webkit-animation-fill-mode:forwards;
  animation-fill-mode:forwards;
}
:where(.m-underline).-rev > span::before{
  clip-path:inset(0% 0% 0% 0%);
}

@-webkit-keyframes anim-underline01{
  0%{
    clip-path:inset(0% 100% 0% 0%);
  }
  40%{
    clip-path:inset(0% 0% 0% 0%);
  }
  60%{
    clip-path:inset(0% 0% 0% 0%);
  }
  100%{
    clip-path:inset(0% 0% 0% 100%);
  }
}

@keyframes anim-underline01{
  0%{
    clip-path:inset(0% 100% 0% 0%);
  }
  40%{
    clip-path:inset(0% 0% 0% 0%);
  }
  60%{
    clip-path:inset(0% 0% 0% 0%);
  }
  100%{
    clip-path:inset(0% 0% 0% 100%);
  }
}
@-webkit-keyframes anim-underline02{
  0%{
    clip-path:inset(0% 0% 0% 0%);
  }
  40%{
    clip-path:inset(0% 0% 0% 100%);
  }
  60%{
    clip-path:inset(0% 100% 0% 0%);
  }
  100%{
    clip-path:inset(0% 0% 0% 0%);
  }
}
@keyframes anim-underline02{
  0%{
    clip-path:inset(0% 0% 0% 0%);
  }
  40%{
    clip-path:inset(0% 0% 0% 100%);
  }
  60%{
    clip-path:inset(0% 100% 0% 0%);
  }
  100%{
    clip-path:inset(0% 0% 0% 0%);
  }
}
:where(.m-dotlist) > li{
  position:relative;
  font-size:1.4rem;
  line-height:1.8;
  letter-spacing:0.1em;
}
:where(.m-dotlist) > li::before{
  content:"・";
}

:where(.m-linklist) li{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  letter-spacing:0;
  line-height:2.2;
}
:where(.m-linklist) li span{
  position:relative;
}
:where(.m-linklist) li span::before{
  content:"";
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:1px;
  background-color:var(--bc_black);
  clip-path:inset(0% 0% 0% 100%);
}
:where(.m-linklist) li i{
  display:inline-block;
  margin-right:0.5em;
  width:1rem;
  height:1rem;
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
  -webkit-mask-image:url("../img/common/ico_btn_arrow.svg");
  mask-image:url("../img/common/ico_btn_arrow.svg");
  background:var(--bc_base);
}

:where(.m-table) > .item{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  padding-block:1.5rem;
  border-top:1px solid var(--bc_gray);
  border-bottom:1px solid var(--bc_gray);
}
:where(.m-table) > .item + .item{
  border-top:none;
}
:where(.m-table) > .item > dt{
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
:where(.m-table) > .item > dd{
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}

:where(.m-playmovie){
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  gap:1rem;
}
:where(.m-playmovie) span{
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.03em;
  line-height:1;
  color:var(--bc_white);
}
:where(.m-playmovie) i{
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:contain;
  mask-size:contain;
  -webkit-mask-image:url("../img/common/ico_movie_play.svg");
  mask-image:url("../img/common/ico_movie_play.svg");
  background:var(--bc_white);
}
.swiper:has(.swiper-nav_wrapper) .swiper-nav_wrapper{
  position:absolute;
  z-index:1;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  gap:1rem;
}
.swiper:has(.swiper-nav_wrapper) .swiper-pagination_wrapper{
  position:relative;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  width:11rem;
  height:2.4rem;
  padding-inline:2rem;
  margin-right:1rem;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.swiper:has(.swiper-nav_wrapper) .swiper-pagination.js-progressbar{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  width:70rem;
  position:relative;
}
.swiper:has(.swiper-nav_wrapper) .swiper-pagination.js-progressbar .text-line{
  position:relative;
  -webkit-box-flex:1;
  -ms-flex-positive:1;
  flex-grow:1;
  height:1px;
  background-color:var(--bc_white);
  overflow:hidden;
}
.swiper:has(.swiper-nav_wrapper) .swiper-pagination.js-progressbar .text-line::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-color:var(--bc_gold);
  -webkit-transform:scaleX(0);
  transform:scaleX(0);
  -webkit-transform-origin:left center;
  transform-origin:left center;
}
.swiper:has(.swiper-nav_wrapper) .swiper-pagination.is-active .text-line::before{
  -webkit-animation:swiperProgress linear forwards;
  animation:swiperProgress linear forwards;
  -webkit-animation-duration:var(--autoplay-delay, 6000ms);
  animation-duration:var(--autoplay-delay, 6000ms);
}
@-webkit-keyframes swiperProgress{
  0%{
    -webkit-transform:scaleX(0);
    transform:scaleX(0);
  }
  100%{
    -webkit-transform:scaleX(1);
    transform:scaleX(1);
  }
}
@keyframes swiperProgress{
  0%{
    -webkit-transform:scaleX(0);
    transform:scaleX(0);
  }
  100%{
    -webkit-transform:scaleX(1);
    transform:scaleX(1);
  }
}
.swiper:has(.swiper-nav_wrapper) .swiper-pagination-current, .swiper:has(.swiper-nav_wrapper) .swiper-pagination-total{
  position:absolute;
  top:50%;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
  display:inline-block;
  width:2rem;
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.15em;
  line-height:1;
  color:var(--bc_gold);
  text-align:center;
}
.swiper:has(.swiper-nav_wrapper) .swiper-pagination-current{
  left:-2rem;
}
.swiper:has(.swiper-nav_wrapper) .swiper-pagination-total{
  right:-2rem;
}
.swiper:has(.swiper-nav_wrapper) .swiper-button-prev,
.swiper:has(.swiper-nav_wrapper) .swiper-button-next{
  position:relative !important;
  z-index:100;
  margin:0 !important;
  padding:0 !important;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  width:4.8rem;
  border-radius:4rem;
  border:1px solid var(--bc_gold);
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.swiper:has(.swiper-nav_wrapper) .swiper-button-prev i,
.swiper:has(.swiper-nav_wrapper) .swiper-button-next i{
  background:var(--bc_gold);
}
.swiper:has(.swiper-nav_wrapper) .swiper-button-prev::before, .swiper:has(.swiper-nav_wrapper) .swiper-button-prev::after,
.swiper:has(.swiper-nav_wrapper) .swiper-button-next::before,
.swiper:has(.swiper-nav_wrapper) .swiper-button-next::after{
  content:none;
}
.swiper:has(.swiper-nav_wrapper) .swiper-button-prev{
  left:0;
}
.swiper:has(.swiper-nav_wrapper) .swiper-button-next{
  right:0;
}
.swiper:has(.swiper-nav_wrapper).-negative .swiper-pagination-progressbar{
  background-color:var(--bc_white);
}
.swiper:has(.swiper-nav_wrapper).-negative .swiper-pagination-progressbar-fill{
  background-color:var(--bc_gold);
}
.swiper:has(.swiper-nav_wrapper).-negative .swiper-pagination-current, .swiper:has(.swiper-nav_wrapper).-negative .swiper-pagination-total{
  color:var(--bc_white);
}
.swiper:has(.swiper-nav_wrapper).-negative .swiper-button-prev,
.swiper:has(.swiper-nav_wrapper).-negative .swiper-button-next{
  border:1px solid var(--bc_white);
}
.swiper:has(.swiper-nav_wrapper).-negative .swiper-button-prev i,
.swiper:has(.swiper-nav_wrapper).-negative .swiper-button-next i{
  background:var(--bc_white);
}

.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper){
  position:absolute;
  z-index:1;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  gap:1rem;
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) :where(.swiper-pagination_wrapper){
  position:relative;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  width:11rem;
  height:2.4rem;
  padding-inline:2rem;
  margin-right:1rem;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination.js-progressbar{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  width:70rem;
  position:relative;
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination.js-progressbar .text-line{
  position:relative;
  -webkit-box-flex:1;
  -ms-flex-positive:1;
  flex-grow:1;
  height:1px;
  background-color:var(--bc_white);
  overflow:hidden;
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination.js-progressbar .text-line::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-color:var(--bc_gold);
  -webkit-transform:scaleX(0);
  transform:scaleX(0);
  -webkit-transform-origin:left center;
  transform-origin:left center;
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination.is-active .text-line::before{
  -webkit-animation:swiperProgress linear forwards;
  animation:swiperProgress linear forwards;
  -webkit-animation-duration:var(--autoplay-delay, 6000ms);
  animation-duration:var(--autoplay-delay, 6000ms);
}
@keyframes swiperProgress{
  0%{
    -webkit-transform:scaleX(0);
    transform:scaleX(0);
  }
  100%{
    -webkit-transform:scaleX(1);
    transform:scaleX(1);
  }
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination-current, .swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination-total{
  position:absolute;
  top:50%;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
  display:inline-block;
  width:2rem;
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  letter-spacing:0.15em;
  line-height:1;
  color:var(--bc_gold);
  text-align:center;
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination-current{
  left:-2rem;
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination-total{
  right:-2rem;
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-prev,
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-next{
  position:relative !important;
  z-index:100;
  margin:0 !important;
  padding:0 !important;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  width:4.8rem;
  border-radius:4rem;
  border:1px solid var(--bc_gold);
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-prev i,
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-next i{
  background:var(--bc_gold);
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-prev::before, .swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-prev::after,
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-next::before,
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-next::after{
  content:none;
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-prev{
  left:0;
}
.swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-next{
  right:0;
}
.swiper:has(+ .swiper-nav_wrapper).-negative + .swiper-nav_wrapper .swiper-pagination-progressbar{
  background-color:var(--bc_white);
}
.swiper:has(+ .swiper-nav_wrapper).-negative + .swiper-nav_wrapper .swiper-pagination-progressbar-fill{
  background-color:var(--bc_gold);
}
.swiper:has(+ .swiper-nav_wrapper).-negative + .swiper-nav_wrapper .swiper-pagination-current, .swiper:has(+ .swiper-nav_wrapper).-negative + .swiper-nav_wrapper .swiper-pagination-total{
  color:var(--bc_white);
}
.swiper:has(+ .swiper-nav_wrapper).-negative + .swiper-nav_wrapper .swiper-button-prev,
.swiper:has(+ .swiper-nav_wrapper).-negative + .swiper-nav_wrapper .swiper-button-next{
  border:1px solid var(--bc_white);
}
.swiper:has(+ .swiper-nav_wrapper).-negative + .swiper-nav_wrapper .swiper-button-prev i,
.swiper:has(+ .swiper-nav_wrapper).-negative + .swiper-nav_wrapper .swiper-button-next i{
  background:var(--bc_white);
}
.swiper:has(+ .swiper-nav_wrapper).-vertical + :where(.swiper-nav_wrapper){
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  gap:1rem;
  width:4.8rem;
  padding-top:13rem;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.swiper:has(+ .swiper-nav_wrapper).-vertical + :where(.swiper-nav_wrapper) .swiper-pagination_wrapper{
  position:absolute;
  top:4.4rem;
  left:-3.2rem;
  -webkit-transform-origin:center center;
  transform-origin:center center;
  -webkit-transform:rotate(90deg);
  transform:rotate(90deg);
}

[data-infinite-swiper].is-reverse{
  -webkit-transform:scaleX(-1);
  transform:scaleX(-1);
}

[data-infinite-swiper].is-reverse .swiper-slide{
  -webkit-transform:scaleX(-1);
  transform:scaleX(-1);
}
:where([data-accordion-trigger]){
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  cursor:pointer;
}
:where([data-accordion-trigger]) i{
  position:absolute;
  right:4rem;
  top:calc(50% - 0.35rem);
  width:1rem;
  height:0.7rem;
  background:var(--bc_black_text);
  -webkit-transform:rotate(0);
  transform:rotate(0);
  -webkit-transition:-webkit-transform 0.3s;
  transition:-webkit-transform 0.3s;
  transition:transform 0.3s;
  transition:transform 0.3s, -webkit-transform 0.3s;
}
:where([data-accordion-trigger]).is-active i{
  -webkit-transform:rotate(180deg);
  transform:rotate(180deg);
}

:where([data-accordion-detail]){
  -webkit-transition:height 0.7s, padding 0.3s, opacity 0.7s;
  transition:height 0.7s, padding 0.3s, opacity 0.7s;
  height:auto;
  opacity:1;
  pointer-events:all;
}
:where([data-accordion-detail]).is-hidden{
  opacity:0;
  height:0;
  padding-block:0 !important;
  overflow:hidden;
  pointer-events:none;
}
:where([data-tabarea]){
  pointer-events:all;
  overflow:clip;
}
:where([data-tabarea]) [data-tabmenu]{
  position:relative;
  z-index:1;
  pointer-events:all;
}
:where([data-tabarea]) [data-tabmenu] [data-tabmenu-item]{
  -webkit-transition:background 0.3s;
  transition:background 0.3s;
  cursor:pointer;
}
:where([data-tabarea]) [data-tabdetail] [data-tabdetail-item]{
  position:absolute;
  top:0;
  left:0;
  right:0;
  visibility:hidden;
  pointer-events:none;
  opacity:0;
  -webkit-transition:opacity 1s;
  transition:opacity 1s;
}
:where([data-tabarea]) [data-tabdetail] [data-tabdetail-item].is-active{
  position:static;
  display:block;
  visibility:visible;
  pointer-events:all;
  opacity:1;
}
:where([data-youtube]){
  position:relative;
  opacity:0;
  -webkit-transition:opacity 0.7s;
  transition:opacity 0.7s;
}
:where([data-youtube]):has(iframe){
  opacity:1;
}
:where([data-youtube]).thumbnail{
  width:100%;
  height:auto;
  aspect-ratio:16/9;
}
:where([data-youtube]) iframe{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  opacity:0;
}

:where([data-youtube-thumbnail]){
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:100;
  cursor:pointer;
}
:where([data-youtube-thumbnail])::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
  width:68px;
  height:48px;
  background-color:rgba(0, 0, 0, 0.6);
  border-radius:10px;
  -webkit-transition:0.2s;
  transition:0.2s;
}
:where([data-youtube-thumbnail])::after{
  content:"";
  display:block;
  width:0;
  height:0;
  position:absolute;
  top:0;
  bottom:0;
  left:19px;
  right:0;
  margin:auto;
  border-top:10px solid transparent;
  border-right:17px solid transparent;
  border-bottom:10px solid transparent;
  border-left:17px solid #fff;
}
.no-touchevents :where([data-youtube-thumbnail]):hover::before{
  background-color:red;
}
:where([data-modal]){
  position:absolute;
  bottom:0;
  left:0;
  width:0;
  height:0;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
}

:where([data-modal-trigger]){
  position:relative;
  cursor:pointer;
}
:where([data-modal-trigger]) .thumbnail,
:where([data-modal-trigger]) .thumb{
  position:relative;
  z-index:100;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  cursor:pointer;
}
:where([data-modal-trigger]) .thumbnail::before,
:where([data-modal-trigger]) .thumb::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
  width:68px;
  height:48px;
  background-color:rgba(0, 0, 0, 0.6);
  border-radius:10px;
  -webkit-transition:0.2s;
  transition:0.2s;
}
:where([data-modal-trigger]) .thumbnail::after,
:where([data-modal-trigger]) .thumb::after{
  content:"";
  display:block;
  width:0;
  height:0;
  position:absolute;
  top:0;
  bottom:0;
  left:19px;
  right:0;
  margin:auto;
  border-top:10px solid transparent;
  border-right:17px solid transparent;
  border-bottom:10px solid transparent;
  border-left:17px solid #fff;
  -webkit-transition:0.2s;
  transition:0.2s;
}
.no-touchevents :where([data-modal-trigger]) .thumbnail:hover::before,
.no-touchevents :where([data-modal-trigger]) .thumb:hover::before{
  background-color:red;
}
:where([data-modal-trigger]) .thumb::before, :where([data-modal-trigger]) .thumb::after{
  opacity:0;
}
.no-touchevents :where([data-modal-trigger]) .thumb:hover::before{
  opacity:1;
  background-color:red;
}
.no-touchevents :where([data-modal-trigger]) .thumb:hover::after{
  opacity:1;
}

:where([data-modal-detail]){
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  opacity:0;
  pointer-events:none;
  overflow:hidden;
  display:none;
}
:where([data-modal-detail]).active{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  opacity:1;
  pointer-events:auto;
}
:where([data-modal-detail]).active iframe,
:where([data-modal-detail]).active img{
  pointer-events:auto;
}
:where([data-modal-detail]) img,
:where([data-modal-detail]) iframe{
  position:static;
  width:100%;
  height:auto;
  display:block;
}
:where([data-modal-detail]) .yt,
:where([data-modal-detail]) iframe{
  position:static;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  opacity:1;
}

:where([data-modal-area]){
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
  height:100%;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
  z-index:10000;
  -webkit-perspective:500px;
  perspective:500px;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  -webkit-transition:1s;
  transition:1s;
}
:where([data-modal-area]).active{
  opacity:1;
  pointer-events:auto;
}
:where([data-modal-area]).active .wrap{
  -webkit-transform:none;
  transform:none;
  opacity:1;
}
:where([data-modal-area]).active .close,
:where([data-modal-area]).active .closer{
  pointer-events:auto;
}
:where([data-modal-area]).disabled{
  pointer-events:none;
}
:where([data-modal-area]) .close{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-color:rgba(var(--bc_black_RGB), 0.8);
  cursor:pointer;
  z-index:10001;
}
:where([data-modal-area]) .wrap{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  max-width:136rem;
  width:100%;
  height:100%;
  margin:auto;
  z-index:10001;
  -webkit-transform-style:preserve-3d;
  transform-style:preserve-3d;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  opacity:0;
  -webkit-transition:1s;
  transition:1s;
  pointer-events:none;
}
:where([data-modal-area]) .content{
  position:absolute;
  top:5rem;
  left:5rem;
  right:5rem;
  bottom:5rem;
  overflow-x:hidden;
  overflow-y:auto;
  z-index:10002;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  min-height:50rem;
  pointer-events:none;
}
:where([data-modal-area]) .closer{
  position:fixed;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  gap:1rem;
  border-radius:2px;
  z-index:10001;
  cursor:pointer;
  -webkit-transition:0.2s;
  transition:0.2s;
  background-color:var(--bc_gray_b);
}
:where([data-modal-area]) .closer span{
  font-weight:400;
  letter-spacing:0.05em;
  line-height:1;
  color:var(--bc_gold);
  opacity:1;
  -webkit-transition:opacity 0.3s;
  transition:opacity 0.3s;
}
:where([data-modal-area]) .closer i{
  position:relative;
  opacity:1;
  -webkit-transition:opacity 0.3s;
  transition:opacity 0.3s;
}
:where([data-modal-area]) .closer i::before, :where([data-modal-area]) .closer i::after{
  content:"";
  position:absolute;
  top:50%;
  height:1px;
  background-color:var(--bc_gold);
}
:where([data-modal-area]) .closer i::before{
  -webkit-transform:rotate(45deg);
  transform:rotate(45deg);
}
:where([data-modal-area]) .closer i::after{
  -webkit-transform:rotate(-45deg);
  transform:rotate(-45deg);
}
.no-touchevents :where([data-modal-area]) .closer:hover span,
.no-touchevents :where([data-modal-area]) .closer:hover i, :where([data-modal-area]) .closer.active span,
:where([data-modal-area]) .closer.active i{
  opacity:0.5;
}

body:has([data-modal-area].active){
  overflow:clip;
  padding-right:var(--scrollbar);
}
:root{
  --gallery_modal-duration:0.5s;
}

.mod_gallery_modal{
  --gap:1rem;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
  -webkit-column-gap:var(--gap);
  -moz-column-gap:var(--gap);
  column-gap:var(--gap);
  position:relative;
  overflow:hidden;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.mod_gallery_modal:not(.__more-view) .mod_gallery_modal-img:is(:nth-child(n+11):not(.__view), .__hide){
  display:none;
}
.mod_gallery_modal-img{
  padding-top:var(--gap);
  width:calc(20% - var(--gap) * 4 / 5);
  -webkit-transition:opacity var(--gallery_modal-duration);
  transition:opacity var(--gallery_modal-duration);
  position:relative;
  cursor:pointer;
  overflow:hidden;
}
.mod_gallery_modal-img > img{
  display:block;
  width:100%;
  height:auto;
  -webkit-transition:opacity var(--gallery_modal-duration);
  transition:opacity var(--gallery_modal-duration);
  aspect-ratio:1/1;
  -o-object-fit:cover;
  object-fit:cover;
}
.__modal-active .mod_gallery_modal-img{
  pointer-events:none;
}
.no-touchevents .mod_gallery_modal-img:hover img{
  opacity:0.7;
}
.mod_gallery_modal .__modal-current{
  -webkit-box-sizing:content-box;
  box-sizing:content-box;
  margin:-0.5rem 0 0 -0.5rem;
  padding:0.5rem;
  width:26rem;
  height:26rem;
  background-color:var(--bc_black);
  position:absolute;
  top:0;
  left:0;
  -webkit-transition-property:width, height, top, left, opacity;
  transition-property:width, height, top, left, opacity;
  -webkit-transition-duration:var(--gallery_modal-duration);
  transition-duration:var(--gallery_modal-duration);
  opacity:0;
  pointer-events:none;
  z-index:-1;
}
.__modal-active .mod_gallery_modal .__modal-current{
  opacity:1;
}
.mod_gallery_modal-more{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  margin-top:3rem;
  padding-right:3rem;
  width:100%;
  height:6rem;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-align:center;
  font-size:2rem;
  letter-spacing:0.05em;
  line-height:1;
  color:var(--bc_white);
  -webkit-transition:opacity 0.5s;
  transition:opacity 0.5s;
  border-top:1px solid var(--bc_white) !important;
}
.no-touchevents .mod_gallery_modal-more:hover{
  opacity:0.7;
}
.mod_gallery_modal-more::before, .mod_gallery_modal-more::after{
  content:"";
  position:absolute;
  top:50%;
  right:calc(50% - 4.5rem);
  display:block;
  height:1px;
  width:1.3rem;
  background-color:var(--bc_white);
}
.mod_gallery_modal-more::after{
  -webkit-transform:rotate(90deg);
  transform:rotate(90deg);
}
.mod_gallery_modal-more.__hide::after{
  -webkit-transform:rotate(0);
  transform:rotate(0);
}

body.__modal-active{
  width:100%;
  padding-right:var(--scrollbar-w);
  position:fixed;
  top:calc(var(--now-scroll));
  overflow-y:scroll;
}
body:has(.mod_gallery_modal) .l-header > .l-header_inner{
  -webkit-transition:opacity var(--gallery_modal-duration), height 1s;
  transition:opacity var(--gallery_modal-duration), height 1s;
}
body:has(.mod_gallery_modal).__modal-active .l-header > .l-header_inner{
  opacity:0;
}

.js-gallery_modal_wrap{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  margin:auto;
  z-index:2;
  width:calc(100% - 12rem);
  height:calc(100vh - 12rem);
  z-index:250000;
  opacity:0;
  -webkit-transition:opacity var(--gallery_modal-duration);
  transition:opacity var(--gallery_modal-duration);
  position:fixed;
  inset:0;
  -webkit-tap-highlight-color:transparent !important;
}
.js-gallery_modal_wrap:focus{
  outline:none !important;
}
.__modal-active .js-gallery_modal_wrap{
  opacity:1;
  pointer-events:auto;
}
.__modal-noclick .js-gallery_modal_wrap{
  pointer-events:none !important;
}
.js-gallery_modal-img{
  width:auto;
  max-height:100%;
  height:auto;
  position:absolute;
  -webkit-transition-property:opacity, -webkit-transform;
  transition-property:opacity, -webkit-transform;
  transition-property:transform, opacity;
  transition-property:transform, opacity, -webkit-transform;
  -webkit-transition-duration:var(--gallery_modal-duration);
  transition-duration:var(--gallery_modal-duration);
}
.js-gallery_modal-img:not(.__view){
  opacity:0;
  pointer-events:none;
}
.js-gallery_modal-media:is(iframe){
  width:100%;
  height:auto;
  aspect-ratio:16/9;
}
.js-gallery_modal-close{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  width:8rem;
  height:auto;
  border-radius:2px;
  aspect-ratio:1/1;
  color:var(--bc_white);
  background-color:var(--bc_gold);
  position:absolute;
  top:0;
  right:0;
  z-index:10;
  -webkit-transition-property:opacity;
  transition-property:opacity;
  -webkit-transition-duration:var(--gallery_modal-duration);
  transition-duration:var(--gallery_modal-duration);
}
.js-gallery_modal-close::before{
  content:"CLOSE";
  position:absolute;
  top:2rem;
  left:0;
  right:0;
  text-align:center;
  font-family:var(--ff_en), "TheSeasons-Fallback", "Georgia", serif;
  font-style:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-size:1.4rem;
  letter-spacing:0.05em;
  line-height:1;
}
.js-gallery_modal-close:not(.__view){
  opacity:0;
  pointer-events:none;
}
.js-gallery_modal-close i{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  width:100%;
  height:100%;
  position:absolute;
  top:1.5rem;
}
.js-gallery_modal-close i:before, .js-gallery_modal-close i:after{
  content:"";
  display:block;
  margin:auto;
  width:2.6rem;
  border-bottom:1px solid;
  position:absolute;
  border-color:var(--bc_white);
}
.js-gallery_modal-close i:before{
  -webkit-transform:rotate(45deg);
  transform:rotate(45deg);
}
.js-gallery_modal-close i:after{
  -webkit-transform:rotate(-45deg);
  transform:rotate(-45deg);
}
.js-gallery_modal-arrow{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  margin:auto 0;
  height:100%;
  width:4rem;
  position:absolute;
  top:0;
  z-index:10;
}
.js-gallery_modal-arrow::after{
  content:"";
}
.js-gallery_modal-arrow:after{
  content:"";
  display:block;
  margin:auto;
  width:100%;
  height:auto;
  aspect-ratio:1/1;
  -webkit-mask-position:center center;
  mask-position:center center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-size:3.2rem 3.2rem;
  mask-size:3.2rem 3.2rem;
  -webkit-mask-image:url("/assets/img/common/ico_btn_right_angular.svg");
  mask-image:url("/assets/img/common/ico_btn_right_angular.svg");
  background:var(--bc_gold);
}
.js-gallery_modal-arrow.-next{
  right:0;
}
.js-gallery_modal-arrow.-prev{
  left:0;
}
.js-gallery_modal-arrow.-prev::after{
  -webkit-transform:scaleX(-1);
  transform:scaleX(-1);
}
.js-gallery_modal-overlay{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  z-index:200000;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:calc(100% + 10rem);
  background-color:rgba(var(--bc_white), 0.7);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  will-change:backdrop-filter;
  pointer-events:none;
  -webkit-transition:opacity var(--gallery_modal-duration);
  transition:opacity var(--gallery_modal-duration);
  opacity:0;
}
.__modal-active .js-gallery_modal-overlay{
  opacity:1;
  pointer-events:auto;
}
.js-gallery_modal-overlay-loading{
  margin-top:-10rem;
  position:absolute;
  width:4px;
  height:4px;
}
.js-gallery_modal-overlay-loading > div{
  -webkit-animation-fill-mode:both;
  width:100%;
  height:100%;
  border-radius:100%;
  background-color:var(--bc_white);
  margin:2px;
  --angle:(360deg / 8 * var(--i));
  --x:calc(cos(var(--angle)) * 30px);
  --y:calc(sin(var(--angle)) * 30px);
  --duration:2s;
  --delay:calc(var(--duration) * var(--i) / 8);
  -webkit-animation:ball-spin-fade-loader var(--duration) var(--delay) infinite linear;
  animation:ball-spin-fade-loader var(--duration) var(--delay) infinite linear;
  position:absolute;
  top:var(--y);
  left:var(--x);
  opacity:0.3;
}
.js-gallery_modal-overlay-loading > div:nth-child(1){
  --i:1;
}
.js-gallery_modal-overlay-loading > div:nth-child(2){
  --i:2;
}
.js-gallery_modal-overlay-loading > div:nth-child(3){
  --i:3;
}
.js-gallery_modal-overlay-loading > div:nth-child(4){
  --i:4;
}
.js-gallery_modal-overlay-loading > div:nth-child(5){
  --i:5;
}
.js-gallery_modal-overlay-loading > div:nth-child(6){
  --i:6;
}
.js-gallery_modal-overlay-loading > div:nth-child(7){
  --i:7;
}
.js-gallery_modal-overlay-loading > div:nth-child(8){
  --i:8;
}
video .js-gallery_modal-img, iframe .js-gallery_modal-img{
  display:block;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  width:auto;
  height:auto;
  max-height:100%;
  position:absolute;
  inset:0;
  margin:auto;
  -webkit-transition-property:opacity, -webkit-transform;
  transition-property:opacity, -webkit-transform;
  transition-property:transform, opacity;
  transition-property:transform, opacity, -webkit-transform;
  -webkit-transition-duration:var(--gallery_modal-duration);
  transition-duration:var(--gallery_modal-duration);
}
video .js-gallery_modal-img:not(.__view), iframe .js-gallery_modal-img:not(.__view){
  opacity:0;
  pointer-events:none;
}

@-webkit-keyframes ball-spin-fade-loader{
  0%{
    opacity:0.3;
    -webkit-transform:scale(1);
    transform:scale(1);
  }
  50%{
    opacity:1;
    -webkit-transform:scale(4);
    transform:scale(4);
  }
  100%{
    opacity:0.3;
    -webkit-transform:scale(1);
    transform:scale(1);
  }
}

@keyframes ball-spin-fade-loader{
  0%{
    opacity:0.3;
    -webkit-transform:scale(1);
    transform:scale(1);
  }
  50%{
    opacity:1;
    -webkit-transform:scale(4);
    transform:scale(4);
  }
  100%{
    opacity:0.3;
    -webkit-transform:scale(1);
    transform:scale(1);
  }
}
@media (width <= 767px){
  html{
    font-size:clamp(8px, 10 / var(--sp-base-size) * 100vw, 13px);
    -webkit-text-size-adjust:100%;
    overflow-x:hidden;
    width:100%;
  }
  body{
    font-size:1.4rem;
    line-height:1.8;
    overflow-x:hidden;
    width:100%;
    position:relative;
  }
  ._pc,
  [data-sc-pc]{
    display:none !important;
  }
  :root{
    --scroll-margin-top:80;
  }
  :root{
  }
  :where(.-line_clamp).-sp_line1{
    -webkit-line-clamp:1;
    line-clamp:1;
  }
  :where(.-line_clamp).-sp_line2{
    -webkit-line-clamp:2;
    line-clamp:2;
  }
  :where(.-line_clamp).-sp_line3{
    -webkit-line-clamp:3;
    line-clamp:3;
  }
  .-guideline_basic::before{
    max-width:39rem;
    width:100vw;
    left:50%;
  }
  .-guideline_basic::after{
    content:"w:390px";
    font-size:1.2rem;
    padding:0 0.5rem;
    left:0;
  }
  .-guideline_basic > span::after{
    font-size:1.2rem;
    padding:0 0.5rem;
  }
  .-guideline_basic .-w02{
    width:calc(100% - 3.2rem);
  }
  .-guideline_basic .-w02::after{
    content:"w:357px(100vw - 3.2rem)";
    top:4rem;
    left:0;
  }
  .-guideline_basic .-w03{
    width:calc(100% - 4.8rem);
  }
  .-guideline_basic .-w03::after{
    content:"w:342px(100vw - 4.8rem)";
    top:6rem;
    left:0;
  }
  .-guideline_basic .-w04{
    width:calc(100% - 8rem);
  }
  .-guideline_basic .-w04::after{
    content:"w:310px(100vw - 8.0rem)";
    top:8rem;
    left:0;
  }
  @supports (dynamic-range-limit: standard){
    html:not(.ios-not-safari):not(.os-android) .for-status-bars{
      position:fixed;
      top:0;
      left:0;
      width:100%;
      height:9px;
      padding-top:env(safe-area-inset-top);
      background-color:var(--bc_gray_b);
      z-index:9999;
    }
  }
  @supports (dynamic-range-limit: standard){
    html:not(.ios-not-safari):not(.os-android) .for-tab-bars{
      position:fixed;
      bottom:0;
      left:0;
      width:100%;
      height:9px;
      padding-bottom:env(safe-area-inset-bottom);
      background-color:var(--bc_gray_b);
      z-index:9999;
    }
  }
  .l-header{
    width:100vw;
  }
  .l-header_inner{
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    height:7.2rem;
    padding-inline:1.6rem;
  }
  .l-header_logo{
    width:13.6rem;
    height:3.6rem;
  }
  .is-header_up.is-header_fix .l-header .l-header_inner::before{
    -webkit-transform:translateY(-100%);
    transform:translateY(-100%);
  }
  .is-header_up.is-header_fix .l-header .l-header_logo{
    -webkit-transform:translateY(-200%);
    transform:translateY(-200%);
  }
  .is-header_dn.is-header_fix .l-header .l-header_inner::before{
    -webkit-transform:translateY(0);
    transform:translateY(0);
  }
  .is-header_dn.is-header_fix .l-header .l-header_logo{
    -webkit-transform:translateY(0);
    transform:translateY(0);
  }
  .l-menu_drawer{
    background-color:rgba(0, 0, 0, 0.7);
  }
  .l-menu_drawer_inner{
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
  }
  .l-menu_drawer_left_inner{
    padding-top:10rem;
    padding-bottom:8rem;
  }
  .l-menu_drawer_right{
    padding-top:8rem;
    padding-bottom:8.5rem;
  }
  .l-menu_drawer_topics{
    gap:3rem;
  }
  .l-menu_drawer_topics_detail{
    gap:7.5rem;
    padding-inline:2.4rem;
  }
  .l-menu_drawer_topics .item{
    gap:1rem;
  }
  .l-menu_drawer_topics .item:last-of-type::before{
    content:none;
  }
  .l-menu_drawer_topics .item::before{
    bottom:-3.5rem;
  }
  .l-menu_drawer_topics .thumb{
    width:18rem;
  }
  .l-menu_drawer_logo{
    display:none;
  }
  .l-menu_drawer_detail .tel > dd{
    font-size:4rem;
  }
  .l-menu_drawer_detail .holiday{
    width:100%;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
  }
  .l-menu_drawer_link{
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:2rem;
    margin-top:5.6rem;
  }
  .l-menu_drawer_link .m-btn01{
    width:calc(100% - 4.8rem);
    height:6.4rem;
  }
  .l-menu_drawer_gnav{
    gap:1rem;
    width:50%;
    margin-top:7rem;
  }
  .l-menu_drawer_gnav_wrapper{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    margin-left:2.4rem;
  }
  .l-menu_drawer .sns_link{
    width:100%;
    margin-top:5rem;
  }
  .l-footer{
    background-image:url(../img/common/footer_bg_sp.webp);
    overflow:clip;
  }
  .l-footer_inner{
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    padding-top:5rem;
  }
  .l-footer_wrapper{
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    margin-inline:2.4rem;
    margin-top:4rem;
  }
  .l-footer_detail{
    width:100%;
    margin-bottom:4rem;
    padding-bottom:5.5rem;
    text-align:center;
    border-bottom:1px solid var(--bc_white);
  }
  .l-footer_signature{
    font-size:1.3rem;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    width:100%;
  }
  .l-footer_signature .tel{
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
  }
  .l-footer_snav_wrap{
    gap:3rem;
    border-top:1px solid var(--bc_white);
    margin-top:4.5rem;
    padding-block:2rem;
  }
  .l-footer_snav, .l-footer_external{
    width:100%;
    -webkit-box-pack:start;
    -ms-flex-pack:start;
    justify-content:flex-start;
  }
  .l-footer_external li:last-of-type{
    width:100%;
  }
  .l-footer_gnav{
    gap:1.5rem;
    font-size:1.4rem;
  }
  .l-footer_gnav + .l-footer_gnav{
    margin-left:5.5rem;
  }
  .l-footer_logo{
    width:20rem;
    height:23.8rem;
  }
  .l-footer_copyright{
    -webkit-box-pack:start;
    -ms-flex-pack:start;
    justify-content:flex-start;
    margin-inline:2.4rem;
    padding-bottom:3rem;
  }
  .l-contact{
    height:79.8rem;
  }
  .l-contact_bg{
    aspect-ratio:390/1029;
  }
  .l-contact_inner{
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    padding-block:16rem;
  }
  .l-contact_tel_detail{
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    margin-top:5rem;
  }
  .l-contact_tel_detail .tel{
    margin-bottom:2rem;
  }
  .l-contact_tel_detail .tel > dt{
    font-size:2.4rem;
  }
  .l-contact_tel_detail .tel > dd{
    font-size:3.2rem;
  }
  .l-contact_tel_detail .time,
  .l-contact_tel_detail .holiday{
    display:-webkit-inline-box;
    display:-ms-inline-flexbox;
    display:inline-flex;
    -webkit-box-pack:start;
    -ms-flex-pack:start;
    justify-content:flex-start;
    min-width:19.4rem;
    font-size:1.4rem;
  }
  .l-contact_tel_detail .time > dt.-em2,
  .l-contact_tel_detail .holiday > dt.-em2{
    letter-spacing:1em;
    margin-right:-0.25em;
  }
  .l-contact_tel_detail .time::after{
    width:1em;
    text-align:center;
    content:"/";
  }
  .l-contact_tel_detail .time + .time::after{
    content:none;
  }
  .l-contact_tel_detail .holiday{
    text-align:center;
  }
  .l-contact_tel_detail .holiday > dd{
    text-align:left;
  }
  .l-contact_link{
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:1.6rem;
    margin-inline:2.4rem;
    margin-top:4.5rem;
  }
  .l-contact .m-title .-en{
    font-size:6rem;
  }
  .l-contact .m-title{
    text-align:center;
  }
  .l-contact .m-btn01{
    width:100%;
    height:8rem;
  }
  .l-contact .m-btn01 span{
    font-size:1.6rem;
  }
  .l-contact .m-btn01 i{
    right:2rem;
  }
  .l-content_wrap::before{
    content:"";
    position:fixed;
    top:0;
    bottom:0;
    left:0;
    right:0;
    z-index:2;
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
    pointer-events:none;
    opacity:0;
    -webkit-transition:opacity 0.3s;
    transition:opacity 0.3s;
  }
  html:is(.is-popup_sp_line) .l-content_wrap::before{
    opacity:1;
  }
  :where(.l-elem_tit){
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
  }
  :where(.l-elem_tit) .m-title .-en{
    font-size:2rem;
  }
  :where(.l-elem_tit) .m-title .-ja{
    top:-3rem;
  }
  :where(.l-elem_tit) .m-headline{
    font-size:1.8rem;
    line-height:1.8;
  }
  :where(.l-elem_tit) > dd{
    margin-top:2rem;
  }
  :where(.l-cont_tit) .-ja{
    font-size:1.2rem;
    letter-spacing:0.18em;
    line-height:1;
  }
  :where(.l-cont_tit) .-en{
    font-size:5.6rem;
    letter-spacing:0.05em;
    line-height:1;
  }
  :where(.l-cont_header) .sec-fv_inner{
    overflow:clip;
  }
  :where(.l-cont_header) .sec-fv_logo{
    top:2rem;
    left:2rem;
    width:14.4rem;
  }
  :where(.l-cont_header):has(.l-cont_tit.-center) :where(.l-cont_tit) .-ja{
    font-size:1.2rem;
    letter-spacing:0.18em;
  }
  :where(.l-cont_header):has(.l-cont_tit.-center) :where(.l-cont_tit) .-en{
    font-size:4.2rem;
    letter-spacing:0.05em;
    text-align:center;
  }
  :where(.l-cont_header):is(.l-full_screen) .sec-fv_inner{
    height:100svh;
  }
  :where(.l-cont_header):is(.l-full_screen) .sec-fv_bg::after{
    opacity:0.5;
  }
  :where(.l-cont_header):is(.l-full_screen) .l-cont_tit{
    left:2rem;
    bottom:1.5rem;
  }
  :where(.l-cont_header):is(.l-dress) .sec-fv_inner{
    padding-top:47rem;
  }
  :where(.l-cont_header):is(.l-dress) .sec-fv_inner::before{
    height:14rem;
  }
  :where(.l-cont_header):is(.l-dress) .sec-fv_bg{
    aspect-ratio:358/280;
    width:100%;
    height:auto;
    margin-inline:1.6rem;
  }
  :where(.l-cont_header):is(.l-dress) .l-cont_tit{
    top:27rem;
  }
  :where(.l-cont_header):is(.l-dress) .l-cont_tit .m-title{
    text-align:center;
  }
  :where(.l-cont_header):is(.l-dress) .l-cont_tit .-en{
    font-size:5.6rem;
  }
  :where(.l-cont_header):is(.l-archive) .sec-fv_inner{
    padding-top:27.2rem;
    padding-bottom:4rem;
  }
  :where(.l-cont_header):is(.l-archive) .l-cont_tit{
    position:relative;
  }
  .m-drawer_btn{
    font-size:1.3rem;
    top:2.4rem;
    right:1.6rem;
    width:9.1rem;
    height:2.6rem;
    padding-inline:1.5rem;
  }
  .m-breadcrumb{
    margin-inline:1.6rem;
    margin-top:8rem;
    overflow-x:scroll;
  }
  .m-page_top{
    bottom:12rem;
    right:2.4rem;
  }
  .m-page_top.is-endline{
    bottom:5rem;
  }
  .m-selection_inner{
    padding-block:10rem 0;
  }
  .m-selection_detail{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:4rem;
    margin-inline:1.6rem;
    margin-top:5rem;
  }
  .m-selection_item{
    position:relative;
    width:100%;
    padding-left:15.5rem;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
  }
  .m-selection_item .l-sec_tit .m-title{
    -webkit-box-align:start;
    -ms-flex-align:start;
    align-items:flex-start;
  }
  .m-selection_item .l-sec_tit .m-title .-ja{
    font-size:1rem;
  }
  .m-selection_item .l-sec_tit .m-title .-en{
    font-size:2rem;
  }
  .m-selection_item .l-sec_tit .m-lead{
    font-size:1.3rem;
    margin-top:0.5rem;
    white-space:pre;
  }
  .m-selection_thumb{
    position:absolute;
    top:0;
    left:0;
    aspect-ratio:1/1;
    width:12.8rem;
  }
  .m-selection_link{
    margin-top:1.6rem;
  }
  .m-selection_link .m-btn01{
    height:3.6rem;
    padding-inline:1.4rem 2rem;
    font-size:1.1rem;
    font-weight:500;
  }
  :where(.m-catch){
    font-size:2rem;
    line-height:2.2;
  }
  :where(.m-headline){
    font-size:2rem;
  }
  :where(.m-title) :where(.-ja){
    font-size:1.2rem;
  }
  :where(.m-title) :where(.-en){
    letter-spacing:0.05em;
    font-size:4.2rem;
  }
  :where(.m-sub_title) .-ja{
    padding-block:0.25em 0.35em;
    padding-inline:0.5em 0.5em;
    font-size:1.4rem;
  }
  :where(.m-description){
    font-size:1.2rem;
    line-height:1.6;
  }
  :where(.m-btn01){
    font-size:1.4rem;
  }
  :where(.m-btn02){
    height:2.6rem;
    padding-right:3rem;
    font-size:1.2rem;
  }
  :where(.m-linklist) li{
    font-size:1.2rem;
  }
  :where(.m-table) > .item{
    font-size:1.3rem;
    line-height:1.8;
  }
  :where(.m-table) > .item > dt{
    padding-inline:1rem;
    width:10rem;
  }
  :where(.m-table) > .item > dd{
    padding-inline:1rem;
  }
  :where(.m-playmovie) span{
    font-size:1rem;
  }
  :where(.m-playmovie) i{
    width:4.6rem;
    height:4.6rem;
  }
  .swiper:has(.swiper-nav_wrapper) .swiper-pagination-current, .swiper:has(.swiper-nav_wrapper) .swiper-pagination-total{
    font-size:1.4rem;
  }
  .swiper:has(.swiper-nav_wrapper) .swiper-button-prev,
  .swiper:has(.swiper-nav_wrapper) .swiper-button-next{
    height:1.8rem;
  }
  .swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination-current, .swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination-total{
    font-size:1.4rem;
  }
  .swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-prev,
  .swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-next{
    height:1.8rem;
  }
  :where([data-accordion-trigger]) i{
    right:2rem;
  }
  :where([data-modal-area]) .content{
    top:50vw;
    bottom:50vw;
    right:2rem;
    left:2rem;
  }
  :where([data-modal-area]) .closer{
    top:0.4rem;
    right:0.4rem;
    width:6.4rem;
    height:6.4rem;
  }
  :where([data-modal-area]) .closer span{
    font-size:1.2rem;
  }
  :where([data-modal-area]) .closer i{
    width:1.6rem;
    height:1.6rem;
  }
  :where([data-modal-area]) .closer i::before, :where([data-modal-area]) .closer i::after{
    width:1.8rem;
  }
  .mod_gallery_modal{
    --gap:0.4rem;
    padding:0.5rem 2rem;
    -webkit-column-gap:1.5rem 1rem;
    -moz-column-gap:1.5rem 1rem;
    column-gap:1.5rem 1rem;
  }
  .mod_gallery_modal-img{
    width:calc(50% - var(--gap) / 2);
  }
  .mod_gallery_modal .__modal-current{
    margin:-0.4rem 0 0 0.4rem;
    padding:0.4rem;
    width:10.5rem;
    height:10.5rem;
  }
  .mod_gallery_modal-more{
    width:calc(100% - 3.2rem);
    height:5rem;
    margin-inline:1.6rem;
    font-size:1.4rem;
    height:5rem;
  }
  .mod_gallery_modal-more::before, .mod_gallery_modal-more::after{
    right:calc(50% - 3rem);
    width:1.1rem;
  }
  .js-gallery_modal_wrap{
    top:-0.5rem;
    padding:0;
    width:calc(100% - 0.1rem);
    height:calc(100vh - 1rem);
  }
  .js-gallery_modal-img{
    max-width:calc(100% - 6rem);
  }
  .js-gallery_modal-close{
    width:6.4rem;
    top:calc(50% - 50svh + 0.4rem);
    right:0.4rem;
  }
  .js-gallery_modal-close::before{
    top:1.5rem;
    font-size:1.2rem;
  }
  .js-gallery_modal-close i{
    top:1rem;
  }
  .js-gallery_modal-close i:before, .js-gallery_modal-close i:after{
    width:2rem;
  }
  .js-gallery_modal-arrow{
    width:3.2rem;
  }
  video .js-gallery_modal-img, iframe .js-gallery_modal-img{
    max-width:calc(100% - 0.6rem);
    width:100%;
    aspect-ratio:16/9;
  }
}
@media screen and (width > 767px) and (min-height: 580px){
  .l-menu_drawer_inner{
    height:100%;
  }
}
@media (width > 767px){
  html{
    font-size:clamp(var(--pc-min-size) / var(--base-size) * 10px, 10 / var(--variable-length), 10px);
  }
  body{
    min-width:1024px;
    font-size:1.6rem;
    line-height:1.6;
  }
  ._sp,
  [data-sc-sp]{
    display:none !important;
  }
  :root{
    --scroll-margin-top:80;
  }
  :root{
  }
  :where(.-line_clamp).-line1{
    -webkit-line-clamp:1;
    line-clamp:1;
  }
  :where(.-line_clamp).-line2{
    -webkit-line-clamp:2;
    line-clamp:2;
  }
  :where(.-line_clamp).-line3{
    -webkit-line-clamp:3;
    line-clamp:3;
  }
  .-guideline_basic::before{
    width:calc(160rem - (var(--scrollbar)));
    left:calc(50% - 80rem + var(--scrollbar) / 2);
  }
  .-guideline_basic::after{
    content:"w:1600px";
    font-size:1.4rem;
    padding:0 1rem;
    left:calc(50% - 80rem + var(--scrollbar) / 2);
  }
  .-guideline_basic .-w02::after{
    content:"w:1360px";
    top:3rem;
    left:calc(50% - 68rem + var(--scrollbar) / 2);
  }
  .-guideline_basic .-w03::after{
    content:"w:1200px";
    top:0rem;
    left:calc(50% - 60rem + var(--scrollbar) / 2);
  }
  .-guideline_basic .-w04{
    width:16rem;
  }
  .-guideline_basic .-w04::after{
    content:"w:160px";
    top:3rem;
    left:calc(50% - 8rem);
  }
  .l-header_inner{
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end;
    gap:3rem;
    height:10.7rem;
    padding-inline:4.8rem 17rem;
  }
  .l-header_logo{
    position:absolute;
    left:4.7rem;
    width:13.6rem;
    height:3.6rem;
  }
  body:not(.is-header_fix) .l-header .m-drawer_btn{
    top:4rem;
  }
  .is-header_fix .l-header .l-header_inner{
    height:7.2rem;
  }
  .is-header_fix .l-header .l-header_inner::before{
    -webkit-transform:translateY(0);
    transform:translateY(0);
  }
  .is-header_fix .l-header .m-drawer_btn{
    top:2.3rem;
  }
  .l-menu_drawer{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    background-color:rgba(0, 0, 0, 0.5);
  }
  .l-menu_drawer_left{
    width:calc(100vw - 76.5rem);
    min-width:8.35rem;
    height:100%;
  }
  .l-menu_drawer_left_inner{
    width:67.5rem;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    margin-inline:auto;
    padding-top:16rem;
    padding-bottom:17rem;
  }
  .l-menu_drawer_right{
    width:47.81%;
    min-width:76.5rem;
    padding-top:12rem;
    padding-bottom:17rem;
  }
  .l-menu_drawer_topics{
    gap:6.5rem;
  }
  .l-menu_drawer_topics_detail{
    gap:6rem;
    padding-inline:8.5rem;
  }
  .l-menu_drawer_topics .item{
    gap:3rem;
  }
  .l-menu_drawer_topics .item::before{
    bottom:-3rem;
  }
  .l-menu_drawer_topics .thumb{
    width:20rem;
  }
  .l-menu_drawer_logo{
    width:16rem;
    height:19.1rem;
  }
  .l-menu_drawer_tel{
    -webkit-box-ordinal-group:5;
    -ms-flex-order:4;
    order:4;
    margin-top:8rem;
  }
  .l-menu_drawer_detail{
    width:67.5rem;
  }
  .l-menu_drawer_detail .tel > dd{
    font-size:3.2rem;
  }
  .l-menu_drawer_link{
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    gap:1.5rem;
    margin-inline:auto;
    margin-top:4rem;
    -webkit-box-ordinal-group:6;
    -ms-flex-order:5;
    order:5;
  }
  .l-menu_drawer_link .m-btn01{
    width:21.5rem;
    height:6.4rem;
  }
  .l-menu_drawer_gnav{
    gap:1.6rem;
  }
  .l-menu_drawer_gnav + .l-menu_drawer_gnav{
    -webkit-box-ordinal-group:4;
    -ms-flex-order:3;
    order:3;
    margin-left:7rem;
  }
  .l-menu_drawer_gnav_wrapper{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    margin-left:16.5rem;
  }
  .l-menu_drawer .sns_link{
    -webkit-box-ordinal-group:7;
    -ms-flex-order:6;
    order:6;
    position:absolute;
    left:0;
    top:40.5rem;
    width:16rem;
  }
  .l-footer{
    background-image:url(../img/common/footer_bg.webp);
  }
  .l-footer_inner{
    gap:14rem;
    width:120rem;
    padding-block:10rem;
  }
  .l-footer_wrapper{
    -webkit-box-align:start;
    -ms-flex-align:start;
    align-items:flex-start;
  }
  .l-footer_detail{
    width:49rem;
  }
  .l-footer_detail::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:41rem;
    width:1px;
    background-color:var(--bc_white);
  }
  .l-footer_signature{
    font-size:1.4rem;
  }
  .l-footer_snav_wrap{
    gap:3.5rem;
    position:absolute;
    left:0;
    bottom:0;
    margin-top:9rem;
  }
  .l-footer_gnav{
    gap:3.2rem;
    font-size:1.5rem;
  }
  .l-footer_gnav + .l-footer_gnav{
    margin-left:6rem;
  }
  .l-footer_logo{
    width:20rem;
    height:23.8rem;
  }
  .l-footer_copyright{
    width:100%;
  }
  .l-contact{
    height:57.5rem;
  }
  .l-contact_bg{
    aspect-ratio:1600/1055;
  }
  .l-contact_inner{
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    width:104rem;
    padding-block:15rem 14rem;
  }
  .l-contact_tel_detail{
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    width:44rem;
    margin-left:28rem;
  }
  .l-contact_tel_detail .tel > dt{
    font-size:3.2rem;
  }
  .l-contact_tel_detail .tel > dd{
    font-size:4.4rem;
  }
  .l-contact_tel_detail .time,
  .l-contact_tel_detail .holiday{
    font-size:1.6rem;
  }
  .l-contact_tel_detail .time{
    margin-top:2rem;
  }
  .l-contact_tel_detail .time + .time::before{
    content:"/";
    display:inline-block;
    text-align:center;
    width:2em;
  }
  .l-contact_tel_detail .holiday{
    width:100%;
    margin-top:0.5em;
  }
  .l-contact_link{
    width:100%;
    gap:4rem;
    margin-top:7rem;
  }
  .l-contact .m-btn01{
    width:50rem;
    height:10rem;
  }
  .l-contact .m-btn01 span{
    font-size:1.8rem;
  }
  .l-contact .m-btn01 i{
    right:4rem;
  }
  :where(.l-elem_tit){
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
  }
  :where(.l-elem_tit) .m-title .-ja{
    top:-5rem;
  }
  :where(.l-elem_tit) .m-headline{
    font-size:2rem;
    line-height:2;
  }
  :where(.l-elem_tit) > dd{
    margin-left:3.2rem;
  }
  :where(.l-elem_tit) > dd::before{
    content:"";
    position:absolute;
    top:0.5em;
    bottom:0.5em;
    left:-1.6rem;
    width:1px;
    background-color:var(--bc_white);
  }
  :where(.l-cont_tit) .-ja{
    font-size:1.8rem;
    letter-spacing:0.07em;
    line-height:1.4;
  }
  :where(.l-cont_tit) .-en{
    font-size:15rem;
    letter-spacing:0;
    line-height:1;
  }
  :where(.l-cont_header) .sec-fv_logo{
    top:4rem;
    left:4rem;
    width:16rem;
  }
  :where(.l-cont_header):has(.l-cont_tit.-center) :where(.l-cont_tit) .-ja{
    font-size:1.4rem;
    letter-spacing:0.18em;
  }
  :where(.l-cont_header):has(.l-cont_tit.-center) :where(.l-cont_tit) .-en{
    font-size:6.5rem;
    letter-spacing:0.03em;
  }
  :where(.l-cont_header):is(.l-full_screen) .sec-fv_inner{
    height:100vh;
  }
  :where(.l-cont_header):is(.l-full_screen) .l-cont_tit{
    left:4rem;
  }
  :where(.l-cont_header):is(.l-dress) .sec-fv_inner{
    padding-top:29.6rem;
  }
  :where(.l-cont_header):is(.l-dress) .sec-fv_inner::before{
    height:28rem;
  }
  :where(.l-cont_header):is(.l-dress) .sec-fv_bg{
    z-index:0;
    max-width:120rem;
    width:100%;
    height:60.4rem;
    margin-inline:auto;
  }
  :where(.l-cont_header):is(.l-dress) .l-cont_tit{
    top:12rem;
  }
  :where(.l-cont_header):is(.l-plan) .sec-fv_inner{
    height:64rem;
  }
  :where(.l-cont_header):is(.l-plan) .sec-fv_bg{
    position:relative;
    max-width:100%;
    width:100%;
    height:64rem;
    margin-inline:auto;
  }
  :where(.l-cont_header):is(.l-archive) .sec-fv_inner{
    height:47rem;
  }
  :where(.l-cont_header):is(.l-archive) .l-cont_tit{
    top:24rem;
  }
  :where(.l-cont_header):is(.l-detail) .sec-fv_inner{
    height:31rem;
  }
  .m-drawer_btn{
    font-size:1.5rem;
    right:4.8rem;
    width:9.8rem;
    height:2.6rem;
    padding-inline:1.5rem;
  }
  .m-breadcrumb{
    margin-top:16rem;
    margin-inline:4rem;
  }
  .m-page_top{
    bottom:2.4rem;
    right:3.2rem;
  }
  .m-selection_inner{
    padding-block:12rem 0;
  }
  .m-selection_detail{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    grid-template-rows:repeat(1, 1fr);
    gap:4.8rem;
    max-width:136.8rem;
    width:100%;
    margin-inline:auto;
    margin-top:9rem;
  }
  .m-selection_item{
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    width:30.6rem;
  }
  .m-selection_item .l-sec_tit{
    margin-top:3rem;
  }
  .m-selection_item .l-sec_tit .m-title .-ja{
    font-size:1.2rem;
  }
  .m-selection_item .l-sec_tit .m-title .-en{
    font-size:2.4rem;
  }
  .m-selection_thumb{
    aspect-ratio:306/200;
    width:30.6rem;
  }
  .m-selection_link{
    margin-top:2.4rem;
  }
  .m-selection:has(.m-selection_item:nth-of-type(5)) .m-selection_detail{
    max-width:104rem;
    -webkit-column-gap:4.8rem;
    -moz-column-gap:4.8rem;
    column-gap:4.8rem;
    row-gap:7rem;
  }
  :where(.m-title) :where(.-ja){
    font-size:1.4rem;
  }
  :where(.m-title) :where(.-en){
    letter-spacing:0.03em;
    font-size:6.5rem;
  }
  :where(.m-sub_title) .-ja{
    padding-block:0.125em;
    padding-inline:0.25em 0.07em;
    font-size:1.8rem;
  }
  :where(.m-description){
    font-size:1.4rem;
    line-height:1.7;
  }
  :where(.m-btn01){
    font-size:1.4rem;
  }
  :where(.m-btn02){
    height:3rem;
    padding-right:3.6rem;
    font-size:1.4rem;
  }
  :where(.m-linklist) li{
    font-size:1.4rem;
  }
  :where(.m-table) > .item{
    font-size:1.4rem;
    line-height:2.2;
  }
  :where(.m-table) > .item > dt{
    padding-inline:1.5rem;
    width:20rem;
  }
  :where(.m-table) > .item > dd{
    padding-inline:1.5rem;
  }
  :where(.m-playmovie) span{
    font-size:1.4rem;
  }
  :where(.m-playmovie) i{
    width:6.4rem;
    height:6.4rem;
  }
  .swiper:has(.swiper-nav_wrapper) .swiper-pagination-current, .swiper:has(.swiper-nav_wrapper) .swiper-pagination-total{
    font-size:1.6rem;
  }
  .swiper:has(.swiper-nav_wrapper) .swiper-button-prev,
  .swiper:has(.swiper-nav_wrapper) .swiper-button-next{
    height:2.4rem;
  }
  .swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination-current, .swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-pagination-total{
    font-size:1.6rem;
  }
  .swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-prev,
  .swiper:has(+ .swiper-nav_wrapper) + :where(.swiper-nav_wrapper) .swiper-button-next{
    height:2.4rem;
  }
  .swiper:has(+ .swiper-nav_wrapper).-vertical_pc + :where(.swiper-nav_wrapper){
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:1rem;
    width:4.8rem;
    padding-top:13rem;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
  }
  .swiper:has(+ .swiper-nav_wrapper).-vertical_pc + :where(.swiper-nav_wrapper) :where(.swiper-pagination_wrapper){
    position:absolute;
    top:4.4rem;
    left:-3.2rem;
    -webkit-transform-origin:center center;
    transform-origin:center center;
    -webkit-transform:rotate(90deg);
    transform:rotate(90deg);
  }
  :where([data-modal-area]){
    padding:40px;
  }
  :where([data-modal-area]) .closer{
    top:0.8rem;
    right:0.8rem;
    width:8rem;
    height:8rem;
  }
  :where([data-modal-area]) .closer span{
    font-size:1.4rem;
  }
  :where([data-modal-area]) .closer i{
    width:2rem;
    height:2rem;
  }
  :where([data-modal-area]) .closer i::before, :where([data-modal-area]) .closer i::after{
    width:2.2rem;
  }
  .mod_gallery_modal{
    margin-inline:auto;
    width:120rem;
    padding:1rem;
  }
  body.__modal-active .l-header > .l-header_inner{
    width:calc(100% - var(--scrollbar-w));
  }
  body.__modal-active .m-page_top{
    -webkit-box-sizing:content-box;
    box-sizing:content-box;
    right:var(--scrollbar-w);
  }
  body.__modal-active .floating_cookie_accept_area{
    padding-right:calc(var(--scrollbar-w) + 3rem);
  }
  body.__modal-noclick:not(.__modal-active) .js-gallery_modal_wrap{
    width:calc(100% - 12rem + var(--scrollbar-w) * 2);
  }
  .js-gallery_modal-img{
    max-width:120rem;
  }
  video .js-gallery_modal-img, iframe .js-gallery_modal-img{
    max-width:120rem;
    aspect-ratio:16/9;
  }
}
@media (hover){
  :where(a[href]:not([class], [href^="tel:"])){
    -webkit-transition:opacity 0.5s;
    transition:opacity 0.5s;
  }
  :where(a[href]:not([class], [href^="tel:"])):hover{
    opacity:0.6;
  }
}
@media (orientation: landscape){
  html{
    -webkit-margin-start:env(safe-area-inset-left);
    margin-inline-start:env(safe-area-inset-left);
  }
}
@media (pointer: fine), (hover: hover){
  a[href^="tel:"]{
    pointer-events:none;
  }
}
@media not (pointer){
  *{
    -webkit-tap-highlight-color:transparent;
  }
}/*# sourceMappingURL=common.css.map */
