@charset "utf-8";
/* CSS Document */
html {
  scroll-behavior: smooth;
}
body {
  font-family: 'Shippori Mincho', serif;
  color: #333333;
  line-height: 1.5;
}
img {
  width: 100%;
  height: auto;
}
.img_sp {
  display: none;
}
.img_lsp{
display:none;
	}
.only_sp {
  display: none;
}
.only_ssp {
  display: none;
}
/*フォント*/
.tx_up {
  text-transform: uppercase;
}
.F_c {
  font-family: 'Cinzel', serif;
  text-transform: capitalize;
}
.F_C {
  font-family: 'Cinzel', serif;
  text-transform: uppercase;
}
.F_j {
  font-family: "Jost", sans-serif;
  text-transform: capitalize;
}
.F_J {
  font-family: "Jost", sans-serif;
  text-transform: uppercase;
}
:root {
  --80px: clamp(60px, 4.1vw, 80px);
  --60px: clamp(40px, 3.4vw, 60px);
  --50px: clamp(35px, 2.6vw, 50px);
  --40px: clamp(28px, 2.0vw, 40px);
  --35px: clamp(24px, 1.8vw, 35px);
  --30px: clamp(20px, 1.6vw, 30px);
  --27px: clamp(18px, 1.4vw, 27px);
  --25px: clamp(17px, 1.3vw, 25px);
  --23px: clamp(16px, 1.2vw, 23px);
  --20px: clamp(15px, 1.0vw, 20px);
  --18px: clamp(14px, 0.9vw, 18px);
  --16pxL: clamp(13px, 0.8vw, 16px);
  --16px: clamp(12px, 0.7vw, 16px);
}
.container80_nm {
  max-width: 1450px;
  width: 70%;
  margin: 0 auto;
}
/*----ヘッダー--------------------



----------------------------------*/
.header {
  position: fixed;
  top: 0;
  width: 100%;
  display: flex;
  align-items: center;
  color: #ffffff;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4);
  background: transparent;
  transition: all .4s ease;
  z-index: 500;
  will-change: background, color;
}

.header a{
	color: #ffffff;
	text-decoration: none;
}
/* ロゴは隠す */
.logo {
  opacity: 0;
  visibility: hidden;
  transition: .3s;
}
.header.scrolled {
  background: #ffffff;
  color: #333333;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
  text-shadow: none;
}
.header.scrolled a{
	color:#333333;
}
.header_bar {
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  display: block;
}
.logo img {
  height: 40px; /* 好きなサイズ */
  width: auto;
}
/* ロゴ表示 */
.header.scrolled .header_bar {
  opacity: 1;
  visibility: visible;
}
.logo img {
  transform: translateY(-10px);
  transition: .3s;
}
.header.scrolled .logo img {
  transform: translateY(0);
}
.nav_box {
  width: 100vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2.0em;
  gap: 2.0em;
}
    
.header_bar {
  display: flex;
  justify-content: flex-start;
  gap: 1.0em;
  align-items: center;
}
.top_logo {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
header p {
  font-size: clamp(12px, 1.2vw, 16px);
  line-height: 1.2em;
}
.drawer_hidden {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
#menu_btn_check {
  margin: 0;
  padding: 0;
}
/* ナビを固定で表示 */
.header_bar {
  opacity: 0;
  visibility: hidden;
}
/*ナビを横に並べる*/
.nav_list {
  font-family: "Jost", sans-serif;
  font-size: clamp(14px, 0.4vw + 11px, 16px);
  font-weight: 700;
  display: flex;
  justify-content: flex-end;
  gap: 1.2em;
  white-space: nowrap;
}
/*他項目*/
.nav_item {
  text-align: center;
}
.link:link:hover, .link:visited:hover {
  color: #8f5c5e;
  text-shadow: none;
}
.nav_item_underline {
  padding-bottom: 5px;
  position: relative;
}
.nav_item_underline::before {
  background-color: #8f5c5e;
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
  transform-origin: center top;
  transform: scale(0, 1);
  transition: transform 0.3s;
}
.nav_item_underline:hover::before {
  transform: scale(1, 1);
}
/*==============ここまでヘッダー=================*/
.mv_container {
  position: relative;
}
.mv_container h2 {
  position: absolute;
  bottom: 40%;
  right: 20vw;
  font-weight: bold;
  font-size: clamp(18px, 0.9vw + 11px, 27px);
}
.mv_lead {
  font-size: clamp(14px, 0.4vw + 11px, 16px);
  text-align: center;
  padding: 5.0em 0 6.5em 0;
}
/*トップロゴアニメーション*/
.top_Lflex {
  position: absolute;
  top: 30%;
  left: 5%;
  display: grid;
  grid-template-rows: 1.6fr 2fr 2.0fr;
  grid-row-gap: 1.2em;
  transform: translateX(-50px);
  opacity: 0;
  animation:
    logoFadeIn 2.5s ease 3s forwards;
}
@keyframes logoFadeIn {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.top_Lflex .Llead {
  font-size: var(--23px);
}
.top_Lflex .Llogo {
  width: 150%;
  margin-bottom: 1.0em;
}
.top_Lflex .Lglogo {
  width: 35%;
  margin-bottom: 1.0em;
}
.hom_sec1 {
  margin-bottom: 7vh;
}
.hom_sec2 .lead h2 {
  font-size: var(--30px);
}
.hom_sec2 .lead p {
  font-size: var(--16px);
}
.hom_sec2 .lead {
  margin-bottom: 7vh;
}
.hom_sec2_l11, .hom_sec2_l13 {
  font-size: var(--16px);
}
.hom_sec2_l11 span {
  font-size: var(--27px);
}
.hom_sec2_l12 {
  font-family: 'Cinzel', serif;
  font-size: var(--60px);
}
.hom_sec2_l12 span {
  font-family: 'Shippori Mincho', serif;
  font-size: var(--27px);
}
.hom_sec2_ul {
  text-align: start;
  display: flex;
  align-items: center;
  column-gap: 0.5em;
}
.hom_sec2_ul2 {
  text-align: start;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 3.0em;
}
.hom_sec2_l13 span {
  font-size: var(--30px);
}
.hom_sec2_ul3 {
  text-align: start;
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 2.0em;
}
.sec2_lh {
  line-height: 1.4em;
}
.hom_sec2 {
  text-align: center;
  margin-bottom: 7vh;
}
.hom_sec3_flex, .hom_sec4_flex {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  justify-content: center;
  align-items: center;
  column-gap: 3.0em;
}
.hom_sec4_flex {
  grid-template-columns: 1fr 1.2fr;
}
.hom_sec3_flex dt, .hom_sec4_flex dt {
  font-size: var(--25px);
  margin-bottom: 1.0em;
  line-height: 1.6em;
}
.hom_sec3_flex dd, .hom_sec4_flex dd {
  font-size: var(--16px);
  margin-bottom: 1.0em;
  line-height: 2.0em;
}
.hom_sec3_flex dd span, .hom_sec4_flex dd span {
  text-transform: uppercase;
}
.hom_sec3, .hom_sec4, .hom_sec6 {
  margin-bottom: 15vh;
}
.hom_sec5 {
  margin-bottom: 20vh;
}
.hom_flex2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 10%;
  align-items: start;
  margin-bottom: 10vh;
  border: solid 1px #333333;
  padding: 3.0em 5.0em;
}
.jeco {
  width: clamp(55px, 7.6vw, 110px);
  height: auto;
}
.jeco_box {
  display: flex;
  flex-direction: column;
  gap: 2.0em;
  font-size: var(--26px);
  margin-bottom: 2.0em;
}
.DtoC {
  text-align: center;
  display: inline-block;
}
.DtoC li {
  font-size: var(--27px);
}
.jdeco_flex, .hom_sec6_flex2 {
  display: flex;
  flex-direction: column;
}
.jdeco_flex p, .hom_sec6_flex2 p {
  align-self: flex-end;
}
/*詳しく見る*/
.detail {
  text-indent: 0.5em;
  font-weight: bold;
  font-size: var(--20px);
  color: #818181;
  position: relative;
  transition: all 0.3s ease-out;
	padding-right: 2.5em;
}
.detail span {
  color: #e6265f;
}
.detail::before {
  position: absolute;
  left: 0;
  bottom: -12%;
  content: "";
  width: 80%;
  height: 0.1em;
  background-image: linear-gradient(90deg, rgba(129, 129, 129, 1) 0%, rgba(129, 129, 129, 1) 72%, rgba(230, 38, 95, 1) 72%, rgba(230, 38, 95, 1) 100%);
  background-repeat: no-repeat;
}
.detail:hover {
  transform: translateX(1.2em);
  opacity: 0.6;
}
.hom_sec6 {
  border-top: solid 1px #333333;
  border-bottom: solid 1px #333333;
  padding: 2.0em 0;
}
.hom_sec6 dt {
  font-size: var(--35px);
  margin-bottom: 0.5em;
}
.hom_sec6 dd {
  font-size: var(--23px);
  line-height: 1.8em;
  margin-bottom: 1.5em;
}
.hom_sec6 dd span {
  position: relative;
}
.hom_sec6 dd span::before {
  position: absolute;
  left: 0;
  bottom: 10%;
  content: "";
  width: 100%;
  height: 0.4em;
  background-color: #f2a4be;
  z-index: -1;
}
.sample_btn {
  border: solid 1px #d4d4d5;
  font-size: var(--16pxL);
  padding: 0.2em 0.4em;
  display: inline-block;
  transition: all 0.3s ease-out;
}
.sample_btn:hover {
  border: solid 1px #d4d4d5;
  background-color: #d4d4d5;
  color: #ffffff;
}
.sample_btn a{
	color:#333333;
	text-decoration: none;
}
.Entry {
  text-indent: 0.5em;
  text-transform: capitalize;
  font-weight: bold;
  font-size: var(--23px);
  color: #818181;
  position: relative;
  transition: all 0.3s ease-out;
}
.Entry a{
	color: #818181;
	text-decoration: none;
}
.Entry span {
  color: #e6265f;
}
.Entry::before {
  position: absolute;
  left: 0;
  bottom: -12%;
  content: "";
  width: 110%;
  height: 0.1em;
  background-image: linear-gradient(90deg, rgba(129, 129, 129, 1) 0%, rgba(129, 129, 129, 1) 75%, rgba(230, 38, 95, 1) 75%, rgba(230, 38, 95, 1) 100%);
  background-repeat: no-repeat;
}
.Entry:hover {
  transform: translateX(1.2em);
  opacity: 0.6;
}
.hom_sec6_flex {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 5%;
  align-items: end;
}
.hom_sec6_flex img {
  width: 80%;
  heiht: auto;
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.3));
}
/*=========フッターエントリーボタンなど==============*/
.footer_btn_area{
	text-align:center;
}
.footer_button {
    text-align: center;
    margin-bottom: 10vh;
	display:inline-block;
}
.footer_button a{
	background-color: #ffffff;
	border: solid 1px #333333;
	border-radius: 5px;
}
.detailBtn {
  padding: 12px 28px;
  font-size: 16px;
}
.footerTel {
  font-size: 24px;
  font-weight: bold;
  color: #000;
  text-decoration: none;
}
.shopinfo {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin-bottom: 10vh;
}
.shopinfo img, svg {
  padding: 10px;
}
.entry {
  margin-bottom: 10vh;
}
.entry_txt {
  font-size: clamp(18px, 0.9vw + 11px, 27px);
  font-weight: bold;
  color: #e6265f;
  text-align: center;
  margin-bottom: 1.0em;
}
.entry_BTN {
  text-align: center;
  margin-bottom: 1.5em;
}
.entry_BTN a{
    text-decoration: none;
}

.entry_btn {
  font-size: clamp(14px, 0.4vw + 11px, 16px);
  color: #ffffff;
  display: inline-block;
  padding: 0.3em 5.0em;
  background-color: #e6265f;
  border: solid 1px #e6265f;
  transition: background-color 0.3s; /* ホバー時の変化を滑らかに */
  letter-spacing: 0.1em;
}

.entry_btn:hover {
  background-color: #ffffff;
  color: #e6265f;
}
.entry_caption {
  font-size: clamp(10px, 0.5vw + 7px, 14px);
  text-align: center;
}
.entry_caption p {
  text-align: left;
  line-height: 2.0em;
  display: inline-block;
}
.inquiry_sec {
  display: flex;
  gap: 12vw;
  justify-content: center;
  padding: 4vh 20vw;
  border-top: solid 1px #333333;
  border-bottom: solid 1px #333333;
  margin-bottom: 5.0em;
}
.inquiry_sec a{
	text-decoration: none;
}
.request_sec {
  display: flex;
  align-items: center;
  gap: 0.5em;
}
.request_btn {
  position: relative;
  font-size: clamp(16px, 0.8vw + 10px, 20px);
  color: #666464;
  line-height: 1.0em;
}
.sec_border {
  position: relative;
}
.sec_border::before {
  content: "";
  width: 1px;
  height: 2.5em;
  background-color: #333333;
  position: absolute;
  top: -0.25em;
  left: -6vw;
}
.request_txt {
  font-size: clamp(18px, 0.9vw + 11px, 27px);
  color: #e6265f;
  font-weight: 700;
  letter-spacing: 0.2em;
}
.request_inner {
  opacity: 1;
  cursor: pointer;
  /* アニメーションの速度設定 */
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.request_inner:hover {
  opacity: 0.5;
  transform: translateY(3px)
}
/*請求ボタン*/
#Button_1 span, #Button_2 span {
  writing-mode: horizontal-tb;
  font-size: var(--16px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.8);
  padding-bottom: 0.2em;
  margin-bottom: 0.6em;
}
#Button_1, #Button_2 {
  writing-mode: vertical-rl;
  position: fixed;
  top: 17vh;
  right: 0px;
  font-size: var(--20px);
  letter-spacing: 0.12rem;
  color: rgb(255 255 255/0.8);
	text-decoration:none;
  background-image: linear-gradient(90deg, rgba(235, 112, 162, 1) 0%, rgba(210, 16, 26, 0.26) 68%, rgba(222, 68, 22, 0) 100%);
  padding: 0.5em 0.3em;
  box-shadow: -1px -1px 0 #ffffff;
  transition: .3s;
  z-index: 500;
}
#Button_2 {
  top: calc(15vh + 9em);
}

#Button_1:hover, #Button_2:hover {
  color: #ffffff;
  text-decoration: none;
  background-image: linear-gradient(270deg, rgba(255, 214, 218, 0.8) 0%, rgba(252, 162, 162, 0.54) 40%, rgba(255, 214, 218, 0.8) 100%);
  text-shadow: 0 0 10px #ffffff;
}
/*===========トップへ戻る========*/
#page-top {
  position: fixed;
  bottom: 110px;
  right: 1vw;
  width: 55px;
  height: 55px;
  background-color: rgba(230, 38, 95, 1);
  border-radius: 50%;
  opacity: 0.5;
  z-index: 100;
  cursor: pointer;
  /* アニメーションの速度設定 */
  transition: transform 0.3s ease;
}
#page-top a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}
#page-top::before {
  position: absolute;
  width: 10px;
  height: 10px;
  border-top: solid 2px #ffffff;
  border-right: solid 2px #ffffff;
  transform: translate(-50%, -50%) rotate(-45deg);
  content: "";
  top: 50%;
  left: 50%;
}
#page-top:hover {
  background-color: rgba(230, 38, 95, 1);
  opacity: 1;
  transform: translateY(-3px)
}
/*==========スプラッシュ=============== */
#section1 {
  /* アニメーション名、時間、変化の速度、終了時の状態 */
  animation: fadeIn 3.0s ease-in-out 0.1s forwards;
  /* 初期状態を透明に */
  opacity: 0;
　z-index: 1;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#splash {
  position: relative;
  opacity: 0;
  visibility: hidden;
  transition: 2.5s;
}
#splash.show {
  opacity: 1;
  visibility: visible;
}
#splash {
  position: fixed;
  width: 100vw;
	min-height: 100vh;
  inset: 0;
  left: 0;
  background: linear-gradient(180deg,rgba(255, 255, 255, 0.9) 0%, rgba(255, 245, 242, 1) 100%);
  z-index: 99999;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}
#splash::before {
  content: url("../images/svg/g_logo.svg");
  width: 180px;
  opacity: 0;
  position: absolute;
  top: 35%;
  left: 50%;
  transform: translateX(-50%);
  animation: splashFadeIn 4.5s ease 1s forwards;
}
/*#splash::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);  中心に調整 

  width: 180px;
  height: 50px;
  -webkit-mask: url("../images/svg/g_logo.svg") no-repeat center / contain;
mask: url("../images/svg/g_logo.svg") no-repeat center / contain;
background-color: red;
}*/
#splash::before {
  width: 180px;
  opacity: 0;
  position: absolute;
  top: 35%;
  left: 50%;
  transform: translateX(-50%);
  animation: splashFadeIn 4.5s ease 1s forwards;
}
#splash::after {
  content: url("../images/svg/logo_l.svg");
  width: 450px;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: splashFadeIn 4.0s ease 1.5s forwards;
}
/* 非表示にするクラス（JavaScriptで付与） */
#splash.fadeout {
  opacity: 0;
  visibility: hidden;
}
/* サクラ本体 */
.sakura {
  position: relative;
  padding: 0;
  margin: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sakura li {
  width: 63px;
  position: absolute;
  list-style: none;
  top: -50px;
  right: 0;
  animation: fall 4s linear infinite, rotate1 1.5s ease-in-out forwards;
}
@keyframes fall {
  to {
    top: 120%;
  }
}
@keyframes rotate1 {
  from {
    transform: translateX(0px) rotate(0deg);
  }
  to {
    transform: translateX(200px) rotate(-80deg) rotateX(180deg);
  }
}
@keyframes rotate2 {
  from {
    transform: translateX(200px) rotate(-45deg);
  }
  to {
    transform: translateX(0px) rotate(0deg);
  }
}
.sakura li:nth-child(1) {
  left: 20vw;
  animation: fall 8s linear infinite, rotate2 6s ease-in-out forwards;
}
.sakura li:nth-child(2) {
  left: 10vw;
  animation: fall 12s linear infinite, rotate2 11.5s ease-in-out forwards;
}
.sakura li:nth-child(3) {
  left: 30vw;
  animation: fall 10s linear infinite, rotate2 6.0s ease-in-out forwards;
}
.sakura li:nth-child(4) {
  left: 60vw;
  animation: fall 14s linear infinite, rotate1 6.3s ease-in-out forwards;
}
.sakura li:nth-child(5) {
  left: 70vw;
  animation: fall 12s linear infinite, rotate1 7.2s ease-in-out forwards;
}
.sakura li:nth-child(6) {
  left: 15vw;
  animation: fall 4.5s linear infinite, rotate2 12s ease-in-out forwards;
}
.sakura li:nth-child(7) {
  left: 65vw;
  animation: fall 7.0s linear infinite, rotate1 8s ease-in-out forwards;
}
.sakura li:nth-child(8) {
  left: 80vw;
  animation: fall 8.5s linear infinite, rotate1 10s ease-in-out forwards;
}
.sakura li:nth-child(9) {
  left: 5vw;
  animation: fall 15s linear infinite, rotate1 13s ease-in-out forwards;
}
.sakura li:nth-child(10) {
  left: 65vw;
  animation: fall 12s linear infinite, rotate2 7.5s ease-in-out forwards;
}
.sakura li:nth-child(11) {
  left: 8vw;
  animation: fall 10s linear infinite, rotate2 5.8s ease-in-out forwards;
}
.sakura li:nth-child(12) {
  left: 50vw;
  animation: fall 12s linear infinite, rotate1 11s ease-in-out forwards;
}
.sakura li:nth-child(13) {
  left: 14vw;
  animation: fall 8.5s linear infinite, rotate1 5s ease-in-out forwards;
}
.sakura li:nth-child(14) {
  left: 20vw;
  animation: fall 13s linear infinite, rotate2 4s ease-in-out forwards;
}
.sakura li:nth-child(15) {
  left: 26vw;
  animation: fall 5.5s linear infinite, rotate2 8s ease-in-out forwards;
}
@keyframes fall {
  to {
    top: 100%;
  }
}
@keyframes rotate1 {
  from {
    transform: translateX(0px) rotate(35deg);
  }
  to {
    transform: translateX(200px) rotate(-80deg) rotateX(120deg);
  }
}
@keyframes rotate2 {
  from {
    transform: translateX(200px) rotate(-45deg);
  }
  to {
    transform: translateX(0px) rotate(0deg) rotateY(-30deg);
  }
}
@keyframes splashFadeIn {
   0% {
    opacity: 0;
  }
	40%{
		opacity:0.4;
	}
	50%{
		opacity:0.7;
	}
	70%{
		opacity:0.7;
	}
  100% {
    opacity: 0;
  }
}
/*フェードインアニメーション--------------*/
/* 基本フェードイン */
.fade-in {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 1.2s ease, transform 1.2s ease;
  will-change: opacity, transform;
}
/* 表示されたら付くクラス */
.fade-in.in-view {
  opacity: 1;
  transform: translateY(0);
}
/* オプション：複数要素を順番に遅らせる（必要なら） */
.fade-in.delay-1 {
  transition-delay: 0.20s;
}
.fade-in.delay-2 {
  transition-delay: 0.40s;
}
.fade-in.delay-3 {
  transition-delay: 0.60s;
}
/* 表示されたら付くクラス */
.fade-in.in-view {
  opacity: 1;
  transform: translateY(0);
}
/*=========レスポンシブ=====================

=======SP対応・ブレイクポイント768px=========*/
@media (max-width: 940px) {
	.img_lpc{
		display:none;
	}
	.img_lsp{
		display:block;
	}
  /*トップロゴ*/
      .top_Lflex {
        position: absolute;
        bottom: 10%;
        left: 5%;
        display: grid;
        grid-template-rows: 8fr 3fr 4fr;
        row-gap: 1em;
    }
  .top_Lflex .Llead {
    font-size: var(--23px);
    order: 2;
  }
  .top_Lflex .Llogo {
    width: 140%;
    margin-bottom: 1.0em;
    order: 3;
  }
  .top_Lflex .Lglogo {
    width: 35%;
    margin-bottom: 1.0em;
    order: 1;
  }
	
@media (max-width: 768px) {
  .only_sp {
    display: inline;
  }
  .only_ssp {
    display: none;
  }

  /*フォントサイズ*/ :root {
    --80px: clamp(60px, 10.4vw, 80px);
    --40px: clamp(30px, 5.2vw, 40px);
    --35px: clamp(23px, 4.6vw, 35px);
    --30px: clamp(20px, 3.9vw, 30px);
    --27px: clamp(18px, 3.5vw, 27px);
    --23px: clamp(16px, 2.9vw, 23px);
    --20px: clamp(16px, 2.6vw, 20px);
    --18px: clamp(15px, 2.3vw, 18px);
    --16pxL: clamp(14px, 2.2vw, 16px);
    --16px: clamp(12px, 2.1vw, 16px);
  }
.sakura li {
  width: 50px;
	}
#splash::after {
	display: none;
	}
  /*ーーーーーーーーーー

ハンバーガーメニュー

ーーーーーーーーーーー*/
  .nav_list {
    display: block; /*ナビを縦に並べる*/
    width: 100vw;
    background-color: none;
    margin: 0;
  }
  .menu_btn {
    position: fixed;
    border-radius: 0 0 0 30px;
    top: 0px;
    right: 0px;
    display: flex;
    height: 55px;
    width: 55px;
    justify-content: center;
    align-items: center;
    z-index: 1000;
  }
  /* メニュー開いたらMENU文字を消す */
  #menu_btn_check:checked ~ .menu_btn::after {
    content: none;
  }
  #menu_btn_check:checked ~ .menu_btn {
    filter: none;
  }
  .menu_btn span, .menu_btn span:before, .menu_btn span:after {
    content: '';
    display: block;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background-color: #533d3e;
    position: absolute;
  }
  .menu_btn span:before {
    bottom: 8px;
  }
  .menu_btn span:after {
    top: 8px;
  }
  #menu_btn_check:checked ~ .menu_btn span {
    background-color: rgba(255, 255, 255, 0); /*メニューオープン時は真ん中の線を透明にする*/
  }
  #menu_btn_check:checked ~ .menu_btn span::before {
    bottom: 0;
    transform: rotate(45deg);
    background-color: #ffffff;
  }
  #menu_btn_check:checked ~ .menu_btn span {
    background-color: rgba(255, 255, 255, 0); /*メニューオープン時は真ん中の線を透明にする*/
  }
  #menu_btn_check:checked ~ .menu_btn span::before {
    bottom: 0;
    transform: rotate(45deg);
    background-color: #ffffff;
  }
  #menu_btn_check:checked ~ .menu_btn span::after {
    top: 0;
    transform: rotate(-45deg);
    background-color: #ffffff;
  }
  :checked ~ .menu_btn span::after {
    top: 0;
    transform: rotate(-45deg);
    background-color: #ffffff;
  }
  #menu_btn_check {
    display: none;
  }
  .menu_content ul {
    padding: 10vh 10vw;
    margin-bottom: 5.0em;
  }
  .menu_content ul li {
    list-style: none;
  }
  .menu_content ul li a {
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding-top: 15px;
    text-align: center;
    position: relative;
  }
  /*×でメニューをを外へ出す*/
  .menu_content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 100%; /*leftの値を変更してメニューを画面外へ*/
    z-index: 900;
    transition: all 0.5s; /*アニメーション設定*/
    background-image: none;
    background-color: rgba(198, 165, 167, 0.9);
  }
  #menu_btn_check:checked ~ .menu_content {
    left: 0; /*メニューを画面内へ*/
  }
  .link {
    display: inline-block;
    margin-bottom: 5.0em;
  }
  .header.scrolled a {
    color: #ffffff;
  }
  .nav_item_underline::before {
    bottom: 0em;
    width: 50%;
    position: absolute;
    left: 25%;
  }
  .menu_header {
    display: block;
    text-align: center;
  }
  .menu_header img {
    width: 210px;
  }
  .shop_name {
    color: #ffffff;
    margin-top: 10px;
    font-size: 12px;
    letter-spacing: 0.1em;
  }
  #menu_btn_check ~ .menu_content .menu_header {
    opacity: 1;
    transform: translateY(-22vh);
  }
  .img_sp {
    display: inline-block;
  }
  header .headtx {
    text-align: center;
    font-size: 4.2rem;
    color: #ffffff;
    background-color: #001144;
    padding: 2.0rem 0;
    border-top: 7px solid;
    border-bottom: 7px solid;
    border-image: linear-gradient(to right, #ba7802, #f5d06f, #ba7802);
    border-image-slice: 1;
    margin-bottom: 5vh;
    margin-top: -0.5rem;
  }
  /*資料請求*/
  #Button_1, #Button_2 {
    display: none;
  }
  /*topへ戻るボタン*/
  #page-top {
    width: 56px;
    height: 56px;
    right: 16px;
    bottom: 60px;
  }
  .only_sp {
    display: inline;
  }

  .mv_container h2 {
    position: absolute;
    bottom: 36%;
    right: 6%;
    font-weight: bold;
    font-size: clamp(13px, 2.4vw, 18px);
  }
  .header_bar {
    opacity: 0;
    visibility: hidden;
  }
  .hom_sec2 .lead h2 {
    font-size: var(--27px);
    margin-bottom: 0.8em;
  }
  .img_pc {
    display: none;
  }
  .hom_sec2_ul2 {
    margin-bottom: 1.0em;
  }
  .hom_sec2 {
    margin-bottom: 12vh;
  }
  .hom_sec3_flex, .hom_sec4_flex {
    grid-template-columns: 1fr;
  }
  .hom_sec3_flex img {
    margin-bottom: 2.0em;
  }
  .hom_sec3_flex dt, .hom_sec4_flex dt {
    font-size: var(--23px);
  }
  .hom_sec4_flex dl {
    order: 2;
  }
  .hom_sec4_flex p {
    order: 1;
    margin-bottom: 2.0em;
  }
  .DtoC {
    text-align: center;
    display: block;
  }
  .hom_flex2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 1.5em;
    align-items: center;
    border: solid 1px #333333;
    padding: 1.5em;
  }
  .DtoC li {
    font-size: 15px;
  }
  .jeco_box dd {
    font-size: 12px;
  }
.jeco_box {
    display: flex;
    flex-direction: column;
    gap: 1.0em;
    margin-bottom: 0.5em;
}
  .detail {
    text-indent: 0.5em;
    font-weight: bold;
    font-size: 14px;
  }
  header p {
    font-size: 10px;
    line-height: 1.2em;
  }
  .hom_sec6 dt {
    font-size: var(--27px);
    margin-bottom: 0.5em;
  }
  .hom_sec6_flex {
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 5%;
    align-items: end;
  }
  .Entry {
    font-size: var(--16px);
  }
  .header_bar {
    display: flex;
    gap: 0.5em;
    align-items: start;
    flex-direction: column;
  }
  .header_bar img {
    width: 180px;
  }
.hom_sec3, .hom_sec4, .hom_sec6 {
    margin-bottom: 7vh;
}
}
@media (max-width: 568px) {
  .only_sp {
    display: inline;
  }
  .only_ssp {
    display: inline;
  }
  /*トップロゴ*/
  .top_Lflex {
    position: absolute;
    bottom: 14%;
    left: 5%;
    display: grid;
    grid-template-rows: 5.5fr 2fr 2.0fr;
  }
  .top_Lflex .Llead {
    font-size: 13px;
    order: 2;
  }
  .top_Lflex .Llogo {
    width: 96%;
    margin-bottom: 1.0em;
    order: 3;
  }
  .top_Lflex .Lglogo {
    width: 30%;
    margin-bottom: 1.0em;
    order: 1;
  }
  .request_txt {
    font-size: 16px;
    margin-bottom: 0.8em;
  }
  .request_btn {
    font-size: 14px;
  }
  .hom_flex2 {
    display: block;
    align-items: start;
    margin-bottom: 10vh;
    border: solid 1px #333333;
    padding: 1em 1em;
  }
  .hom_flex2 p {
    margin-bottom: 2.0em;
  }
  .hom_flex2 dd {
    margin-left: 0;
    align-self: center;
  }
  .jdeco_flex {
    display: flex;
    flex-direction: column;
  }

  .detail {
    text-indent: 0.5em;
    font-weight: bold;
    font-size: var(--16px);
  }
  .entry_caption p {
    text-align: left;
    line-height: 2.0em;
    display: inline-block;
    padding: 0 5%;
  }
	.shopinfo {
  display: block;
		text-align: center;
  margin-bottom: 10vh;
}
}