@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Jost:wght@400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat&display=swap');
:root {
  /*使用しない場合も必ず設定*/
  /*--i_bg_color: #f8dedd;*/ /*背景色*/
  --i_bg_color: #f2ebe6; /*背景色*/
  /*--i_txt_color: #000;*/ /*テキスト*/
  --i_txt_color: #333; /*テキスト*/
  /*--i_main_color: #f582ae;*/ /*メイン*/
  --i_main_color: #A50008; /*メイン*/
  /*--i_sub_color: #f582ae;*/ /*アクセント*/
  --i_sub_color: #A50008; /*アクセント*/
  /*--i_sub2_color: #F3C9C7;*/ /*薄い色*/
  --i_sub2_color: #ebe7e3; /*薄い色*/
  /*--i_btn_color: #f582ae;*/ /*ボタン*/
  --i_btn_color: #A60108; /*ボタン*/
  /*--i_btn_hover_color: #f582ae;*/ /*ボタンhover*/
  --i_btn_hover_color: #E69898; /*ボタンhover*/
  --i_btn_txt_color: #fff; /*ボタンテキスト*/
  --i_btn_hover_txt_color: #fff; /*ボタンテキスト*/
  --i_shadow_color: rgba(0, 0, 0, 0.05); /*シャドウ*/
  --i_border_color: rgba(0, 0, 0, 0.13); /*ボーダー*/
  --i_noimg_bg_color: #fff; /*画像無し*/
}
@media screen and (max-width: 500px) {
  :root {
    --i_padding: 20px; /*左右余白*/
  }
}
body.ft03, body.ft03 #setting_modal .heading_design * {
  font-family: 'Jost', 'Noto Sans JP', "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
/*------------------------------------------------------------------*/
/*-----------------------------base---------------------------------*/
/*------------------------------------------------------------------*/
html {
  font-size: 62.5%;
}
body {
  font-size: 1.55rem;
  line-height: 1.9;
  letter-spacing: 0.02rem;
  -webkit-text-size-adjust: 100%;
  color: var(--i_txt_color);
  font-weight: 400;
  overflow-x: hidden;
    overflow-y: hidden;
}
body {
  background-image: url(/storage/images/1/20251106131929.jpg); 
  background-repeat: repeat-y;
  background-position: top center;
    background-size: cover;
}
main {
  background: transparent;
}
@media screen and (max-width: 850px) {
  html {
    font-size: 60.606%;
  }
  body {
    letter-spacing: 0px;
  }
}
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, main {
    /* IE11 にのみ適用される */
    display: block !important;
  }
}
a {
  outline: 0;
  text-decoration: none;
  color: #f4f4f4;
}
section[style*=" color:"]:not([style*=" color: inherit"]) a, div[style*=" color:"]:not([style*=" color: inherit"]) a {
  color: inherit;
}
/*composite_boxの最大高さとトリミングの起点*/
/*基本はjsにより各カラム中から最大の画角に設定*/
.composite_box01 .inner_item_img img {
  object-position: 50% 50%;
  font-family: 'object-position: 50% 50%;';
}
@media screen and (max-width: 850px) {
  #sidebar {
    border: 5px solid var(--i_sub2_color);
  }
}
.no_img {
  background: var(--i_noimg_bg_color, rgba(200, 200, 200, 0.3));
}
/*----------------------------loader----------------------------*/
#load div:nth-of-type(1) {
  background: var(--i_bg_color);
}
#load .loader {
  border: 1px solid var(--i_main_color); /*★*/
}
#load .loader, #load .loader::before {
  border-top-color: var(--i_main_color) !important;
}
.popup .loader {
  border: 1px solid var(--i_main_color); /*★*/
}
.popup .loader, .popup .loader::before {
  border-top-color: var(--i_main_color) !important;
}
#load .loader::before, #load .loader::after, .popup .loader::before, .popup .loader::after { /*★*-1*/
  left: -1px;
  top: -1px;
}
#load img {
  max-width: 240px;
}
@media screen and (max-width: 650px) {
  #load img {
    max-width: 180px;
  }
}
/*----------------------------header----------------------------*/
header {
  font-size: 1.4rem;
  color: var(--i_txt_color);
}
#pattern2 {
  position: fixed !important;
}
body.scrolled header {
  background-color: rgba(255, 255, 255, 0.7) !important; /* 好みに応じて透明度調整 */
  backdrop-filter: blur(5px); /* 背景をぼかして透過感を出す */
  -webkit-backdrop-filter: blur(5px);
  transition: background-color 0.3s ease-in-out;
}
header h1 {
  line-height: 1.5;
  font-size: 1.3rem;
  font-weight: normal;
  opacity: 0.7;
  fill: var(--i_txt_color);
}
body.scrolled header .logo {
  padding: 20px 0 !important;
}
header .logo, header .logo a {
  max-width: 300px;
}
body.scrolled header .logo a img {
  max-height: 65px;
}
.logo {
    min-height: auto !important;
}
header .header_contents .header_col1 {
  /* ▼水平方向レイアウト */
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
}
header .header_contents .header_col1 .tel {
  position: relative;
  font-size: 26px;
  line-height: 1;
  padding-left: 26px;
  font-weight: bold;
  font-weight: normal;
  fill: var(--i_txt_color);
}
header .header_contents .header_col1 .tel svg, header .header_contents .header_col1 .btn .translate a svg, header .burger li.sp_translate a svg, header .header_contents .header_sns li svg {
  fill: var(--i_txt_color);
}
header .sp_menu a div span, header .sp_menu a div:before, header .sp_menu a div:after {
  background: var(--i_txt_color);
}
header .header_contents .header_col1 .btn > a {
  display: block;
  text-align: center;
  background: #B3424A;
  color: #FFFFFF;
  /*
	color: var(--i_btn_txt_color);
  */
  padding: 11px 15px 10px;
  letter-spacing: 0.2rem;
  transition: 0.4s ease-in-out;
}
header .header_contents .header_col1 .btn > a:hover {
  opacity: 0.6;
}
header .header_contents .header_col1 .tel svg {
  width: 22px;
  height: 22px;
  top: calc(50% - 11px);
  left: 0;
}
header .header_contents .header_col1 .btn .translate a svg {
  max-width: 74%;
  max-height: 74%;
  margin: 13% auto 0;
}
header .header_contents .header_col1 .btn .translate a:hover {
  opacity: 0.8;
}
header#pattern1 nav, header#pattern3 nav {
  position: relative;
}
header nav * {
  color: var(--i_txt_color);
  font-family: 'Noto Sans JP' !important;
  font-weight: 400 !important;
  letter-spacing: 2px;
}
header nav ul.nav_1st {
  width: 100%;
  max-width: 1300px !important; /*任意*/
}
header nav ul.nav_1st > li {
  box-sizing: border-box;
  position: relative;
}
header nav ul.nav_1st > li:after { /*罫線*/
  content: "";
  width: 1px;
  height: 40%;
  position: absolute;
  top: 30%;
  left: 0;
}
header nav ul.nav_1st > li:last-child:before { /*罫線*/
  content: "";
  width: 1px;
  height: 40%;
  position: absolute;
  top: 30%;
  right: 0;
}
header nav ul.nav_1st > li > a {
  font-size: 1.5rem;
  font-weight: bold;
  position: relative;
  padding-left: 1vw;
  padding-right: 1vw;
}
header nav ul.nav_1st > li > a span {
  /*ナビの高さはline-heightで調整*/
  line-height: 4; /* マージン普通選択時 */
  letter-spacing: 0.4rem;
  transition: 0.4s ease-in-out;
  font-weight: 400;
  font-size: 1.45rem;
}
header nav ul.nav_1st > li > a:hover span {
  opacity: 0.7;
}
.scrolled header#pattern3 nav ul.nav_1st > li > a span {
  line-height: 2.5;
}
body.margin header nav ul.nav_1st > li > a span {
  line-height: 4;
}
header nav ul.nav_2nd {
  padding-top: 20px;
}
header nav ul.nav_1st > li:hover ul.nav_2nd {
  padding-top: 15px;
  box-shadow: 2px 2px 5px var(--i_shadow_color);
}
header nav ul.nav_2nd > li {
  background: rgb(87 25 25 / 90%);
  border-bottom: 1px solid var(--i_border_color);
}
header nav ul.nav_2nd > li:nth-last-of-type(1) {
  border-bottom: none;
}
header nav ul.nav_2nd li a {
  padding: 10px 20px;
  font-weight: normal;
  font-size: 1.4rem;
}
header nav ul.nav_2nd > li > a {
  padding-right: 30px;
}
header nav ul.nav_2nd > li > a:after {
  height: 5px;
  width: 5px;
  transform: rotate(-45deg);
  border-right: 1px solid var(--i_sub_color);
  border-bottom: 1px solid var(--i_sub_color);
  top: calc(50% - 2.5px);
  right: 20px;
}
header nav ul.nav_3rd {
  padding-left: 20px;
}
header nav ul.nav_3nd li a {
  padding: 5px 20px;
}
header nav ul.nav_3rd > li > a:after {
  height: 1px;
  width: 4px;
  background: var(--i_sub_color);
  top: calc(50% - 0.5px);
  left: 5px;
}
@media screen and (max-width: 900px) {
  header, header *, header nav ul.nav_2nd li a {}
  body.scrolled header .logo {
    padding: 10px 0 !important;
  }
  header.open:after, header .header_contents {
    background: rgba(255, 255, 255, 0.9);
  }
  .header_contents {
    z-index: 2;
  }
  header .burger li.sp_translate a svg {
    height: 28px;
    width: 28px;
    margin: 10% auto;
  }
  header .header_sns, header .header_contents .header_col1, header .header_contents .header_col2 {
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    border-bottom: 1px solid var(--i_border_color);
  }
  header .header_sns {
    border-bottom: none;
  }
  header .header_sns:empty, header .header_contents .header_col1:empty, header .header_contents .header_col2:empty {
    border: none;
  }
  header .header_contents .header_col1 .tel, header .header_contents .header_col1 .btn {
    float: none;
  }
  header .header_contents .header_col2 {
    display: block !important;
  }
  header nav {
    border-bottom: 1px solid var(--i_border_color);
  }
  header nav ul.nav_1st {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    border-top: 1px solid var(--i_border_color);
  }
  header nav ul.nav_1st li {
    border-bottom: 1px solid var(--i_border_color);
    border-top: 1px solid rgba(255, 255, 255, 0.2);
  }
  header nav ul.nav_1st > li:before, header nav ul.nav_1st > li:after {
    display: none !important;
  }
  header nav ul.nav_1st > li i:before, header nav ul.nav_1st > li i:after {
    background: var(--i_sub_color);
  }
  header nav ul.nav_2nd {
    border-top: 1px solid var(--i_border_color);
  }
  header nav ul.nav_2nd > li {
    box-shadow: none;
  }
  header nav ul.nav_2nd > li * {
    /*color: #333;*/
  }
  header nav ul.nav_3rd {
    border-top: 1px solid var(--i_border_color);
  }
  header nav ul.nav_3rd > li:nth-last-of-type(1) {
    border-bottom: none;
  }
  header .logo a img {
    max-height: 100px !important;
  }
  header nav ul.nav_1st > li > a:hover:before {
    transform: scale(0, 0);
  }
  header#pattern1 nav, header#pattern3 nav {
    border-bottom: 0;
    border-top: 0;
  }
  header .header_contents .header_col1 .btn > a {
    padding: 10px 15px 8px;
  }
  header nav ul.nav_1st > li > a:hover {
    background: none;
  }
  header nav ul.nav_1st > li > a span {
    color: var(--i_txt_color);
  }
  header#pattern2 nav ul.nav_1st {
    border-bottom: 0px;
  }
}
/*----------------------------余白設定----------------------------*/
main > section:first-child:not([class*="pt"]), main > div:first-child:not([class*="pt"]), div[class*='pb'] + .contents_related, section[class*='pb'] + .contents_related, div[class*='pb'] + .contents_related_tags, main > section:not([class*="pt"]), main > div:not([class*="pt"]), aside > section:not([class*="pt"]), aside > div:not([class*="pt"]) {
  padding-bottom: 60px;
}
@media screen and (max-width: 800px) {
  main > section:first-child:not([class*="pt"]), main > div:first-child:not([class*="pt"]), div[class*='pb'] + .contents_related, section[class*='pb'] + .contents_related, div[class*='pb'] + .contents_related_tags, section[class*='pb'] + .contents_related_tags {
    padding-top: 40px;
  }
  main > section:not([class*="pt"]), main > div:not([class*="pt"]), aside > section:not([class*="pt"]), aside > div:not([class*="pt"]) {
    padding-bottom: 40px;
  }
}
/*----------------------------見出し----------------------------*/
section .content_wrapper > .heading:first-child:last-child {
  margin-bottom: 0;
}
/*--*/
section:not([class*="pt"]) .content_wrapper > .heading:first-child:last-child {
  margin-bottom: 0;
}
.heading.block_header_1, .heading.block_header_6 {
  padding-top: 22px;
  margin-bottom: 30px;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: center;
}
.heading.block_header_1:before, .heading.block_header_6:before {
  background: var(--i_main_color);
  width: 50px;
  top: 0;
  height: 3px;
  left: calc(50% - 25px);
}
.heading.block_header_1.align-left:before, .heading.block_header_6.align-left:before {
  left: 0;
}
.heading.block_header_1.align-right:before, .heading.block_header_6.align-right:before {
  left: auto;
  right: 0;
}
.heading.block_header_1 p, .heading.block_header_6 .h {
  font-weight: 400;
  font-size: 3.8rem !important;
  line-height: 1.4;
  position: relative;
  padding-top: 0;
  color: var(--i_txt_color);
  padding-bottom: 8px;
}
.index .heading.block_header_1 p, .index .heading.block_header_6 .h {}
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_1:before, section[style*="color: rgb(255, 255, 255);"] .heading.block_header_6:before, div[style*="color: rgb(255, 255, 255);"] .heading.block_header_1:before, div[style*="color: rgb(255, 255, 255);"] .heading.block_header_6:before {
  background: #fff;
}
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p, section[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 .h, div[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p, div[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 .h {
  color: #fff !important;
}
.heading.block_header_1 .h, .heading.block_header_6 p {
  font-size: 1.7rem;
  font-weight: 400;
}
@media screen and (max-width: 800px) {
  .heading.block_header_1, .heading.block_header_6 {
    margin-bottom: 20px;
    padding-top: 15px;
  }
  .heading.block_header_1 p, .heading.block_header_6 .h {
    font-size: 3rem !important;
  }
  .heading.block_header_1 .h, .heading.block_header_6 p {
    font-size: 1.5rem;
  }
  .index .heading.block_header_1 p, .index .heading.block_header_6 .h {}
  .heading.block_header_1:before, .heading.block_header_6:before {
    width: 30px;
    left: calc(50% - 15px);
  }
} /*--*/
.heading.block_header_2 {
  margin-bottom: 30px;
}
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_2, div[style*="color: rgb(255, 255, 255);"] .heading.block_header_2 {
  border-bottom-color: #fff;
}
.heading.block_header_2.align-center:before {
  display: none;
}
.heading.block_header_2.align-left:before {
  left: 0;
}
.heading.block_header_2.align-right:before {
  right: 0;
}
.heading.block_header_2 .h {
  display: inline-block;
  font-weight: 500;
  font-size: 1.95rem;
  line-height: 1.5;
  position: relative;
  letter-spacing: 0.1rem;
  padding-left: 25px;
}
.heading.block_header_2 .h:before {
  position: absolute;
  display: block;
  content: "";
  top: calc(1em * 1.5 / 2);
  transform: translateY(-50%);
  left: 0;
  width: 15px;
  height: 2px;
  background: var(--i_main_color);
  pointer-events: none;
}
.heading.block_header_2 p {
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.1rem;
  padding-left: 22px;
}
.news_archive .heading.block_header_2, .glossary_archive .heading.block_header_2, .widget_gallery01 .heading.block_header_2, .gallery_archive .heading.block_header_2 {
  border: none;
}
.widget_gallery01.add_design4 .inner_item .heading.block_header_2 {
  padding-left: 2em !important;
}
@media screen and (max-width: 800px) {
  .heading.block_header_2 {
    margin-bottom: 20px;
  }
  .heading.block_header_2 .h {
    font-size: 2.1rem;
    padding-left: 22px;
  }
  .heading.block_header_2 p {
    padding-left: 22px;
  }
}
/*--*/
.heading.block_header_3 {
  overflow: hidden;
  background: var(--i_main_color);
  padding: 10px 30px 10px 30px;
  margin-bottom: 30px;
  color: #fff;
}
.heading.block_header_3 .h {
  font-weight: 500;
  font-size: 1.9rem;
  line-height: 1.5;
  letter-spacing: 0.2rem;
}
.heading.block_header_3 p {
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.2rem;
}
@media screen and (max-width: 800px) {
  .heading.block_header_3 {
    padding: 5px 15px 5px 15px;
    margin-bottom: 20px;
  }
  .heading.block_header_3 .h {
    font-size: 2.0rem;
  }
  .heading.block_header_3 p {
    font-size: 1.3rem;
  }
}
/*--*/
.heading.block_header_4 {
  margin-bottom: 15px;
}
.heading.block_header_4:before {
  display: none;
}
.heading.block_header_4 .h {
  font-size: 2.0rem;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 5px;
  letter-spacing: 0.2rem;
  color: var(--i_main_color);
}
.heading.block_header_4 p {
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.2rem;
}
.composite_box01.block_images_11 .inner_item_txt .heading.block_header_4 .h, .composite_box01.block_images_17 .inner_item .heading.block_header_4 .h, .composite_box01.block_images_15 .inner_item .heading.block_header_4 .h {
  color: #fff;
  font-size: 2.5rem !important;
}
@media screen and (max-width: 800px) {
  .composite_box01.block_images_11 .inner_item_txt .heading.block_header_4 .h, .composite_box01.block_images_17 .inner_item .heading.block_header_4 .h, .composite_box01.block_images_15 .inner_item .heading.block_header_4 .h {
    font-size: 2.1rem !important;
  }
}
/*--*/
.heading.block_header_5 {
  margin-bottom: 15px;
}
.heading.block_header_5 .h {
  display: inline;
  font-weight: 600;
  font-size: 1.8rem;
  margin-bottom: 10px;
  letter-spacing: 0.2rem;
}
.heading.block_header_5 p {
  display: inline;
  font-size: 1.4rem;
  letter-spacing: 0.2rem;
}
.heading.block_header_5 p:before {
  content: "　/　";
}
#sidebar .heading.block_header_5 {
  background: var(--i_main_color);
  color: #fff;
  padding: 5px 15px;
}
/*----------------------------背景パララックス----------------------------*/
.parallax {
  box-shadow: 0 0 5px var(--i_shadow_color) inset;
}
/*----------------------------ボタン----------------------------*/
.contents_btn01 a, .glossary_archive .content_wrapper .heading.block_header_2 a:after {
  border: 1px solid var(--i_btn_color);
  background: var(--i_btn_color);
  color: #fff;
  position: relative;
  display: inline-block;
  padding-left: 10px;
  padding-right: 10px;
  text-align: center;
  letter-spacing: 0.2rem;
  transition: .4s ease-in-out;
  font-family: inherit;
}
main form .submit span input {
  border: 1px solid var(--i_btn_color);
  background: var(--i_btn_color);
  color: #fff;
  position: relative;
  display: inline-block;
  padding-left: 10px;
  padding-right: 10px;
  text-align: center;
  letter-spacing: 0.2rem;
  transition: .4s ease-in-out;
  font-family: inherit;
}
main form .submit {
  position: relative;
}
.contents_btn01 a:hover, .glossary_archive .content_wrapper .heading.block_header_2 a:hover:after, main form .submit span input:hover {
  background: none;
  color: var(--i_btn_color);
}
.contents_btn01 a[target=_blank] span:before, .contents_btn01 a[target=_blank] span:after {
  border: 1px solid #fff;
}
.contents_btn01 a:hover[target=_blank] span:before, .contents_btn01 a:hover[target=_blank] span:after {
  border: 1px solid var(--i_btn_hover_color);
}
.contents_btn01 a span {
  text-align: center;
  line-height: 1.6;
  font-size: 1.5rem;
  padding: 12px 25px 13px;
}
input[type="button"], input[type="text"], input[type="submit"], input[type="image"], textarea {
  -webkit-appearance: none;
  border-radius: 0;
}
section[style*="rgb(255, 255, 255);"].contents_btn01 a:hover, div[style*="rgb(255, 255, 255);"].contents_btn01 a:hover {
  /*border: 1px solid var(--i_bg_color);
	color: #fff;*/
}
section[style*="rgb(255, 255, 255);"].contents_btn01 a[target=_blank] span:hover:before, div[style*="rgb(255, 255, 255);"].contents_btn01 a[target=_blank] span:hover:before, section[style*="rgb(255, 255, 255);"].contents_btn01 a[target=_blank] span:hover:after, div[style*="rgb(255, 255, 255);"].contents_btn01 a[target=_blank] span:hover:after {
  /*border: 1px solid var(--i_bg_color);*/
}
.contents_faq01.accordion .mymore a {
  padding: 0 0 3px;
}
.contents_faq01.accordion .mymore a:hover {
  background: var(--i_txt_color);
}
/*--------------------------------MV--------------------------------*/
#mv_outer {
  /*mvに背景とかはここを利用する*/
  position: relative;
  background: #f1d9d9;
}
#mv_outer::before {
  display: block;
  content: "";
  width: 100%;
  height: 50%;
  position: absolute;
  bottom: 0;
  left: 0;
  /*
	background:#ded7d7;
  */
  pointer-events: none;
}
#mv {
  width: 100%;
  height: 80vh;
  min-height: 500px;
}
#mv:after {
  /*スライドに重ねる色*/
  pointer-events: none;
  background: rgba(0, 0, 0, 0);
}
#mv.slide06 ul.mv_img li, #mv.slide07 ul.mv_img li {
  width: 49% !important;
  height: 70vh;
}
#mv.slide06 ul.mv_img li.r, #mv.slide07 ul.mv_img li.r {
  width: 45% !important;
  left: 57% !important;
  top: 7vh;
  height: 70vh;
}
#mv .mv_text {
  height: 90%;
  align-items: flex-end; /*垂直方向中央*/
  width: 100% !important;
  left: 0 !important;
  bottom: 5% !important;
}
#mv .mv_text > div {
  max-width: none !important;
  box-sizing: border-box;
  width: 90%;
  /*! position: relative; */
  color: var(--i_txt_color);
}
#mv .mv_text h2 {
  font-size: 60px; /* ←max-font-size的意味合いで使用する。動作はjs。*/
  line-height: 1.1;
  letter-spacing: 0.3rem;
  font-weight: 600;
  font-size: 3.5rem !important;
  position: relative;
  background: rgba(255, 255, 255, 0.8);
  display: inline-block;
  padding: 20px;
  margin-bottom: 10px;
}
#mv .mv_text p {
  padding-top: 15px;
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: 0.3rem;
  background: rgba(255, 255, 255, 0.8);
  padding: 10px 20px;
  position: absolute;
}
#mv .mv_scroll {
  width: 3px;
  height: auto;
  position: absolute;
  right: 50px;
  left: auto;
  bottom: 0;
}
#mv .mv_scroll a {
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr;
  letter-spacing: 0.3em;
  font-size: 11px;
  position: relative;
  padding-bottom: 100px;
  height: auto;
  width: auto;
  text-indent: 0;
  potision: relative;
  transition: all .3s ease-in-out;
  text-align: right;
  font-weight: 600;
  color: var(--i_txt_color);
}
#mv .mv_scroll a::before {
  width: 1px;
  height: 70px;
  transform: none;
  position: absolute;
  bottom: 0;
  left: 1px;
  top: auto;
  background: var(--i_txt_color);
  transition: all .3s ease-in-out;
}
#mv .mv_scroll a:hover {
  padding-bottom: 80px;
}
#mv .mv_scroll a:hover::before {
  height: 50px;
}
#mv .mv_scroll a:hover::after {
  height: 25px;
}
#mv .mv_pointer, #mv .mv_arrow {
  display: none;
}
@media screen and (max-height: 630px) {
  #mv {
    height: 72vh;
  }
}
@media screen and (max-width: 100vh) {
  #mv {
    height: 65vh;
  }
}
@media screen and (max-width: 900px) {
  #mv_outer {
    padding-top: 0;
    padding-bottom: 5vh;
  }
  #mv.slide06 ul.mv_img li, #mv.slide06 ul.mv_img li.r, #mv.slide07 ul.mv_img li, #mv.slide07 ul.mv_img li.r {
    width: 85% !important;
    left: 0 !important;
    top: 0;
    height: 65vh;
  }
  #mv .mv_scroll {
    right: 20px;
  }
  #mv .mv_scroll a {
    color: var(--i_txt_color);
    font-size: 1.1rem;
  }
  #mv .mv_scroll a::before {
    background: var(--i_txt_color);
  }
}
@media screen and (max-width: 600px) {
  #mv .mv_scroll {
    bottom: 110px;
  }
  #mv .mv_text h2 {
    font-size: 5.4vw !important;
    letter-spacing: 0.1rem;
    line-height: 1.5;
    padding: 10px;
  }
  #mv .mv_text p {
    font-size: 1.5rem !important;
    letter-spacing: 0.1rem;
    padding: 10px;
    line-height: 2 !important;
  }
}
/*--------------------------------IV--------------------------------*/
#lv {
  background: #000;
  height: 350px;
  padding-bottom: 0;
  width: 100%;
}
#lv_outer {
  /*mvに背景とかはここを利用する*/
  position: relative;
    border-top: none!important;
}
header.over + #lv_outer #lv {
  min-height: 200px;
}
#lv .parallax_img {
  opacity: 0.5;
}
#lv p {
  text-align: center;
  width: 100%;
  box-sizing: border-box;
  padding: 0 10px 0;
}
#lv p span {
  display: inline-block;
  font-size: 3.7rem;
  font-weight: 400;
  text-align: center;
  position: relative;
  word-break: break-all;
  line-height: 1.2;
  letter-spacing: 0.2rem;
  color: #fff;
}
@media screen and (max-width: 800px) {
  #lv {
    height: 200px;
  }
  #lv p span {
    font-size: 2.8rem;
  }
}
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, #lv_outer {
    /* IE11 にのみ適用される */
    border-top-width: 120px !important;
  }
  *::-ms-backdrop, .parallax .parallax_img {
    /* IE11 にのみ適用される */
    margin-top: -140px !important;
  }
  *::-ms-backdrop, #lv {
    padding-top: 120px !important;
  }
}
/*----------------------------パンくず----------------------------*/
#pan {
  padding: 0;
  border-bottom: 1px solid var(--i_border_color);
}
#pan li {
  font-size: 1.2rem;
  padding: 5px 0 3px 30px;
}
#pan li:before, #pan li:after {
  border-top: 1px solid var(--i_border_color);
  border-right: 1px solid var(--i_border_color);
}
/*----------------------------other parts----------------------------*/
/*--リスト--*/
.default_ul li:before {
  border-top: 1px solid var(--i_sub_color);
  border-right: 1px solid var(--i_sub_color);
  height: 5px;
  width: 5px;
  transform: rotate(45deg);
  top: 8px;
  left: 0;
}
/*--アーカイブページ カテゴリー--*/
.category1 li a {
  /*border: 1px solid #ddd;*/
  border-radius: 50px;
  font-size: 1.4rem;
  background: var(--i_sub2_color);
}
.category1 li a:hover, .category1 li a.current {
  background: var(--i_sub_color);
  color: #fff;
  /*border: 1px solid var(--i_sub_color);*/
}
/*--sidebar--*/
#sidebar section, #sidebar > div {
  border-bottom: 1px solid var(--i_border_color);
}
#sidebar h2 {
  text-align: left;
  font-size: 2.2rem;
}
#sidebar .sidebar_tag li {
  border: 1px solid var(--i_border_color);
  background: var(--i_sub2_color);
}
#sidebar .sidebar_list a {
  position: relative;
  padding-left: 15px;
}
#sidebar .sidebar_list a:before {
  content: "";
  display: block;
  position: absolute;
  border-top: 1px solid var(--i_sub_color);
  border-right: 1px solid var(--i_sub_color);
  height: 5px;
  width: 5px;
  transform: rotate(45deg);
  top: calc(50% - 3px);
  left: 0;
}
/*----------------------------pager----------------------------*/
/*アーカイブページページャー*/
.pager li a {
  height: 45px;
  width: 45px;
  line-height: 45px;
  /*border: 1px solid #ddd;*/
  font-size: 1.4rem;
  background: var(--i_sub2_color);
}
.pager li:not(.arrow) a:hover, .pager li:not(.arrow).current a {
  background: var(--i_btn_color);
  color: #fff;
  /*border: 1px solid var(--i_btn_color);*/
}
.pager li.arrow a {
  background: none;
}
/*----------------------------pager2----------------------------*/
/*シングルページページャー*/
.pager2 li a {
  /*border: 1px solid #ddd;*/
  color: var(--i_txt_color);
  line-height: 45px;
  padding: 0 15px;
  font-size: 1.4rem;
  background: var(--i_sub2_color);
}
.pager2 li a:hover {
  background: var(--i_main_color);
  color: #fff;
}
/*----------------------------popup----------------------------*/
/*画像ポップアップ拡大表示*/
.popup {
  background: rgba(255, 255, 255, 0.7);
}
.popclose {
  /*text-shadow: 1px 1px 1px var(--i_border_color);*/
}
.poptxt {
  font-size: 1.2rem;
}
/*----------------------------footer----------------------------*/
#fixbtn {
  margin-bottom: 30px;
  font-size: 1.45rem;
}
#fixbtn .fixbtnwrap {
  background: #ffd700;
  /*border-bottom: 1px solid rgba(0,0,0,0.15);
	box-shadow: 0 1px 0 rgba(255,255,255,0.05);*/
}
/*▼ TEL、予約ボタンない = 追従フッター有効でない場合*/
#fixbtn.no .fixbtnwrap {
  background-color: transparent;
}
#fixbtn .fixbtntel, #fixbtn .fixbtntel a, #fixbtn .fixbtntel span {
  color: var(--i_txt_color);
}
#fixbtn .fixbtntel {
  /*border-right: 1px solid var(--i_border_color);*/
}
#fixbtn .fixbtntel:nth-last-of-type(2) {
  border-right: none;
}
#fixbtn .fixbtntel a, #fixbtn .fixbtntel span {
  font-size: 2.7rem;
  line-height: 1;
  margin-right: 10px;
}
#fixbtn .contents_btn01 a:hover {
  transform: none;
}
#fixbtn .fixbtntel a:last-child, #fixbtn .fixbtntel span:last-child {
  margin-right: 0;
}
#fixbtn .fixbtntel svg {
  width: 22px;
  height: 22px;
  margin-right: 5px;
  fill: var(--i_txt_color);
}
#fixbtn .contents_btn01 {
  /*border-left: 1px solid rgba(255,255,255,0.1);*/
}
#fixbtn .contents_btn01:nth-of-type(1) {
  border-left: none;
}
#fixbtn .contents_btn01:nth-of-type(1) {
  /*▼ TELない場合中央揃え*/
  margin-left: auto;
  margin-right: auto;
}
#fixbtn .contents_btn01 a {
  padding: 0;
  border: 1px solid var(--i_txt_color);
  background: transparent;
  color: var(--i_txt_color) !important;
}
#fixbtn .contents_btn01 a:hover {
  opacity: 1;
  background: var(--i_btn_hover_color);
  border-color: var(--i_btn_hover_color);
}
#fixbtn .contents_btn01 a:hover span {
  color: #fff;
}
#fixbtn .contents_btn01 a[target=_blank] span:before, #fixbtn .contents_btn01 a[target=_blank] span:after {
  border-color: var(--i_txt_color);
}
#fixbtn .contents_btn01 a:hover[target=_blank] span:before, #fixbtn .contents_btn01 a:hover[target=_blank] span:after {
  border: 1px solid var(--i_btn_hover_txt_color);
}
#fixbtn .contents_btn01 span {
  text-align: center;
  padding: 11px 20px 9px;
}
#fixbtn .contents_btn01 a:before, #fixbtn .contents_btn01 a:after {
  display: none;
}
/*▼ TEL、予約ボタンない = 追従フッター有効でない場合*/
#fixbtn #scrolltop:nth-of-type(1) {
  margin-left: auto;
  /*▼ 右揃え*/
  margin-right: 0;
  /*▼ 中央揃え*/
  margin-right: auto;
}
#fixbtn #scrolltop a {
  height: 40px;
  width: 40px;
}
#fixbtn #scrolltop a:before {
  top: 17px;
  left: 3px;
  transform: rotate(45deg);
  transition: 0.2s ease-in-out;
  border-left: 2px solid var(--i_txt_color);
  border-top: 2px solid var(--i_txt_color);
  width: 30px;
  height: 30px;
}
#fixbtn #scrolltop a:hover:before {
  opacity: 0.7;
}
/*▼ TEL、予約ボタンない = 追従フッター有効でない場合*/
#fixbtn.no #scrolltop a:before {
  border-color: rgba(120, 120, 120, 0.6);
}
#fixbtn.no #scrolltop a:hover:before {
  border-left: 2px solid rgba(120, 120, 120, 1);
  border-top: 2px solid rgba(120, 120, 120, 1);
}
@media screen and (max-width: 600px) {
  #fixbtn {
    margin-bottom: 0;
  }
  #fixbtn, #fixbtn .fixbtntel a, #fixbtn .fixbtntel span {
    font-size: 1.7rem;
    margin: 0;
  }
  #fixbtn .fixbtntel a, #fixbtn .fixbtntel span {
    font-size: 2rem;
  }
  #fixbtn .fixbtntel svg {
    width: 18px;
    height: 18px;
  }
  #fixbtn .contents_btn01 a {
    padding: 0;
    letter-spacing: 0;
  }
  #fixbtn .contents_btn01 a:before {
    display: none;
  }
  #fixbtn .contents_btn01 a span {
    padding: 9px 15px 7px;
  }
}
@media screen and (max-width: 400px) {
  #fixbtn .contents_btn01 a {
    min-width: 167px !important;
    max-width: 167px !important;
  }
  #fixbtn .contents_btn01 span {
    font-size: 1.4rem !important;
  }
}
footer {
  background: #ffd700;
  padding: 0;
  color: var(--i_txt_color);
  text-align: center;
  font-size: 1.35rem;
}
footer a {
  color: var(--i_txt_color);
}
footer nav li {
  letter-spacing: 0.2rem;
  padding: 5px 0;
}
footer nav li a {
  font-weight: 400 !important;
  font-size: 1.3rem;
}
footer .logo {
  width: 210px;
}
footer .sns {
  margin: 0 auto 30px;
}
footer .sns svg {
  width: 40px;
  height: 40px;
  padding: 10px 10px;
  fill: rgba(255, 255, 255, 0.8);
  transition: 0.2s ease-in-out;
}
footer .sns a:hover svg {
  opacity: 0.8;
}
#cp {
  padding: 10px 0;
  font-size: 1.1rem;
  letter-spacing: 0.1rem;
  color: var(--i_txt_color);
}
@media screen and (max-width: 600px) {
  footer {
    padding: 0 0 20px;
  }
}
@media screen and (max-width: 600px) {
  footer {
    background-position: center;
  }
  footer nav ul {
    border-bottom: 1px solid rgba(0, 0, 0, 0.13);
  }
  footer nav ul li {
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    border-bottom: 1px solid rgba(0, 0, 0, 0.13);
  }
  footer nav ul li:nth-last-of-type(2n) {
    border-right: 1px solid rgba(0, 0, 0, 0.13);
  }
  footer nav ul li:nth-last-of-type(2n+1) {
    border-left: 1px solid rgba(255, 255, 255, 0.05);
  }
  footer nav ul li:nth-of-type(1), footer nav ul li:nth-of-type(1), footer nav ul li:nth-of-type(2), footer nav ul li:nth-of-type(3):nth-last-of-type(2n-1) {
    border-top: 1px solid rgba(0, 0, 0, 0.13);
  }
  footer nav ul li:nth-last-of-type(1), footer nav ul li:nth-last-of-type(2) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  }
  footer .logo {
    width: 170px;
  }
  #fixbtn .fixbtnwrap {
    border-bottom: none;
  }
  #fixbtn .inner {
    padding: 0;
  }
}
/*------------------------------------------------------------------*/
/*----------------------------widget--------------------------------*/
/*------------------------------------------------------------------*/
/*----------------------------contents_faq01----------------------------*/
.contents_faq01 dt {
  padding-left: 5rem;
  margin-bottom: 25px;
  min-height: 35px;
  width: 100%;
  padding-right: 15px;
  box-sizing: border-box;
}
.contents_faq01 dd {
  padding-left: 7.3rem;
  margin-bottom: 15px;
  width: 100%;
  padding-right: 15px;
  box-sizing: border-box;
}
.contents_faq01 dt:before, .contents_faq01 dd:before {
  width: 4rem;
  height: 4rem;
  font-size: 2.6rem;
  line-height: 1.5;
  padding-left: 2px;
  box-sizing: border-box;
  font-weight: 400;
  color: #fff;
  background: var(--i_main_color);
  border: 1px solid var(--i_main_color);
  text-align: center;
}
.contents_faq01 dd:before {
  font-size: 3rem;
  line-height: 1.3;
  padding-left: 3px;
  background: none;
  color: var(--i_main_color);
}
@media screen and (max-width: 480px) {
  .contents_faq01 dt:before {}
  .contents_faq01 dd:before {
    line-height: 1.35;
    padding-left: 1px;
  }
}
/*----------------------------contents_related_tags----------------------------*/
.contents_related_tags .inner_item {
  border: 1px solid var(--i_border_color);
}
.contents_related_tags .inner_item:hover {
  background: var(--i_sub2_color);
}
.contents_related .inner_item a:hover {
  background: var(--i_sub2_color);
  opacity: 0.8;
}
.contents_related .inner_item_img {}
/*----------------------------block_table_1----------------------------*/
.block_table_1 table thead {
  background: var(--i_sub2_color);
}
.block_table_1 table thead th, .block_table_1 table thead td {
  background-color: var(--i_sub2_color);
}
.block_table_1 table th {
  background-color: var(--i_sub2_color);
  border: 1px solid var(--i_border_color);
  text-align: center;
  vertical-align: middle;
}
.block_table_1 table td {
  background-color: #fff;
  border: 1px solid var(--i_border_color);
  vertical-align: middle;
}
.block_table_1 table thead td {
  text-align: center;
  font-weight: bold;
}
/*----------------------------block_table_2,5,6----------------------------*/
.block_table_2 table thead, .block_table_2 table thead th, .block_table_2 table thead td, .block_table_5 table thead, .block_table_5 table thead th, .block_table_5 table thead td, .block_table_6 table thead, .block_table_6 table thead th, .block_table_6 table thead td {
  background-color: var(--i_sub2_color);
}
.block_table_2 table th, .block_table_5 table th, .block_table_6 table th {
  background-color: var(--i_sub2_color);
  border: 1px solid var(--i_border_color);
  text-align: center;
  vertical-align: middle;
}
.block_table_2 table td, .block_table_5 table td, .block_table_6 table td {
  background-color: var(--i_bg_color);
  border: 1px solid var(--i_border_color);
  vertical-align: middle;
}
.block_table_2 table thead td, .block_table_5 table thead td, .block_table_6 table thead td {
  text-align: center;
  font-weight: bold;
}
@media screen and (max-width: 500px) {
  .block_table_2 table {
    border-bottom: 1px solid var(--i_border_color);
  }
  .block_table_2 table th {
    border-top: 1px solid var(--i_border_color);
  }
  .block_table_2 table td {
    border-top: 1px dotted var(--i_border_color);
  }
}
/*----------------------------block_table_3----------------------------*/
.block_table_3 table thead, .block_table_3 table thead th, .block_table_3 table thead td, .block_table_7 table thead, .block_table_7 table thead th, .block_table_7 table thead td {
  background-color: var(--i_sub2_color);
}
.block_table_3 table th, .block_table_7 table th {
  background-color: var(--i_sub2_color);
  border: 1px solid var(--i_border_color);
  text-align: center;
  vertical-align: middle;
}
.block_table_3 table td, .block_table_7 table td {
  background-color: var(--i_bg_color);
  border: 1px solid var(--i_border_color);
  vertical-align: middle;
}
@media screen and (max-width: 500px) {
  .block_table_3 table {
    border-bottom: 1px solid var(--i_border_color);
  }
  .block_table_3 table th {
    border-top: 1px solid var(--i_border_color);
  }
  .block_table_3 table td {
    border-top: 1px dotted var(--i_border_color);
  }
}
.block_table_3_item li {
  vertical-align: middle;
}
/*----------------------------gallery_archive / gallery_single----------------------------*/
.gallery_archive .inner_item a, .gallery_single .inner_item a {
  transition: 0.2s ease-in-out;
  background-color: transparent;
}
.gallery_archive .inner_item a:hover, .gallery_single .inner_item a:hover {
  background-color: #000;
}
.gallery_archive .inner_item a:hover img, .gallery_single .inner_item a:hover img {
  opacity: 0.8;
}
.gallery_archive .inner_item a:after, .gallery_single .inner_item a:after {
  color: #fff;
}
.gallery_archive .inner_item p span, .gallery_single .inner_item p span {
  color: #fff;
}
.gallery_single_slider .slick-arrow::before {
  border-color: var(--i_btn_color);
}
/*----------------------------widget_gallery01----------------------------*/
.widget_gallery01 .slick-arrow {
  height: 40px;
  width: 30px;
  top: calc(50% - 20px);
  left: 0;
}
.widget_gallery01 .slick-next {
  left: auto;
  right: 0;
}
/*----------------------------gallery hover効果----------------------------*/
main .widget_gallery01 a, main .gallery_archive .inner_item a, main .gallery_single .inner_item a {
  overflow: hidden;
}
main .widget_gallery01 a img, main .gallery_archive .inner_item a img, main .gallery_single .inner_item a img {
  /*▼ 位置調整 美容院などの人物の場合は50% 30%あたり*/
  object-fit: cover;
  object-position: 50% 50%;
  font-family: 'object-fit: cover; object-position: 50% 50%;';
  backface-visibility: visible;
  transition: 1s ease-out !important;
  transition-property: transform opacity !important;
  transform: scale(1.001, 1.001);
}
main .widget_gallery01 a:hover img, main .gallery_archive .inner_item a:hover img, main .gallery_single .inner_item a:hover img {
  transform: scale(1.1, 1.1);
  opacity: 0.8;
}
/*----------------------------news_archive----------------------------*/
.news_archive article .inner_item_img:hover {
  opacity: 0.8;
}
.news_archive article .entry_meta {
  font-size: 1.3rem;
}
.add_design5 #primary article .inner_item_img a i:nth-last-child(1) {
  background-size: 50% !important;
}
#sidebar .widget_news02 li a div span i {
  background-size: 50% !important;
}
/*----------------------------widget_coupon----------------------------*/
.widget_coupon .content_wrapper {
  max-width: 900px !important;
}
.widget_coupon .inner_item > div, .widget_coupon .inner_item > dl {
  font-size: 1.4rem;
  line-height: 1.7;
}
/*----------------------------widget_form----------------------------*/
.widget_form .privacypolicy {
  border: 1px solid var(--i_border_color);
}
.widget_form form {
  border-top: 1px solid var(--i_border_color);
}
.widget_form form dl {
  border-bottom: 1px solid var(--i_border_color);
}
.widget_form form dt, .widget_form form dd {
  vertical-align: middle;
}
.widget_form form dt span {
  color: var(--i_sub2_color);
  color: #D43B3B !important;
  font-size: 1.2rem;
  font-weight: bold;
}
@media screen and (max-width: 770px) {
  .widget_form form dt {
    border-bottom: 1px dotted var(--i_border_color);
  }
}
main form dl input, main form textarea {
  background: var(--i_sub2_color);
  border: 1px solid var(--i_border_color);
  letter-spacing: 1px;
}
main form dl input:focus, main form textarea:focus {
  background: #fff;
  border: 1px solid var(--i_border_color);
}
main form .submit input {
  letter-spacing: 3px;
  border: none;
}
main form select {
  background: var(--i_bg_color);
  border: 1px solid var(--i_border_color);
  letter-spacing: 1px;
}
main form input[type=radio] + label, main form input[type=checkbox] + label {
  padding: 0 15px 0 22px;
}
main form input[type=radio] + label::before, main form input[type=checkbox] + label::before {
  top: 50%;
  left: 0;
  width: 17px;
  height: 17px;
  margin-top: -9px;
  background: var(--i_sub2_color);
}
main form input[type=radio] + label::before {
  border-radius: 30px;
}
main form input[type=radio]:checked + label::after, main form input[type=checkbox]:checked + label::after {
  left: 4px;
  width: 9px;
  height: 9px;
  margin-top: -5px;
  background: var(--i_sub_color);
}
main form input[type=radio]:checked + label::after {
  border-radius: 100%;
}
main form input[type=checkbox]:checked + label::after {}
/*----------------------------widget_link----------------------------*/
.widget_link .inner_item_txt {
  font-size: 2rem;
}
.widget_link .inner_item_url {}
.widget_link.block_link_1 .wrapper_item a {}
/*----------------------------widget_lp01----------------------------*/
.widget_lp01 li a:hover {
  opacity: 0.8;
}
.widget_lp01 li a div span {
  background-size: 60% auto;
}
/*----------------------------widget_menu01----------------------------*/
.widget_menu01 h3 {
  vertical-align: central;
  font-size: 1.7rem;
  letter-spacing: 1px;
  margin-bottom: 15px;
}
.widget_menu01 li dd {
  font-size: 1.3rem;
  letter-spacing: 0;
}
/*----------------------------widget_menu02----------------------------*/
.widget_menu02 h3 {
  vertical-align: central;
  font-size: 1.7rem;
  letter-spacing: 1px;
}
.widget_menu02 li > p {
  font-size: 1.3rem;
  letter-spacing: 0;
}
/*----------------------------widget_news02----------------------------*/
.block_news_2 li {}
.block_news_2 li a {
  padding: 30px;
}
.block_news_2 li a:after {}
.block_news_2 li a:hover:after {
  border-width: 10px !important;
  ;
}
.block_news_2 li:nth-child(2n) {}
#sidebar .widget_news02 li a div span {}
/*----------------------------widget_shop01----------------------------*/
.widget_staff01 .inner_item a:hover * {
  opacity: 0.8;
}
.widget_staff01 .sub {
  font-size: 1.2rem;
  font-weight: bold;
}
/*----------------------------widget_tel----------------------------*/
.widget_tel .inner_item_tel a, .widget_tel .inner_item_tel span {
  font-size: 3.6rem;
  letter-spacing: 0.1rem;
  line-height: 1.1;
  padding: 20px;
}
@media screen and (max-width: 450px) {
  .widget_tel .inner_item_tel a, .widget_tel .inner_item_tel span {
    font-size: 2.6rem;
    padding: 15px 10px;
  }
  .widget_tel .inner_item_tel img {
    margin: 0 5px -2px 0;
  }
  .widget_tel .inner_item_tel svg {
    height: 16px;
    width: 16px;
  }
}
/*------------------glossary_archive------------------------*/
.glossary_archive .content_wrapper article {
  margin-bottom: 30px;
  padding-bottom: 30px; /*★1*/
}
.glossary_archive .content_wrapper .heading.block_header_2 {
  margin-bottom: 10px;
}
.glossary_archive .content_wrapper .heading.block_header_2 .h {
  font-size: 1.8rem;
}
.glossary_archive .content_wrapper .heading.block_header_2 .h:after {
  top: 1em;
}
.glossary_archive .content_wrapper .heading.block_header_2 a:after {
  content: "View More";
  position: absolute;
  width: 150px;
  bottom: 32px; /*★1 + 数px*/
  right: 0;
  text-align: center;
  font-size: 1.5rem;
  font-weight: normal;
  padding: 3px 10px;
}
.glossary_archive .content_wrapper article .entry_body {
  padding-right: 180px;
}
@media screen and (max-width: 1224px) {
  .glossary_archive .content_wrapper .heading.block_header_2 a:after {
    bottom: calc(32px + 1.8rem); /*★1 + 数px*/
  }
}
@media screen and (max-width: 650px) {
  .glossary_archive .content_wrapper article {
    padding-bottom: 60px;
  }
  .glossary_archive .content_wrapper .heading.block_header_2 a:after {
    bottom: 30px; /*★1*/
  }
  .glossary_archive .content_wrapper article .entry_body {
    padding-right: 0;
  }
}
/*------------------recruit------------------------*/
.recruit_archive.add_design1 .recruitment_list .inner_item {
  background: rgba(255, 255, 255, .8);
}
.index main > section:first-child + div.composite_box01 .heading.block_header_4 .h, .index main > section:first-child + div + div.composite_box01 .heading.block_header_4 .h {
  font-size: 2.5rem;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 800px) {
  .index main > section:first-child + div.composite_box01 .heading.block_header_4 .h, .index main > section:first-child + div + div.composite_box01 .heading.block_header_4 .h {
    font-size: 2.1rem;
  }
}
/*------------------blog------------------------*/
.block_news_2 li {
  box-shadow: none;
  border: 1px solid var(--i_border_color);
}
/*------------------para------------------*/
#para + section .parallax_img {
  filter: brightness(110%) blur(8px);
  opacity: 0.5;
}
/*------------------para01------------------------*/
#para01 + section {
  height: 300px;
}
#para01 + .parallax .parallax_img {
  filter: blur(0px) brightness(105%);
}
@media screen and (max-width: 900px) {
  #para01 + section {
    height: 180px;
  }
}
/*------------------top_access------------------*/
#top_access + section {
  overflow: visible;
}
#top_access + section > .content_wrapper {
  width: 90%;
  margin-top: -200px;
  padding-top: 100px;
  background: #EFE5E5;
}
#top_access + section > .content_wrapper {
  width: 90%;
}
#top_access + section .inner_item:nth-child(1) {
  margin-top: 80px;
}
#top_access + section .inner_item:nth-child(3) {
  margin-top: 80px;
}
#top_access + section + div .heading.block_header_1 {
  display: none;
}
a[id*="top_access"] + .composite_box01.block_images_16 .inner_item_txt .heading .h {
  font-weight: 400;
  font-size: 2.0rem !important;
  letter-spacing: 0.2rem !important;
}
.composite_box01.block_images_16 .inner_item_txt > p {
  font-size: 80%;
}
@media screen and (max-width: 900px) {
  #top_access + section > .content_wrapper {
    margin-top: -160px;
    padding-top: 65px;
  }
}
@media screen and (max-width: 800px) {
  #top_access + section .heading.block_header_1 {
    margin-bottom: 0;
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 700px) {
  #top_access + section .inner_item:nth-child(3) {
    margin-top: 80px;
  }
  #top_access + section .inner_item:nth-child(4) {
    margin-top: 0px;
  }
}
@media screen and (max-width: 520px) {
  a[id*="top_access"] + .composite_box01.block_images_16 .inner_item_txt > p, a[id*="top_access"] + .composite_box01.block_images_16 .inner_item_txt .heading p {
    display: none;
  }
  a[id*="top_access"] + .composite_box01.block_images_16 .inner_item_txt .heading .h {
    font-size: 1.6rem !important;
    letter-spacing: 0.1rem !important;
    padding: 10px;
  }
}
@media screen and (max-width: 480px) {
  a[id*="top_access"] + .composite_box01:not(.block_images_7):not(.block_images_8):not(.block_images_10):not(.block_images_11):not(.block_images_12):not(.block_images_13):not(.block_images_15):not(.block_images_17):not(.block_images_18):not(.block_images_19) .inner_item {
    width: 48% !important;
  }
  a[id*="top_access"] + .composite_box01.block_images_16 .inner_item:nth-of-type(2n) {
    margin-left: 4% !important;
  }
  #top_access + section .inner_item:nth-child(3) {
    transform: translateY(-80px)
  }
  #top_access + section .inner_item:nth-child(4) {
    transform: translateY(-80px)
  }
}
/*------------------------------------------*/
#top_co + .contents_box01 .inner_item_txt .heading.block_header_2 .h {
  font-size: 2.5rem !important;
}
#top_co + .contents_box01 .inner_item_txt .heading.block_header_2 .h:before {
  top: calc(1em* 1.72 / 2);
  transform: translateY(-50%);
  background: var(--i_txt_color);
}
#top_co + .contents_box01 .inner_item_txt {
  flex-basis: 40%;
  padding-left: 4%;
}
#top_co + section:before {
  content: "";
  display: block;
  width: 1340px;
  height: calc(100% - 140px);
  background: url(/common/upload_data/beautysalon-anyjp/image/any.png) no-repeat right bottom, #ffd700;
  background-size: auto 300px;
  position: absolute;
  top: 140px;
  left: calc(50% - 670px);
  pointer-events: none;
}
@media screen and (max-width: 1600px) {
  #top_co + .contents_box01 .inner_item_txt {
    flex-basis: 45%;
    padding-left: 3%;
  }
  #top_co + section:before {
    width: 94%;
    left: 3%;
  }
}
@media screen and (max-width: 1350px) {
  #top_co + .contents_box01 .inner_item_img img {
    height: 540px;
    object-fit: cover;
    object-position: 100%;
  }
  #top_co + .contents_box01 .wrapper_item {
    align-items: flex-end !important;
  }
}
@media screen and (max-width: 900px) {
  #top_co + section:before {
    height: 80%;
    width: 100%;
    top: 20%;
    left: 0;
    background-position: right 0px top 20px;
    background-size: auto 300px;
  }
  #top_co + .contents_box01 .inner_item_img {
    width: 90%;
    transform: translateX(-20px);
  }
  #top_co + .contents_box01 .inner_item_img img {
    height: auto;
    object-fit: revert;
  }
}
@media screen and (max-width: 800px) {
  #top_co + .contents_box01 .inner_item_txt .heading.block_header_2 .h {
    font-size: 2.6rem !important;
  }
}
/*-------------------service-----------------------*/
#service + div .block_header_4 .h {
  font-size: 3.8rem !important;
  font-weight: 400 !important;
}
@media screen and (max-width: 800px) {
  #service + div .block_header_4 .h {
    font-size: 3rem !important;
  }
}
@media screen and (max-width: 480px) {
  #service + div .inner_item .heading {
    text-align: center;
  }
}
/*-------------------サイドSNS追従-----------------------*/
@media screen and (max-width: 500px) {
  #fixsns .sns {
    overflow: hidden;
  }
}
/*----------------スクロール時のヘッダーの高さ変更----------------*/
body.scrolled header:not(.nofixed) .wraper > .inner {
  min-height: 45px;
}
/*----------------SPヘッダー下メニュー追加----------------*/
/*ヘッダー下メニュー追加*/
.header_under {
  width: 100%;
  height: auto;
  display: none;
}
.header_under ul {
  display: flex;
  background: #fff;
}
.header_under ul li {
  width: 25%;
  border-right: 1px solid var(--i_border_color);
  box-sizing: border-box;
  font-size: 1.3rem;
  font-weight: normal;
  text-align: center;
}
.header_under ul li:last-child {
  border-right: 0px solid var(--i_border_color);
}
.header_under ul li a {
  color: var(--i_txt_color);
  display: block;
}
header {
  border-bottom: none;
}
@media screen and (max-width: 900px) {
  .header_under {
    display: block;
    border-top: 1px solid var(--i_border_color);
  }
  header {
    background: transparent;
  }
  header.width_full .wraper {
    background: transparent;
  }
}
.header_under ul li a {
  position: relative;
  padding-bottom: 1px;
}
/*ヘッダー下アイコン*/
.header_under ul li a:before {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  height: 20px;
  top: 6px;
  left: 0;
  background: url("/common/upload_data/beautysalon-anyjp/image/20240315185516.png") no-repeat top center / contain;
  pointer-events: none;
}
.header_under ul li:nth-of-type(2) a:before {
  background: url("/common/upload_data/beautysalon-anyjp/image/20240315185511.png") no-repeat top center / contain;
}
.header_under ul li:nth-of-type(3) a:before {
  background: url("/common/upload_data/beautysalon-anyjp/image/20240315185513.png") no-repeat top center / contain;
}
.header_under ul li:nth-of-type(4) a:before {
  background: url("/common/upload_data/beautysalon-anyjp/image/20240315185518.png") no-repeat top center / contain;
}
/*ヘッダー下調整*/
.header_under ul li {
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: clamp(1rem, 3vw, 2rem);
}
@media screen and (max-width: 900px) {
  .header_under ul li a {
    padding-top: 20%;
  }
  .header_under ul li a:before {
    top: 15%;
    height: 40%;
  }
}
@media screen and (max-width: 480px) {
  .header_under ul li {}
  .header_under ul li a {
    padding-top: 38%;
  }
  .header_under ul li a:before {
    top: 8%;
    height: 45%;
  }
}
/*----------------追従フッター電話番号----------------*/
#fixbtn .fixbtntel a, #fixbtn .fixbtntel span {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
#fixbtn .fixbtntel a .teli, #fixbtn .fixbtntel span .teli {
  margin-left: 5px;
  text-align: left;
  line-height: 1.2;
}
@media screen and (min-width: 1301px) {
  #fixbtn .fixbtntel a .teli, #fixbtn .fixbtntel span .teli {
    text-align: center;
  }
}
/*----------------トップページのcommodityパーツの背景色削除----------------*/
#top_co + section:before {
  display: none;
}
/*----------------フッター背景色変更----------------*/
footer {
  background: #ebe7e3;
}
#fixbtn .fixbtnwrap {
  background: #ebe7e3;
}
/*----------------TOPfuture　ボタンカラー調整----------------*/
#para + section .parallax_img .content_wrapper a:hover {
  color: #fff !important;
}
/* gallery表示調整 */
.gallery_archive .wrapper_item.masonry {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1rem;
}
.gallery_archive .inner_item {
  width: 100%;
  padding-bottom: 100%;
  margin: 0;
}
@media (width <=700px) {
  .gallery_archive .wrapper_item.masonry {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (width <=550px) {
  .gallery_archive.add_design .inner_item {
    width: 100%;
    padding-bottom: 100%;
    margin: 0;
  }
}
.gallery_archive.add_design .inner_item:nth-of-type(4n + 1), .gallery_archive.add_design1 .inner_item:nth-of-type(4n + 1) {
  margin: 0;
}
@media (width <=400px) {
  .gallery_archive.add_design .inner_item:nth-of-type(4n + 1), .gallery_archive.add_design .inner_item:nth-of-type(3n + 1), .gallery_archive.add_design1 .inner_item:nth-of-type(4n + 1), .gallery_archive.add_design1 .inner_item:nth-of-type(3n + 1) {
    margin: 0;
  }
}
/*---------SACRI追記部分-----------*/
header.transparent-overlap {
  background-color: rgba(255, 255, 255, 0) !important;
  transition: background-color 0.3s ease-in-out;
}
.header_contents {
  color: #ffffff;
}
.header_contents svg, .header_contents i, .header_contents p, .header_contents span, .header_contents a {
  color: #ffffff;
  fill: #ffffff;
}
.inner > h1 {
  color: #ffffff;
}
body.scrolled header .header_contents {
  color: #333333;
}
body.scrolled header .header_contents svg, body.scrolled header .header_contents i, body.scrolled header .header_contents p, body.scrolled header .header_contents span, body.scrolled header .header_contents a {
  color: #333333;
  fill: #333333;
}
body.scrolled header .inner > h1 {
  color: #333333;
}
body.scrolled header nav ul.nav_1st > li > a, body.scrolled header nav ul.nav_1st > li > a span {
  color: #333333 !important; /* または var(--i_txt_color) */
}
#mv_outer {
  padding-bottom: 0 !important;
}
footer .tel .teli {
  display: block;
  text-align: left;
}
/* @media screen and (max-width: 600px) {
	text-align: center; 
} */
@media screen and (max-width: 600px) {
  header .logo a img {
    max-height: none !important;
    height: auto;
    width: auto;
  }
}
@media screen and (max-width: 768px) {
  header, .wraper, .wraper > .inner, header .header_contents {
    width: 100% !important;
  }
}
table {
  margin-left: auto;
  margin-right: auto;
}
/*---------サイト制作追記　河本-----------*/
.inner {
  color: #333;
}
h1 {
  color: #333;
}
h2 {
  color: #333;
}
h3 {
  color: #333;
}
/*---MVテキスト後ろの背景---*/
.catchphrase-container {
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-feature-settings: initial;
  letter-spacing: .6em;
}
/*---MV下余白調整---*/
.pt-24.pb-10 {
  padding-top: 0px;
}
/*---ハンバーガーメニュー文字色変更---*/
@media screen and (max-width: 768px) {
  ul.nav_1st li a span {
    color: #333 !important; /* ← 好きな色に変更してください */
  }
}
/* 問合せ下部ボタンの背景色と文字色を灰色に変更 */
.p-button.p-button-rounded.p-button-sm.w-\[173px\] {
  background-color: #A60108;
  color: #fff; /* 文字色を黒に */
  border: none; /* ボーダーを消す（必要に応じて） */
}
/* ホバー時の色も設定 */
.p-button.p-button-rounded.p-button-sm.w-\[173px\]:hover {
  background-color: #bbb; /* 少し濃い灰色 */
}
/*header背景色変更*/
header#pattern1 {
  background-color: #A60108;
}
/*TOP電話ロゴ色*/
header .header_contents .header_col1 .tel svg, header .header_contents .header_col1 .btn .translate a svg, header .burger li.sp_translate a svg, header .header_contents .header_sns li svg {
  fill: #999;
}
a[data-v-30270fbd] {
  border: 0px solid !important;
}
@media screen and (max-width: 900px) {
  header .header_contents .header_col2 .add {
    color: #999;
  }
}
@media screen and (max-width: 900px) {
  header .header_contents .header_col1 .tel a, header .header_contents .header_col1 .tel span {
    color: #999;
  }
}
@media screen and (max-width: 900px) {
  header .header_contents .inner {
    filter: brightness(0.5);
  }
}
/* ==================================================================================================
                                2025.06.09 槍野　追加
    ==================================================================================================*/
/* グローバルナビ　デザイン調整 */
#\33 gnav_3251407 > a > span {
  font-family: 'Noto Sans JP' !important;
}
#pattern2 > nav > ul {
  gap: 50px;
}
/* MV デザイン */
#mv_outer {
  overflow: hidden;
  background: transparent !important;
}
@media screen and (min-width: 896px) {
  #mv_outer > div > div.w-full.max-sm\:\ !hidden::after {
    content: "";
    position: absolute;
    display: block;
    background: linear-gradient(180deg, #111 20%, #11111100 100%);
    width: 390px;
    height: 390px;
    top: -110px;
    left: -110px;
    z-index: 10;
    border-radius: 100%;
    transition: all 1s ease;
    -webkit-transition: all 1s ease;
  }
}
header#pattern2 nav ul.nav_1st {
  padding-right: 0;
}
#\33 gnav_3251407 {
  flex-grow: 0 !important;
}
header nav > ul > li > a::before {
  content: none !important;
}
/* 「０１　about」 背景　デザイン  */
#sub_menu_container001::after, #sub_about_group_001::after, #about_content_001::after, #about_content_003::after, #policy_container_001::after, #policy_container_002::after, #policy_container_003::after, #details_container_001::after, #map_container_001::after, #sns_icon_container_01::after, html > body.font-title6.font-body6.image_popup.done > div > main > div.h-full.w-full > div.site-content.ck-content > div.flex.flex-col.items-center.relative.box-border.delay3.delay3Active > div.w-full.flex.flex-col.justify-center.items-center.relative.open_group_01.overflow-hidden::after, html > body.font-title6.font-body6.image_popup.done > div > main > div.h-full.w-full > div.site-content.ck-content > div.flex.flex-col.items-center.relative.box-border.delay3.delay3Active > div.w-full.flex.flex-col.justify-center.items-center.relative.sub_information_group.overflow-hidden::after, #sub_sns_instagram_001::after, #sub_menu_container002::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20251106131928.jpg); 
  background-repeat: repeat-y;
  background-position: top center;
    background-size: 100%;
  width: 98%;
  height: 100%;
  top: 0%;
  left: 1%;
  filter: none;
  z-index: -2;
  outline: 1px solid #6e4824;
  outline-offset: -6px;
}
#about_content_01_gallery_images::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20251106131928.jpg); 
  background-repeat: repeat-y;
  background-position: top center;
    background-size: 100%;
  width: 98%;
  height: 100%;
  top: 0%;
  left: 1%;
  filter: none;
  z-index: -2;
}
#about_content_001 > div::before, #policy_container_001 > div::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20250609115324.png); /* 「０１　about」 ピンク・黄色　ふわふわ */
  background-repeat: no-repeat;
  background-position: left center;
  width: 800px;
  height: 800px;
  background-size: auto 800px;
  top: -6%;
  right: -10%;
  filter: none;
  z-index: -1;
  opacity: 0.42;
}
#about_content_001 > div::after, #policy_container_001 > div::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20250609115326.png); /* 「０１　about」縦線 */
  background-repeat: no-repeat;
  background-position: left center;
  width: 84px;
  height: 1085px;
  background-size: auto 1085px;
  top: -46%;
  right: 8%;
  filter: none;
  z-index: -1;
  opacity: 0.15;
}
#about_content_001 > div > div > div > div.frame-layer::before, #policy_container_001 > div > div > div > div.frame-layer::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20250609115321.png); 
  background-repeat: no-repeat;
  background-position: left center;
  width: 740px;
  height: 740px;
  background-size: auto 740px;
  top: -8px;
  opacity: 0.1;
}
#about_content_001 > div > div > div > div.frame-layer::after, #about_content_003 > div > div > div > div.frame-layer::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20250609115325.png);
  background-repeat: no-repeat;
  background-position: left center;
  width: 800px;
  height: 800px;
  background-size: auto 800px;
  top: -5%;
  left: -10%;
  filter: none;
  z-index: -1;
  opacity: 0.34;
}
#about_content_001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6, #about_content_003 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 {
  gap: 50px !important;
}
#about_content_001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.md\:w-1\/2.mt-4, #about_content_003 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.md\:w-1\/2.mt-4 {
  line-height: 4rem;
}
#about_content_001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100::after, #about_content_003 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100::after, #policy_container_002 > div > div > div > div > div > div.image-layer.relative.w-full::after, #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(1) > div.image-layer.relative > a::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20250609115323.png);
  background-repeat: no-repeat;
  background-position: left center;
  width: 242px;
  height: 20px;
  background-size: auto 20px;
  top: -28px;
  left: 0%;
  filter: none;
  z-index: 1;
  opacity: 0.32;
}
/* ボタンデザイン */
#about_content_001 > div > div > div > div.frame-layer > div.place-button-container > a, #about_content_003 > div > div > div > div.frame-layer > div.place-button-container > a {
  border-radius: 0 !important;
}
#about_content_001 > div > div > div > div.frame-layer > div.place-button-container > a::before, #about_content_003 > div > div > div > div.frame-layer > div.place-button-container > a::before {
  content: "";
  z-index: -2;
  position: absolute;
  width: 220px;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #8d5e3f !important;
  background: linear-gradient(180deg, #944711 50%, #72370d 50%) !important;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#about_content_001 > div > div > div > div.frame-layer > div.place-button-container > a::after, #about_content_003 > div > div > div > div.frame-layer > div.place-button-container > a::after {
  content: "";
  z-index: -1;
  position: absolute;
  width: 30px;
  height: .5px;
  top: 21px;
  right: -17px;
  background-color: #777;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#about_content_001 > div > div > div > div.frame-layer > div.place-button-container > a, #about_content_003 > div > div > div > div.frame-layer > div.place-button-container > a {
  overflow: visible !important;
}
#about_content_001 > div > div > div > div.frame-layer > div.place-button-container > a > div.text-center > p > span, #about_content_003 > div > div > div > div.frame-layer > div.place-button-container > a > div.text-center > p > span {
  letter-spacing: 2px;
  z-index: 10;
  position: relative;
}
.bg-\[\#454545\] {
  background-color: transparent !important;
}
/*「０１　about」 二段目　写真サイズ・デザイン */
html > body.font-title6.font-body6.image_popup.done > div > main > div.h-full.w-full > div.site-content.ck-content > div.flex.flex-col.items-center.relative.box-border > div.w-full.flex.flex-col.justify-center.items-center.relative.about_content_01_gallery.overflow-hidden > div.w-full.flex.flex-col.justify-center.z-10.items-start > div.w-full.image-clip-undefined > div > div.frame-layer > div.item-layer > div.image-layer.relative.w-full > div.flex.gap-4.justify-center > a.w-1\/4.relative > img.h-auto.w-auto {
  height: 250px !important;
  object-fit: cover;
}
#about_content_01_gallery_images > div > div > div > div > div > div.image-layer.relative.w-full > div {
  gap: 5px !important;
}
/* 「０２　menu メニュー」余白・デザイン */
#policy_container_001, #menu_btn_container_001, #about_content_003, #gallery_container_001, #details_container_001, #map_container_001, #sub_information_group_01 {
  margin-top: 20px;
}
#menu_btn_container_001::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 98%;
  height: 100%;
  background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.7)), url(/storage/images/1/20251106103150.jpeg); /* ← 黒いフィルター付き */
  background-size: cover;
  background-position: center;
  z-index: -2;
  transform: translate(-50%, -50%);
  outline: 1px solid #6e4824;
  outline-offset: -6px;
}
/* ★ フェードイン用 after */
@keyframes fadeInOut {
  0%, 100% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
}
#menu_btn_container_001::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 98%;
  height: 100%;
  background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.7)), url(/storage/images/1/20251106103216.jpeg); /* ← 黒いフィルター付き */
  background-size: cover;
  background-position: center;
  transform: translate(-50%, -50%);
  z-index: -1;
  outline: 1px solid #6e4824;
  outline-offset: -6px;
  opacity: 0;
  animation: fadeInOut 10s ease-in-out infinite; /* ← ここがポイント！ */
  pointer-events: none;
}
/* 「　０２　menu」 フェードインをトリガーするクラス */
#menu_btn_container_001.fade-in::after {
  opacity: 1;
}
/* 「０２　menu 装飾」 */

#menu_btn_container_001 > div::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20250609115320.png);
  background-repeat: no-repeat;
  background-position: left center;
  width: 481px;
  height: 600px;
  background-size: auto 600px;
  top: -8%;
  right: 1%;
  filter: none;
  z-index: 4;
  opacity: 0.09;
}

#menu_btn_container_001 > div > div.flex.flex-wrap.justify-center.my-0.mx-auto.w-full > div:nth-child(1) > div > div > a > span, #menu_btn_container_001 > div > div.flex.flex-wrap.justify-center.my-0.mx-auto.w-full > div:nth-child(2) > div > div > a > span, #site-content-container > div > div:nth-child(10) > div > div > div > div > div > div > a > span, #sub_menu_container001 > div > div > div > div.frame-layer > div.place-button-container > a, #sub_menu_container002 > div > div > div > div > div.place-button-container > a {
  color: #fff !important;
  padding: 20px 2px;
  background: linear-gradient(180deg, #B3424A 50%, #963037 50%) !important;
  text-align: center;
  position: relative;
  z-index: 1;
  transition: all .6s ease;
  border-radius: 50px;
  box-shadow: 5px 5px 0px 0 #777;
  font-weight: 300;
  font-size: 18px;
  line-height: 2rem;
  letter-spacing: 0.16rem;
}
#menu_btn_container_001 > div > div.flex.flex-wrap.justify-center.my-0.mx-auto.w-full > div:nth-child(1) > div > div > a > span::before, #menu_btn_container_001 > div > div.flex.flex-wrap.justify-center.my-0.mx-auto.w-full > div:nth-child(2) > div > div > a > span::before, #site-content-container > div > div:nth-child(10) > div > div > div > div > div > div > a > span::before, #sub_menu_container001 > div > div > div > div.frame-layer > div.place-button-container > a::before, #sub_menu_container002 > div > div > div > div > div.place-button-container > a::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20250609115317.png);
  background-repeat: repeat;
  background-position: left top;
  background-size: 5px auto;
  width: 100%;
  height: 100%;
  top: 0%;
  left: 0%;
  opacity: 0.1;
  z-index: -1;
  border-radius: 50px;
}
#menu_btn_container_001 > div > div.flex.flex-wrap.justify-center.my-0.mx-auto.w-full > div:nth-child(1) > div > div > a > span::after, #menu_btn_container_001 > div > div.flex.flex-wrap.justify-center.my-0.mx-auto.w-full > div:nth-child(2) > div > div > a > span::after, #site-content-container > div > div:nth-child(10) > div > div > div > div > div > div > a > span::after, #sub_menu_container001 > div > div > div > div.frame-layer > div.place-button-container > a::after, #sub_menu_container002 > div > div > div > div > div.place-button-container > a::after {
  content: "";
  position: absolute;
  display: block;
  background: transparent;
  width: 100%;
  height: 100%;
  top: -8px;
  left: -8px;
  z-index: 1;
  border: solid 1px #888;
  border-radius: 50px;
}
/* 「03 ポリシー　こだわり」 */
#policy_container_001 > div > div > div > div.frame-layer > div {
  --sp-columns: 1;
  width: 100%;
  display: flex;
  gap: 5px;
}
#policy_container_003 > div > div > div > div > div {
  --sp-columns: 1;
  width: 100%;
  display: flex;
  justify-content: end;
  gap: 5px;
}
#policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2) {
  display: flex;
  justify-content: flex-start;
  width: 100%;
}
/* #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2) > div.mt-4 > div.content > p,
#policy_container_003 > div > div > div > div > div > div:nth-child(1) > div.mb-4 > div.content > p,
#policy_container_003 > div > div > div > div > div > div:nth-child(1) > div.mb-4
{
    max-width: 300px;
} */
#policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2) > div.mt-4 > div.content, #policy_container_003 > div > div > div > div > div > div:nth-child(1) > div.mb-4 > div.content {
  width: 100%;
  padding: 40px 42px;
  z-index: 7;
  height: auto;
  position: relative;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: #fff;
  margin-top: 10%;
  z-index: 5;
  box-shadow: 6px 6px 0px 0 #a871397d;
  border: solid 8px #eee;
  box-sizing: border-box;
}
#policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2) > div.mt-4 > div.content::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20250609115327.png);
  background-repeat: no-repeat;
  background-position: left center;
  width: 600px;
  height: 200px;
  background-size: auto 200px;
  top: -22%;
  left: -14%;
  filter: none;
  opacity: 0.2;
}
#policy_container_003 > div > div > div > div > div > div:nth-child(1) > div.mb-4 > div.content::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20250609115327.png);
  background-repeat: no-repeat;
  background-position: left center;
  width: 320px;
  height: 200px;
  background-size: auto 200px;
  top: 13%;
  left: 2%;
  filter: none;
  opacity: 0.2;
}
#policy_container_001 > div > div > div > div.frame-layer {
  margin: 30px 0;
}
#policy_container_003 > div > div > div > div > div > div:nth-child(2) > div.mb-4 > div.content {
  margin: 0 !important;
}
#policy_container_003 > div > div > div > div > div > div:nth-child(2) > div.mb-4 {
  margin-bottom: 0 !important;
}
/* ギャラリー */
#gallery_container_001::after, #gallery_container_002::after, #gallery_container_003::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20251106131928.jpg); 
  background-repeat: repeat-y;
  background-position: top center;
    background-size: 100%;
  width: 98%;
  height: 100%;
  top: 0%;
  left: 1%;
  filter: none;
  z-index: -2;
}
#gallery_container_001 > div > div::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url("/storage/images/1/20250609115326.png");
  background-repeat: no-repeat;
  background-position: left center;
  width: 84px;
  height: 1085px;
  background-size: auto 1085px;
  top: -46%;
  left: 4%;
  filter: none;
  z-index: -1;
  opacity: 0.138;
}
#gallery_container_001 > div > div::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url("/storage/images/1/20250609115320.png");
  background-repeat: no-repeat;
  background-position: left center;
  width: 481px;
  height: 600px;
  background-size: auto 600px;
  top: -18%;
  right: 1%;
  filter: none;
  z-index: -1;
  opacity: 0.098;
}
#gallery_container_001 > div > div > div > div.frame-layer > div::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url("/storage/images/1/20250609115325.png");
  background-repeat: no-repeat;
  background-position: left center;
  width: 700px;
  height: 700px;
  background-size: auto 700px;
  top: -46%;
  right: 6%;
  filter: none;
  z-index: -1;
  opacity: 0.38;
}
#details_container_001 > div > div.pattern1 > div {
  justify-content: center;
}
#details_container_001 > div > div.pattern1 > div > div > ul > li:nth-child(-n+20) > div {
  padding: 20px 0;
}
/* SNS */
#sns_icon_container_01 > div > div::before {
  content: "";
  position: absolute;
  width: 1px;
  height: 60px;
  background-color: #fff;
  margin: 0 auto;
  transform: translate(-50%, -50%);
  top: 0%;
  left: 50%;
}
#sns_icon_container_01 {
  overflow: visible !important;
}
/* 店舗地図 */
#map_container_001 > div::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url("/storage/images/1/20250609115324.png");
  background-repeat: no-repeat;
  background-position: left center;
  width: 840px;
  height: 840px;
  background-size: auto 840px;
  top: -36%;
  right: -22%;
  filter: none;
  z-index: -1;
  opacity: 0.5;
}
#map_container_001 > div > div > div > div.frame-layer.\ !p-0::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20250609115321.png);
  background-repeat: no-repeat;
  background-position: left center;
  width: 740px;
  height: 740px;
  background-size: auto 740px;
  top: -8px;
  opacity: 0.1;
}
#map_container_001 > div > div > div > div.frame-layer.\ !p-0 > div > div {
  width: 90% !important;
}
/* フッター */
@media screen and (min-width: 900px) {
  #app > footer {
    height: 700px;
  }
}
#app > footer {
  background-image: url("/storage/images/1/20251106103732.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#app > footer::after {
  position: absolute;
  content: "";
  background-color: rgba(0, 0, 0, 0.65);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  outline: 1px solid #555;
  outline-offset: -8px;
  border: solid 1px #6e4824;
  box-sizing: border-box;
}
footer .logo {
  width: 310px;
}
#app > footer > div.content_wrapper > nav > ul > li:nth-child(-n+10) > a > span {
  color: #fdfdfd;
}
#sub_about_group_001 > div::after, #sub_menu_container001 > div::before {
  position: absolute;
  content: "";
  background-image: url("/storage/images/1/20250609115324.png");
  transform: translate(-50%, -50%);
  top: 26%;
  left: 73%;
  width: 700px;
  height: 700px;
  background-size: 100%;
  z-index: 5;
  background-repeat: no-repeat;
  background-position: left center;
}
#sub_about_group_001::before, #sub_menu_container001 > div::after {
  position: absolute;
  content: "";
  background-image: url("/storage/images/1/20250609115321.png");
  transform: translate(-50%, -50%);
  top: 62%;
  left: 18%;
  width: 500px;
  height: 700px;
  background-size: 100%;
  z-index: 5;
  background-repeat: no-repeat;
  background-position: left center;
  opacity: 0.2;
}
#app > footer {
  margin-top: 30px;
}
/* 下層ページ　menu*/
#sub_menu_container001 {
  margin-bottom: 30px;
}
#sub_menu_container001 > div > div > div > div.frame-layer > div.place-button-container > a, #sub_menu_container002 > div > div > div > div > div.place-button-container > a {
  overflow: visible !important;
}
@media screen and (min-width: 900px) {
  #sub_menu_container001 > div > div > div > div.frame-layer > div.place-button-container > a > div.text-center, #sub_menu_container002 > div > div > div > div > div.place-button-container > a > div.text-center {
    margin: 0 120px;
  }
  #sub_menu_container001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.md\:w-1\/2 {
    margin-top: 40px;
  }
}
@media screen and (max-width: 900px) {
  #sub_menu_container001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 {
    flex-direction: column-reverse;
    display: flex;
  }
}
#sub_menu_container001 > div::after {
  position: absolute;
  content: "";
  background-image: url("/storage/images/1/20250609115321.png");
  transform: translate(-50%, -50%);
  top: 100%;
  left: 18%;
  width: 500px;
  height: 700px;
  background-size: 100%;
  z-index: 5;
  background-repeat: no-repeat;
  background-position: left center;
  opacity: 0.2;
}
#sub_menu_container002 > div::after {
  position: absolute;
  content: "";
  background-image: url("/storage/images/1/20250609115321.png");
  transform: translate(-50%, -50%);
  top: -7%;
  left: 18%;
  width: 500px;
  height: 700px;
  background-size: 100%;
  z-index: -1;
  background-repeat: no-repeat;
  background-position: left center;
  opacity: 0.2;
}
#site-content-container-drink, #site-content-container-food {
  background: #f4efe4;
  width: 98%;
  margin: 4px auto 20px;
  outline: 1px solid #bbb;
  outline-offset: -8px;
}
#sub_drink_text_001 > div > div.w-full.flex.flex-col.justify-center.items-center.relative.overflow-hidden.heading-parts > div > div > div > div > p > span, #sub_drink_001 > div > div.w-full.flex.flex-col.justify-center.items-center.relative.overflow-hidden.heading-parts > div > div > div > div.w-full.title.text-left.text-wrap > h3 > span, #menu_group_001 > div > div > div > div > p:nth-child(1) > span, #menu_text_001 > div > div > div > div > p:nth-child(1) > span, #sub_drink_002 > div > div:nth-child(2) > div.mt-\[20px\] > div > div > div > div > div > p:nth-child(1) > span {
  border-left: solid 4px #af7928;
  padding: 5px 20px;
}
#sub_drink_text_001 > div > div.pattern4.w-full.relative > div > div > p:nth-child(-n+15), #sub_drink_001 > div > div.pattern4.w-full.relative > div, #menu_text_001 > div > div > div > div > p:nth-child(4) {
  background: #fff;
  padding: 20px;
  margin-bottom: 10px;
}
#menu_text_001 > div > div > div > div > p:nth-child(n+2):nth-child(-n+10), #sub_drink_004 > div > div > div > div > p:nth-child(-n+10) {
  background: #fff;
  padding: 20px;
}
#sub_drink_001 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) > th, #sub_drink_002 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) > th, #food_group_001 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) > th {
  display: flex;
}
#sub_drink_001 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10), #sub_drink_002 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10), #food_group_001 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) {
  border-bottom: 10px solid #f4efe4;
}
#sub_drink_001 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) > th, #sub_drink_001 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) > td, #sub_drink_002 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) > th, #sub_drink_002 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) > td, #food_group_001 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) > th, #food_group_001 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) > td {
  padding: 20px;
}
#sub_drink_002 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) > th, #sub_drink_002 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+10) > td {
  border: none;
}
/* 下層ページ　ギャラリー */
#sub_gallery_group_001::after, #sub_gallery_group_002::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url(/storage/images/1/20251106131928.jpg); 
  background-repeat: repeat-y;
  background-position: top center;
    background-size: 100%;
  width: 98%;
  height: 100%;
  top: 0%;
  left: 1%;
  filter: none;
  z-index: -2;
}
#sub_gallery_group_001 > div::after {
  position: absolute;
  content: "";
  background-image: url("/storage/images/1/20250609115324.png");
  transform: translate(-50%, -50%);
  top: 26%;
  left: 73%;
  width: 700px;
  height: 700px;
  background-size: 100%;
  z-index: 5;
  background-repeat: no-repeat;
  background-position: left center;
}
#sub_gallery_group_001 > div::before {
  position: absolute;
  content: "";
  background-image: url("/storage/images/1/20250609115321.png");
  transform: translate(-50%, -50%);
  top: 55%;
  left: 15%;
  width: 400px;
  height: 700px;
  background-size: 100%;
  z-index: -1;
  background-repeat: no-repeat;
  background-position: left center;
  opacity: 0.2;
}
/* 下層ページ　open */
#open_group_001 > div > div:nth-child(3) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+5) > th, #sub_information_group_01 > div > div:nth-child(2) > div > div > div > table > tbody > tr:nth-child(-n+15) > th {
  padding: 20px 10%;
  text-align: right;
  background: #dadada;
  background: linear-gradient(180deg, #430000 70%, #380000 70%);
  border-right: solid 5px #1d1d1d !important;
  font-weight: 500;
  color: #fff;
}
#open_group_001 > div > div:nth-child(3) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(-n+5) > td, #sub_information_group_01 > div > div:nth-child(2) > div > div > div > table > tbody > tr:nth-child(-n+15) > td {
  padding: 20px 10%;
  background: #2a2a2a;
  background: linear-gradient(180deg, #2e2e2e 70%, #2a2a2a 70%);
  color: #fff;
}
#open_group_001 > div > div:nth-child(3) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div {
  margin-top: 100px;
}
#sub_information_group_01 > div > div:nth-child(2) > div > div > div > table, #open_group_001 > div > div:nth-child(3) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table {
  background: transparent !important;
}
#sub_information_group_01 > div > div:nth-child(2) > div > div > div > table > tbody > tr:nth-child(-n+10), #open_group_001 > div > div:nth-child(3) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div > div > table > tbody > tr:nth-child(1) {
  border: solid 5px #1d1d1d !important;
}
html > body.font-title6.font-body6.image_popup.done > div > main > div.h-full.w-full {
  padding-bottom: 0 !important;
}
#food_group_001 > div > div > div > div > h2 > span {
  border-left: solid 4px #af7928;
  padding: 5px 20px;
}
.pattern1 .company-info .item .detail-txt[data-v-bc44db38] {
    font-size: 100%;
}
/* PC */
@media screen and (min-width: 900px) {
  #sub_menu_container001 > div > div > div > div.frame-layer > div.place-button-container > a > div.text-center, #sub_menu_container002 > div > div > div > div > div.place-button-container > a > div.text-center {
    margin: 0 120px;
  }
  #sub_menu_container001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.md\:w-1\/2 {
    margin-top: 40px;
  }
  #lv {
    min-height: 520px;
  }
  #sub_sns_instagram_001 > div > div > div > div.frame-layer > div > div.image-layer.relative.w-full > div > a {
    width: 5% !important;
  }
  #app > footer > div.content_wrapper {
    height: 90%;
    display: flex;
    justify-content: center;
    flex-direction: column-reverse;
    align-items: center;
    gap: 60px;
  }
  html > body.font-title6.font-body6.image_popup.done > div > main > div.h-full.w-full > div.site-content.ck-content > div.flex.flex-col.items-center.relative.box-border > div.w-full.flex.flex-col.justify-center.items-center.relative.about_content_01.overflow-hidden > div.w-full.flex.flex-col.justify-center.z-10.items-start > div.w-full.image-clip-undefined > div.pt-24.pb-10 > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100 > a.image-popup > img.w-full.h-auto, html > body.font-title6.font-body6.image_popup.done > div > main > div.h-full.w-full > div.site-content.ck-content > div.flex.flex-col.items-center.relative.box-border > div.w-full.flex.flex-col.justify-center.items-center.relative.about_content_03.overflow-hidden > div.w-full.flex.flex-col.justify-center.z-10.items-start > div.w-full.image-clip-undefined > div.pt-24.pb-10 > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100 > a.image-popup > img.w-full.h-auto {
    height: 490px;
    object-fit: cover;
  }
  #about_content_001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6, #about_content_003 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 {
    margin: 100px 100px 40px 100px !important
  }
  #about_content_001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100, #about_content_003 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100 {
    box-shadow: 8px 8px 0px 0 #77777778;
  }
  #about_content_003 > div > div > div > div.frame-layer::before {
    content: "";
    position: absolute;
    display: block;
    background-image: url(/storage/images/1/20250609115321.png);
    background-repeat: no-repeat;
    background-position: left center;
    width: 740px;
    height: 740px;
    background-size: auto 740px;
    top: -240px;
    left: -140px;
    opacity: 0.1;
  }
  #about_content_001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6, #about_content_003 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 {
    gap: 50px !important;
  }
  #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(1) > div.image-layer.relative > a, #policy_container_003 > div > div > div > div > div > div:nth-child(2) > div.image-layer.relative > a {
    width: 100%;
    height: 480px;
    display: flex;
    justify-content: flex-start;
  }
  #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(1), #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2) > div.image-layer.relative {
    width: 60%;
    max-width: 510px;
  }
  #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(1) > div.image-layer.relative, #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2) > div.image-layer.relative, #policy_container_003 > div > div > div > div > div > div:nth-child(1) > div.image-layer.relative {
    width: 100%;
    height: 480px;
  }
  #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2) > div.mt-4 {
    max-width: 300px;
  }
  #policy_container_003 > div > div > div > div > div > div:nth-child(1), #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2) {
    gap: 25px;
  }
  html > body.font-title6.font-body6.image_popup.done > div > main > div.h-full.w-full > div.site-content.ck-content > div.flex.flex-col.items-center.relative.box-border > div.w-full.flex.flex-col.justify-center.items-center.relative.policy_container_02.overflow-hidden > div.w-full.flex.flex-col.justify-center.z-10.items-start > div.w-full.image-clip-undefined > div > div.frame-layer > div.item-layer > div.image-layer.relative.w-full > div.flex.gap-4.justify-center > a.w-1\/2.relative > img.h-auto.w-auto, html > body.font-title6.font-body6.image_popup.done > div > main > div.h-full.w-full > div.site-content.ck-content > div.flex.flex-col.items-center.relative.box-border > div.w-full.flex.flex-col.justify-center.items-center.relative.policy_container_02.overflow-hidden > div.w-full.flex.flex-col.justify-center.z-10.items-start > div.w-full.image-clip-undefined > div > div.frame-layer > div.item-layer > div.image-layer.relative.w-full > div.flex.gap-4.justify-center > a.w-1\/2.relative > img.h-auto.w-auto {
    height: 420px;
    object-fit: cover;
  }
  #sns_icon_container_01 > div > div > div > div.frame-layer > div > div.image-layer.relative.w-full > div > a {
    width: 5% !important;
  }
  #policy_container_003 > div > div > div > div > div > div:nth-child(1) {
    display: flex;
    justify-content: flex-start;
    width: 60%;
  }
  #policy_container_003 > div > div > div > div > div > div:nth-child(1) > div.mb-4 > div.content > p, #policy_container_003 > div > div > div > div > div > div:nth-child(1) > div.mb-4 {
    max-width: 300px;
  }
  #policy_container_002 > div > div > div > div > div > div.image-layer.relative.w-full {
    width: 75%;
    margin: 60px auto 60px;
  }
  #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2) > div.mt-4 > div.content {
    margin-top: 10%;
  }
  #policy_container_001 > div > div > div > div.frame-layer > div::before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 490px;
    background: transparent;
    border: solid .5px #777;
    top: 44px;
    left: 47px;
    z-index: 3;
  }
  #about_content_01_gallery_images > div > div > div > div > div > div.image-layer.relative.w-full::after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: transparent;
    border: solid .5px #777;
    top: -14px;
    left: -14px;
    z-index: 6;
  }
  #policy_container_001 > div > div > div > div.frame-layer > div::before {
    position: absolute;
    content: "";
    display: block;
    width: 75%;
    height: 490px;
    background: transparent;
    border: solid .5px #777;
    top: 44px;
    left: 47px;
    z-index: 3;
  }
  #policy_container_003 > div > div > div > div::before {
    position: absolute;
    content: "";
    display: block;
    width: 75%;
    height: 480px;
    background: transparent;
    border: solid .5px #777;
    top: 96px;
    left: 310px;
    z-index: 3;
  }
  #policy_container_003 > div > div > div > div > div > div:nth-child(1) > div.image-layer.relative::after {
    content: "";
    position: absolute;
    display: block;
    background-image: url(/storage/images/1/20250609115323.png);
    background-repeat: no-repeat;
    background-position: left center;
    width: 242px;
    height: 20px;
    background-size: auto 20px;
    top: -28px;
    left: 0%;
    filter: none;
    z-index: 1;
    opacity: 0.32;
  }
  #policy_container_002 > div > div > div > div > div > div.image-layer.relative.w-full::before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 420px;
    background: transparent;
    border: solid .5px #777;
    top: 26px;
    left: 20px;
    z-index: 3;
  }
  /* drink 下層ページ */
  #sub_drink_001 > div > div.w-full.flex.flex-col.justify-center.items-center.relative.overflow-hidden.heading-parts > div > div > div > div.w-full.subtitle.text-wrap > p, #sub_drink_002 > div > div:nth-child(2) > div.mt-\[20px\] > div > div > div > div > div > p:nth-child(2) {
    margin-top: 20px;
  }
  #mv_outer > div > div.w-full.max-sm\:\ !hidden::before {
    content: "";
    position: absolute;
    display: block;
    background-image: url(/storage/images/1/20250609115320.png);
    background-repeat: no-repeat;
    background-position: left center;
    width: 800px;
    height: 800px;
    background-size: auto 650px;
    top: -40%;
    right: -20%;
    filter: none;
    z-index: 12;
    opacity: 0.16;
  }
  #policy_container_003 > div > div > div > div > div > div:nth-child(1) > div.image-layer.relative, #policy_container_003 > div > div > div > div > div > div:nth-child(2) > div.image-layer.relative {
    width: 100%;
    max-width: 510px;
  }
}
/* スマホ・タブレット 下層ページ */
@media screen and (max-width: 900px) {
  #sub_menu_container001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 {
    flex-direction: column-reverse;
    display: flex;
  }
  #sub_menu_container002 > div {
    padding-top: 50px !important;
  }
  #lv {
    height: 250px;
  }
  #sub_gallery_group_001 > div > div > div > div.frame-layer > div > div.image-layer.relative.w-full > div, #sub_gallery_group_002 > div > div > div > div > div > div.image-layer.relative.w-full > div {
    flex-direction: column;
  }
  #sub_sns_instagram_001 > div > div > div > div.frame-layer > div > div.image-layer.relative.w-full > div > a {
    width: 20% !important;
  }
  #app > footer > div.content_wrapper {
    height: 90%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    gap: 30px;
    padding-top: 15px !important;
  }
  #sub_drink_001 > div > div > div > div.w-full.title.text-left.text-wrap > p:nth-child(3), #sub_drink_002 > div > div:nth-child(2) > div.mt-\[20px\] > div > div > div {
    padding: 0 20px;
  }
  #sub_drink_text_001 > div > div.w-full.flex.flex-col.justify-center.items-center.relative.overflow-hidden.heading-parts > div > div > div > div > p > span {
    margin-left: 20px;
  }
  #sub_drink_001 {
    padding: 0 20px;
  }
  #sub_drink_001 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div {
    margin: 0;
    padding: 0;
  }
  #sub_drink_002 > div > div:nth-child(2) > div.mt-\[20px\] > div > div > div > div > div > p:nth-child(2), #sub_drink_001 > div > div.w-full.flex.flex-col.justify-center.items-center.relative.overflow-hidden.heading-parts > div > div > div > div.w-full.subtitle.text-wrap > p {
    margin-top: 15px;
  }
  #food_group_001 > div > div > div > div > h2 {
    padding-left: 20px;
  }
  #food_group_001 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div, #sub_information_group_01 > div > div:nth-child(2) > div.block_table_1.block_table_design_1.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div, #sub_drink_002 > div > div:nth-child(2) > div.block_table_8.block_table_design_8.delay1.width_fixed.w20.wauto.blockarea.pt30.pb30.edit_outer.delay4Active.editing.block_table.delay1Active.flex.justify-center > div {
    padding: 0;
  }
  html > body.font-title6.font-body6.image_popup.done > div > main > div.h-full.w-full > div.site-content.ck-content > div.flex.flex-col.items-center.relative.box-border > div.w-full.flex.flex-col.justify-center.items-center.relative.about_content_01.overflow-hidden > div.w-full.flex.flex-col.justify-center.z-10.items-start > div.w-full.image-clip-undefined > div.pt-24.pb-10 > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100 > a.image-popup > img.w-full.h-auto, html > body.font-title6.font-body6.image_popup.done > div > main > div.h-full.w-full > div.site-content.ck-content > div.flex.flex-col.items-center.relative.box-border > div.w-full.flex.flex-col.justify-center.items-center.relative.about_content_03.overflow-hidden > div.w-full.flex.flex-col.justify-center.z-10.items-start > div.w-full.image-clip-undefined > div.pt-24.pb-10 > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100 > a.image-popup > img.w-full.h-auto {
    object-fit: cover;
  }
  #about_content_001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100, #about_content_003 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100 {
    box-shadow: 4px 4px 0px 0 #77777778;
  }
  #about_content_001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100 > a::after, #about_content_003 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.image-layer.relative.w-1\/2.sp-width-100 > a::after {
    position: absolute;
    content: "";
    background: transparent;
    border: solid 1px #777;
    width: 100%;
    height: 100%;
    top: -13px;
    left: -6px;
    z-index: -1;
  }
  #about_content_01_gallery_images > div > div > div > div > div > div.image-layer.relative.w-full > div, #policy_container_001 > div > div > div > div.frame-layer > div, #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2), #gallery_container_001 > div > div > div > div.frame-layer > div > div.image-layer.relative.w-full > div, #gallery_container_002 > div > div > div > div > div > div.image-layer.relative.w-full > div, #about_content_001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 {
    flex-direction: column;
  }
  #policy_container_003 > div > div > div > div > div {
    flex-direction: column-reverse;
  }
  #about_content_003 > div > div > div > div > div.item-layer.md\:flex.justify-center.gap-6, #policy_container_003 > div > div > div > div > div > div:nth-child(1) {
    display: flex;
    flex-direction: column-reverse;
  }
  #about_content_001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6, #about_content_003 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 {
    gap: 10px !important;
  }
  #menu_btn_container_001 > div > div.w-full.flex.flex-col.justify-center.items-center.relative.overflow-hidden.heading-parts > div > div > div > div.w-full.title.text-wrap {
    padding: 0 25px;
  }
  #policy_container_001 > div > div > div > div.frame-layer {
    padding: 0 !important;
  }
  #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2), #policy_container_003 > div > div > div > div > div > div:nth-child(1) {
    margin-top: 0 !important;
  }
  #policy_container_001 > div > div > div > div.frame-layer > div > div:nth-child(2) > div.mt-4 {
    width: 100%;
  }
  #policy_container_002 > div > div > div > div, #policy_container_003 > div > div > div > div > div {
    padding: 0 !important;
  }
  #policy_container_002 > div > div > div > div > div > div.image-layer.relative.w-full > div {
    flex-direction: column;
  }
  #sns_icon_container_01 > div > div > div > div.frame-layer > div > div.image-layer.relative.w-full > div > a {
    width: 20% !important;
  }
  #policy_container_002 > div > div > div > div > div > div.image-layer.relative.w-full {
    width: 95%;
    margin: 60px auto;
  }
  #about_content_003 > div > div > div > div > div.item-layer.md\:flex.justify-center.gap-6 {
    margin-top: 20px;
  }
  #policy_container_003 > div > div > div > div > div > div:nth-child(2) > div.image-layer.relative::after {
    content: "";
    position: absolute;
    display: block;
    background-image: url(/storage/images/1/20250609115323.png);
    background-repeat: no-repeat;
    background-position: left center;
    width: 242px;
    height: 20px;
    background-size: auto 20px;
    top: -28px;
    left: 0%;
    filter: none;
    z-index: 1;
    opacity: 0.32;
  }
  #mv_outer > div > div.w-full.max-sm\:\ !hidden::before {
    content: "";
    position: absolute;
    display: block;
    background-image: url(/storage/images/1/20250609115320.png);
    background-repeat: no-repeat;
    background-position: left center;
    width: 800px;
    height: 800px;
    background-size: auto 650px;
    top: -40%;
    right: -37%;
    filter: none;
    z-index: 12;
    opacity: 0.16;
  }
  #about_content_001 > div > div > div > div.frame-layer > div.item-layer.md\:flex.justify-center.gap-6 > div.md\:w-1\/2.mt-4, #about_content_003 > div > div > div > div > div.item-layer.md\:flex.justify-center.gap-6 > div.md\:w-1\/2 {
    width: 95% !important;
    padding: 0 10px;
    margin: 0 auto;
  }
  #policy_container_003 > div > div > div > div > div > div:nth-child(1) > div.image-layer.relative, #policy_container_003 > div > div > div > div > div > div:nth-child(2) > div.image-layer.relative {
    width: 100%;
  }
    header .logo, header .logo a {
    max-width: 70px;
}
}