
/* 1920pxの場合　フォントサイズ以外
 min(1rem,calc(10vw/15.36)) */

 body {
  background-color: #000000;


 }
 #wrapper {
  position: relative;
 }

/*                    header                   */

 header {
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 50;
 }
 .hd_inner {
  padding:  min(1rem,calc(10vw/15.36))   min(4.5rem,calc(45vw/15.36)) ;
 }
 .hd_flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
 }
 .logo {
  width:  min(11.5rem,calc(115vw/15.36))  ;
 }
 .hd_menu {
  width:  min(48rem,calc(480vw/15.36));
  display: flex;
  justify-content: space-between;
  align-items: center;
 }

 .hd_sns {
  width:  min(8rem,calc(80vw/15.36));
  display: flex;
  justify-content: space-between;
 }
 .hd_sns li {
  width: min(2.7rem,calc(27vw/15.36));
 }
 .hd_btn {
  width:  min(7.5rem,calc(75vw/15.36));
  display: flex;
  justify-content: space-between;
 }
 .hd_btn li {
  width: min(3.4rem,calc(34vw/15.36));
 }
 .hd_btn li {
  width: min(3.4rem,calc(34vw/15.36));
 }
 .jms_icon {
  width: min(26.6rem,calc(266vw/15.36));
 }




/*                    mv                   */

#mv {
 position: relative;
 position: fixed;
 top: 0;
 width: 100%;
 height: 100vh;
 height: 100dvh;
 transform-origin: 50% 90%;
 z-index: 10;
}

.mv_inner {
 width: 100%;
 height: 100%;
}
.mv_img {
 width: 100%;
 height: 100%;
}
.mv_img img{
 height: 100% !important;
 object-fit: cover;
 object-position: bottom;
}

.mv_ttl {
 width: calc(608vw/15.36);
 position: absolute;
 top: calc(120vw/15.36);
 left: calc(120vw/15.36);

}
.mv_data {
 width:  calc(520vw/15.36);
 position: absolute;
 bottom:  calc(75vw/15.36);
 right:  calc(40vw/15.36);

}
.mv_icon {
 width:  calc(213vw/15.36);
 position: absolute;
 bottom:  calc(105vw/15.36);
 left:  calc(325vw/15.36);
 animation-name: mv_icon;
 animation-duration: 3s;
 animation-iteration-count: infinite;
 animation-fill-mode: forwards;
 animation-timing-function: linear;
}

@keyframes mv_icon {
 0% {
  transform: translateX(0);
 }
 50% {
  transform: translateX(10%);
 }
 100% {
  transform: translateX(0%);
 }
}

.main_bg {

 position: relative;
 z-index: 5;
 padding-top:  calc(2300vw/15.36);
   background: #111A47;
background: linear-gradient(180deg, rgba(17, 26, 71, 1) 0%, rgba(0, 0, 0, 1) 45%, rgba(0, 0, 0, 1) 100%);
}


/*                    news                   */

#news {
 position: relative;
 z-index: 5;
}
.news_inner {
 padding:  min(2rem,calc(20vw/15.36)) 0 min(18rem,calc(180vw/15.36));
 transform: translateY(10%);
}
.news_inner.scrollin {
 transform: translateY(0);

}

.new_ttl {
 font-size: 3.6rem;
letter-spacing: 0.3em;
color: #fff;
}
.news_list ul{
 width: min(110rem,calc(1100vw/15.36));
 margin:  min(3rem,calc(30vw/15.36)) auto 0;
 display: flex;
 justify-content: space-between;
}
.news_list  li {
 width: min(25rem,calc(250vw/15.36));
 position: relative;
 display: flex;
 align-items: center;
 justify-content:center;
 opacity: 0;
 transform: translateY(20%);
}
.news_list  li.scrollin {
 opacity: 1;
 transform: translateY(0%);
}
.news_list  li > span {
 width: min(28rem,calc(280vw/15.36));
 position: absolute;
 top:  0;
 left:  max(-3rem,calc(-30vw/15.36));
 z-index: 5;
}
.news_list  li:nth-of-type(1) {
 transition-delay: .3s;
}
.news_list  li:nth-of-type(2) {
 transition-delay: .6s;
}
.news_list  li:nth-of-type(3) {
 transition-delay: .9s;
}
.news_list  li:nth-of-type(4) {
 transition-delay: 1.2s;
}
.news_list  li:nth-of-type(2) > span {
 width: min(19rem,calc(190vw/15.36));
 position: absolute;
 top:  max(-1.5rem,calc(-15vw/15.36));
 left:  max(-.5rem,calc(-5vw/15.36));
 z-index: 5;
}
.news_list  li:nth-of-type(3) > span {
 width: min(23rem,calc(230vw/15.36));
 position: absolute;
 top:  max(-1rem,calc(-10vw/15.36));
 left: 0;
 z-index: 5;
}
.news_list  li:nth-of-type(4) > span {
 width: min(26rem,calc(260vw/15.36));
 position: absolute;
 top:  max(-1.5rem,calc(-15vw/15.36));
 left:  max(-2rem,calc(-20vw/15.36));
 z-index: 5;
}
.news_list  li button{
font-size: 1.75rem;
color: #fff;
line-height: 1.45;
box-sizing: border-box;
padding:  min(10rem,calc(100vw/15.36)) 0;
display: block;
width: 100%;
height: 100%;
background: url(../images/news_list_bg.svg) no-repeat;
background-size: cover;
border-radius: 50%;
position: relative;
}
.news_list  li button span {
 display: block;
 position: absolute;
 left: 0;
 right: 0;
 margin: 0 auto;
 bottom: min(5rem,calc(50vw/15.36));
 width: min(2.5rem,calc(25vw/15.36));
 height: min(2.5rem,calc(25vw/15.36));
 box-sizing: border-box;
 border: #248D8D solid min(.2rem,calc(2vw/15.36));
}
.news_list  li button span::before {
 content: '';
  width: min(1.4rem,calc(14vw/15.36));
 height: min(.2rem,calc(2vw/15.36));
 background: #248D8D;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
}
.news_list  li button span::after {
 content: '';
  width: min(1.4rem,calc(14vw/15.36));
 height: min(.2rem,calc(2vw/15.36));
 background: #248D8D;
 position: absolute;
 top: 50%;
 transform: translateY(-50%) rotate(90deg);
 left: 0;
 right: 0;
 margin: 0 auto;
}




/*                    about                   */
.about_inner {
 position: relative;
 z-index: 1;
 padding-bottom: min(30rem,calc(300vw/15.36));
}
.about_ttl {
 font-size: 5.4rem;
 letter-spacing: 0.08em;
 color: #00FFFF;
 animation: flicker 5s infinite alternate;
 opacity: 0;
}
.about_ttl.scrollin {
  opacity: 1;
}


@keyframes flicker {

  0%, 18%, 22%, 25%, 53%, 57%, 100% {

      text-shadow:
      0 0 min(.4rem,calc(4vw/15.36)) #00FFFF,
      0 0 min(1rem,calc(10vw/15.36)) #00FFFF,
      0 0 min(2rem,calc(20vw/15.36)) #00FFFF,
      0 0 min(4rem,calc(40vw/15.36)) #00FFFF,
      0 0 min(8rem,calc(80vw/15.36)) #00FFFF;
  }
  20%, 24%, 55% {
      text-shadow: none;
  }
}
.about_sab_ttl {
 color: #fff;
 display: flex;
 align-items: center;
 justify-content: center;
 font-weight: 100;
 font-size: 2.5rem;
 letter-spacing: 0.4em;
 gap: 0  min(2.5rem,calc(25vw/15.36));
 margin-top:  min(3.5rem,calc(35vw/15.36));
 transition-delay: 1s;
}
.about_sab_ttl::before,
.about_sab_ttl::after {
 content: '';
 width:  min(3rem,calc(30vw/15.36));
 height:  min(.2rem,calc(2vw/15.36));
 background-color: #fff;
}
.about_txt {
 font-size: 1.8rem;
 color: #fff;
 line-height: 2.3;
 letter-spacing: 0.24em;
 margin-top:  min(5rem,calc(50vw/15.36));
 transition-delay: 1.5s;
}

.about_img {
 width: min(150rem,calc(1500vw/15.36));
 position: absolute;
 left: 0;
 right: 0;
 margin: 0 auto;
 bottom: 0;
 z-index: -1;

 transform: translateY(-30%);
}

.about_img.scrollin {
 transition: 1.5s;
 transition-delay: 1.5s;
 transform: translateY(0);
}




/*                    garage                   */
.garage {
 background: url(../images/garage_bg.webp) no-repeat;
 background-size: cover;
 padding:  min(24rem,calc(240vw/15.36)) 0 min(58rem,calc(580vw/15.36));
 box-sizing: border-box;
 background-position: center top;
 position: relative;
 overflow: hidden;
 z-index: 0;
}

.garage::after {
 content: '';
 width: 100%;
 height: 100%;
 background: url(../images/garage_bg_black.webp) no-repeat;
 background-size: cover;
 position: absolute;
 top: 0;
 left: 0;
 z-index: 0;
 mix-blend-mode:multiply;
 opacity: .7;
}
.garage_light {
 position: absolute;
 z-index: 1;
 width: calc(1536vw/15.36);
 top:0;
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: -1;
}
.garage_light::before {
 content: '';
 width: 100%;
 height: 100%;
 background: #000;
background: linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
position: absolute;
top: 0;
left: 0;
z-index: 2;
}
.garage_spotlight {
 position: absolute;
 z-index: 1;
 width: calc(1635vw/15.36);
 top: calc(250vw/15.36);
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: -3;
}
.garage_spotlight_01 {
 left: calc(-970vw/15.36);
  animation: spotlight 1.5s infinite alternate;
}
.garage_spotlight_02 {
 left: calc(-350vw/15.36);
 opacity: .8;
}
.garage_spotlight_03 {
  top: calc(280vw/15.36);
  right: calc(-370vw/15.36);
  transform: scale(-1,1);
    animation: spotlight 1s infinite alternate;
    animation-delay: 2s;
 }
 .garage_spotlight_04 {
 top: calc(280vw/15.36);
 right: calc(-1050vw/15.36);
 transform: scale(-1,1);
}

@keyframes spotlight {

  0%, 15%,  25%, 40%, 53%, 57%,80%, 100% {

      opacity: 1;
  }
  20%, 33%, 70% {
      opacity: 0;
  }
}


#booth ,#other{
 position: relative;
 z-index: 5;
}
.booth_ttl {
 width: min(29rem,calc(290vw/15.36)) ;
 margin: 0 auto  min(2.5rem,calc(25vw/15.36)) ;
}
.booth_item {
 width: min(136rem,calc(1360vw/15.36)) ;
 background-color: #251E1C99;
 box-sizing: border-box;
 padding:  min(5rem,calc(50vw/15.36)) 0  min(3rem,calc(30vw/15.36));
 margin: 0 auto;
 border-radius:  min(3rem,calc(30vw/15.36));
 position: relative;
 margin-bottom:  min(13rem,calc(130vw/15.36)) ;
 transform: translateY(10%);
}
.booth_item.scrollin {
 transform: translateY(0);
}
.booth_copy {
 width: min(58.5rem,calc(585vw/15.36)) ;
 margin: 0 auto min(4rem,calc(40vw/15.36)) ;
}

.booth_txt {
 color: #fff;
 font-size: 1.8rem;
 letter-spacing: 0.2em;
 line-height: 2.1;
}
.booth_map {
  margin: min(5.5rem,calc(55vw/15.36)) auto 0;
  position: relative;
  opacity: 1;
}

.booth_map_img {
  width: min(50rem,calc(500vw/15.36)) ;
  margin: 0 auto;
  position: relative;
 }
 .booth_btn {
  position: absolute;
  top: 0;
  width: min(6rem,calc(60vw/15.36)) ;
  z-index: 5;
  transition: .4s;
}
.booth_btn_01 {
 top: min(7rem,calc(70vw/15.36)) ;
 left: min(11rem,calc(110vw/15.36)) ;
}
.booth_btn_02 {
 top: min(15rem,calc(150vw/15.36)) ;
 left: min(3.5rem,calc(35vw/15.36)) ;
}
.booth_btn_03 {
 top: min(21rem,calc(210vw/15.36)) ;
 right: min(19rem,calc(190vw/15.36)) ;
}
.booth_btn_04 {
 top: min(26rem,calc(260vw/15.36)) ;
 right: min(8.5rem,calc(85vw/15.36)) ;
}
@media (hover: hover)  and (pointer: fine){
 .booth_btn:where(:any-link, :enabled, summary):hover {
  transform: scale(1.05);
  opacity: 1;
 }

}
.booth_map_txt {
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 1.8rem;
 color: #fff;
 letter-spacing: 0.08em;
 margin-top: min(1rem,calc(10vw/15.36));
 gap: 0 min(.5rem,calc(5vw/15.36));
}
.booth_map_txt span {
 display: block;
 width: min(2rem,calc(20vw/15.36));
 height: min(2rem,calc(20vw/15.36));
 box-sizing: border-box;
 border:  #000 solid min(.2rem,calc(2vw/15.36));
 background-color: #fff;
 position: relative;
}
.booth_map_txt span::before {
 content: '';
 display: block;
 width: min(1rem,calc(10vw/15.36));
 height: min(.2rem,calc(2vw/15.36));
 background-color: #000;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
}
.booth_map_txt span::after {
 content: '';
 display: block;
 width: min(1rem,calc(10vw/15.36));
 height: min(.2rem,calc(2vw/15.36));
 background-color: #000;
 position: absolute;
 top: 50%;
 transform: translateY(-50%) rotate(90deg);
 left: 0;
 right: 0;
 margin: 0 auto;
}

.booth_menu {
  width: min(29rem,calc(290vw/15.36));
  position: absolute;
  top: 0;
  z-index: 2;
}
.booth_menu_01 {
  width: min(40rem,calc(400vw/15.36));
  top:  max(-5.8rem,calc(-58vw/15.36));
  left:  min(1.5rem,calc(15vw/15.36));
}
.booth_menu_02 {
 width: min(30rem,calc(300vw/15.36));
  top:  min(17.5rem,calc(175vw/15.36));
  left:  min(6rem,calc(60vw/15.36));
   transition-delay: .2s;
}
.booth_menu_03 {
  top:  max(-5.3rem,calc(-53vw/15.36));
  right:  min(6.5rem,calc(65vw/15.36));
   transition-delay: .4s;
}
.booth_menu_04 {
  top:  min(18rem,calc(180vw/15.36));
  right:  min(3.5rem,calc(35vw/15.36));
   transition-delay: .6s;
}
.booth_menu button {
 width: 100%;
}
.booth_menu p {
 color: #fff;
 font-size: 1.7rem;
 text-align: left;
 line-height: 1.58;
 letter-spacing: 0.2em;
 box-sizing: border-box;
 padding-left:  min(2rem,calc(20vw/15.36));
}
.booth_line {
  position: absolute;
  top: 0;
  z-index:1;
}
.booth_line_01 {
  width: min(46rem,calc(460vw/15.36));
  top:  min(7rem,calc(70vw/15.36));
  left:  min(13rem,calc(130vw/15.36));
 }
 .booth_line_02 {
 width: min(31.5rem,calc(315vw/15.36));
 top:  min(17.8rem,calc(178vw/15.36));
 left:  min(19.5rem,calc(195vw/15.36));
  transition-delay: .2s;
}
.booth_line_03 {
 width: min(42.4rem,calc(424vw/15.36));
 top:  min(5.2rem,calc(52vw/15.36));
 right:  min(21.5rem,calc(215vw/15.36));
  transition-delay: .4s;
}
.booth_line_04 {
 width: min(39.2rem,calc(392vw/15.36));
  top:  min(27.6rem,calc(276vw/15.36));
  right:  min(15rem,calc(150vw/15.36));
   transition-delay: .6s;
}




/*                    other                   */


.other_item {
  width: min(103.5rem,calc(1035vw/15.36));
  margin: 0 auto;
  position: relative;
  z-index: 1;
 }
 .other_item_bg {
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  z-index: -1;
 }
 .other_item_flex {
 width: min(88.5rem,calc(885vw/15.36));
 margin: 0 auto;
 display: flex;
 justify-content: space-between;
 align-items: center;
}
.other_item_detail {
 width: min(62rem,calc(620vw/15.36));
 text-align: justify;
 margin-top: min(1rem,calc(10vw/15.36));
}
.other_item_img {
 width: min(25.5rem,calc(255vw/15.36));
}
.anniversary_content .other_item_detail {
 width: min(53rem,calc(530vw/15.36));
}
.anniversary_content .other_item_img {
 width: min(31.5rem,calc(315vw/15.36));
}
.other_item_ttl {
 width: min(41rem,calc(410vw/15.36));
 margin-bottom: min(.5rem,calc(5vw/15.36));
}

.other_item_txt {
 font-size: 1.6rem;
 color: #FFFFFF;
 letter-spacing: 0.18em;
}
.other_item_txt span{
 display: block;
 font-size: 1.3rem;
 line-height: 1.88;
 margin-top: min(2rem,calc(20vw/15.36));
}
.other_link {
 width: min(94rem,calc(9400vw/15.36));
 margin:  min(7rem,calc(70vw/15.36)) auto min(12.5rem,calc(125vw/15.36));
}
.anniversary_content .other_link {
 width: 100%;
 margin:  min(2rem,calc(20vw/15.36)) auto 0;
}
.other_link ul {
 display: flex;
 justify-content: space-between;
}
.other_link li {
 width: min(30rem,calc(300vw/15.36));
}
.other_link li a{
 display: block;
 width: 100%;
 box-sizing: border-box;
 background-color: #001A72;
 border: #fff solid  min(.2rem,calc(2vw/15.36));
 font-size: 1.8rem;
 color: #fff;
 padding:  min(1.1rem,calc(11vw/15.36)) 0;
 display: flex;
 align-items: center;
 justify-content: center;
 letter-spacing: 0.1em;
}
.other_link li a::before {
 content: '';
 width: min(2.9rem,calc(29vw/15.36));
 height: min(3rem,calc(30vw/15.36));
 background: url(../images/sns_icon_01.webp) no-repeat;
 background-size: cover;
 filter: brightness(0) invert(1);
 margin-right:  min(2rem,calc(20vw/15.36));
}
.other_link li:nth-of-type(2) a::before {
 content: '';
 width: min(3.6rem,calc(36vw/15.36));
 height: min(3.6rem,calc(36vw/15.36));
 background: url(../images/sns_icon_02.webp) no-repeat;
 background-size: cover;
 filter: brightness(0) invert(1);
 margin-right:  min(1.5rem,calc(15vw/15.36));
}
.other_link li a span {
 font-size: 1.3rem;
}
.other_link li:nth-of-type(3) a{
 background-color: #fff;
}
.other_link li:nth-of-type(3) a span{
 width: min(26.6rem,calc(266vw/15.36));
 margin: 0 auto;
}
.other_link li:nth-of-type(3) a::before{
content: none;
}
.anniversary_content  .other_link li a::before{
content: none;
}


footer{
 position: absolute;
 bottom: min(8rem,calc(80vw/15.36));
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: 5;
}
.copy {
 font-size: 1.4rem;
 letter-spacing: 0.05em;
 color: #fff;
 line-height: 1;
}


.modal {
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 height: 100vh;
 height: 100dvh;
 background-color: #00000080;
 z-index: 100;
 display: none;
}
.modal_bg {
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}
.modal_wrap {
 width: min(86.5rem,calc(865vw/15.36));
 position: relative;
 position: absolute;
 top:  50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: 1;
}
.modal_inner {
max-height: min(50rem,calc(500vw/15.36));
 background-color: #fff;
 overflow: scroll;
 box-sizing: border-box;
 padding: min(7.5rem,calc(75vw/15.36)) 0  min(10rem,calc(100vw/15.36));
}
.modal_item {
  width: min(75rem,calc(750vw/15.36));
  margin: 0 auto;
}
.close_btn {
 width: min(5.5rem,calc(55vw/15.36));
 height: min(5.5rem,calc(55vw/15.36));
 position: absolute;
 top:  min(2.5rem,calc(25vw/15.36));
 right:  min(2rem,calc(20vw/15.36));
 transform: rotate(45deg);
}
.close_btn::before {
 content: '';
 width: 100%;
 height:  min(.2rem,calc(2vw/15.36));
 background-color: #808080;
 position: absolute;
 top: 50%;
 left: 0;
 right: 0;
 transform: translateY(-50%);
}
.close_btn::after {
 content: '';
 width: 100%;
 height:  min(.2rem,calc(2vw/15.36));
 background-color: #808080;
 position: absolute;

 top: 50%;
 left: 0;
 right: 0;
 transform: translateY(-50%) rotate(90deg);
}
.modal_ttl {
 font-size: 3.4rem;
 color: #0A1A72;
}
.modal_item dl {
 display: flex;
 justify-content: space-between;
 text-align: left;
 border-bottom: #000 dashed  min(.1rem,calc(1vw/15.36));
 padding:  min(2.1rem,calc(21vw/15.36)) 0;
 align-items: center;
}
.modal_item dl:first-of-type {
 margin-top:  min(2rem,calc(20vw/15.36));
}
.modal_item dt {
  width: min(27rem,calc(270vw/15.36));
  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 500;
 }
 .modal_item dd {
  width: min(47rem,calc(470vw/15.36));
  font-size: 1.8rem;
  line-height: 1.3;
}

.modal_02 .modal_inner {
  padding: min(7.5rem,calc(75vw/15.36)) 0  min(4.5rem,calc(45vw/15.36));
}
.modal_flex {
 display: flex;
 justify-content: space-between;
 align-items: center;
 margin-top: min(2rem,calc(20vw/15.36));
}
.modal_flex .modal_img {
 width: min(30.3rem,calc(303vw/15.36));
}
.modal_flex .modal_txt {
 width: min(43rem,calc(430vw/15.36));
font-size: 1.8rem;
line-height: 1.72;
text-align: justify;
}


.modal_03 .modal_inner {
  padding: min(7.5rem,calc(75vw/15.36)) 0  min(6rem,calc(60vw/15.36));
}
.modal_03  .modal_txt  {
 font-size: 1.8rem;
 line-height: 1.5;
 letter-spacing: 0.025em;
 margin-top:  min(1.5rem,calc(15vw/15.36));
}
.modal_03  .modal_txt:last-of-type  {
 margin-top: min(2.5rem,calc(25vw/15.36));
}
.modal_03  .modal_txt a {
 text-decoration: underline;
 font-weight: 600;
 color: #000;
}
.modal_03  .modal_txt span.pc_only {
display: inline-block;
}
.modal_03 .modal_img {
 width: min(45.2rem,calc(452vw/15.36));
 margin: min(4rem,calc(40vw/15.36)) auto 0;
}


.modal_04 .modal_inner {
  padding: min(7.5rem,calc(75vw/15.36)) 0  min(6rem,calc(60vw/15.36));
}
.modal_04  .modal_flex {
  align-items: flex-start;
  margin-top: min(3rem,calc(30vw/15.36));
}
.modal_04  .modal_flex > .modal_img {
  width: min(33.6rem,calc(336vw/15.36));
}
.modal_04  .modal_detail {
  width: min(38.5rem,calc(385vw/15.36));
}
.modal_04  .modal_txt {
  width: 100%
}
.modal_04  .modal_detail .modal_img {
  width: 100%;
  margin-top: min(2.5rem,calc(25vw/15.36));
}




.modal_slider .modal_inner {
 padding:  min(7rem,calc(70vw/15.36)) 0  min(10rem,calc(100vw/15.36));
max-height: none;
}
.modal_slider .modal_item {
 width: 100%;
}
.modal_splide {
 width: min(77rem,calc(770vw/15.36));
 margin: 0 auto;
}
.modal_slide_flex {
 display: flex;
 justify-content: space-between;
 align-items: flex-start;
}
.modal_slide_img {
 width: min(42.4rem,calc(424vw/15.36));
 margin-top:  min(4rem,calc(40vw/15.36));
}
.modal_slide_detail {
 width: min(30.5rem,calc(305vw/15.36));
 text-align: justify;
}
.modal_slide_ttl {
 display: flex;
 flex-direction: column;
 font-size: 2.9rem;
 line-height: 1.5;
 text-align: left;
}
.modal_slide_ttl span{
 font-size: 7.2rem;
 font-weight: 300;
 font-family: 'Hind', sans-serif;
 line-height: 1;
 margin-bottom:  min(1rem,calc(10vw/15.36));
}
.modal_slide_txt{
 font-size: 1.8rem;
 margin-top:  min(2rem,calc(20vw/15.36));
}

.modal_slider .splide__pagination  {
 bottom: max(-5rem,calc(-50vw/15.36));
}
.modal_slider .splide__pagination button {
width: min(1.1rem,calc(11vw/15.36));
height: min(1.1rem,calc(11vw/15.36));
opacity: 1;
margin: 0 min(.75rem,calc(7.5vw/15.36));
box-sizing: border-box;
border:  #808080 solid min(.2rem,calc(2vw/15.36));
border-radius: 50%;
background-color: #fff;
}
.modal_slider .splide__pagination button.is-active {
background-color: #808080;
}
.modal_slider .splide__arrow  {
 background: none;
 border-radius: 0;
 width: min(1.7rem,calc(17vw/15.36));
 height: min(1.7rem,calc(17vw/15.36));
 border-top:  min(.2rem,calc(2vw/15.36)) solid #808080;
 border-left:  min(.2rem,calc(2vw/15.36)) solid #808080;
 opacity: 1;
 top: auto;
 bottom: max(-5.2rem,calc(-52vw/15.36));
}
.modal_slider .splide__arrow--prev {
  left:  max(-14rem,calc(-140vw/15.36));
 transform: rotate(-45deg);
 right: 0;
 margin: 0 auto;
}
.modal_slider .splide__arrow--next {
 right:  max(-14rem,calc(-140vw/15.36));
 transform: rotate(135deg);
 left: 0;
 margin: 0 auto;
}
.modal_slider .splide__arrow  svg{
 display: none;
}

.modal_slider  .modal_slide_img span{
  font-size: 1.4rem;
  display: block;
  text-align: left;
  margin-top: min(1rem,calc(10vw/15.36));
}



@media screen and (max-width: 767px) {
/*                    header                   */

 .hd_inner {
  padding:1.1rem 1.5rem;
 }
 .logo {
  width:  7rem  ;
  font-size: 0;
 }
 .hd_menu {
  width:  16rem;
 }

 .hd_sns {
  display: none;
 }
 .hd_btn {
  width:  5.8rem;
 }
 .hd_btn li {
  width:2.6rem;
 }
 .jms_icon {
  width: 8.5rem;
 }




/*                    mv                   */


.mv_ttl {
 width:30.6rem;
 top:7.8rem;
 left: 0;
 right: 0;
 margin: 0 auto;

}
.mv_data {
 width:  28.6rem;
 position: absolute;
 bottom: 2rem;
 right: 4rem;

}
.mv_icon {
 width:  10.3rem;
 bottom:  9.2rem;
 left: 2.3rem;

}

.main_bg {
 padding-top:  200rem;
    background: #111A47;
background: linear-gradient(180deg, #111E47 10%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 1) 100%);
}


/*                    news                   */
.news_inner {
 padding:  1.5rem 0 7rem;
 transform: translateY(10%);
}

.new_ttl {
 font-size: 1.4rem;
}
.news_list ul{
 width: 31rem;
 margin:  4rem auto 0;
 flex-direction: column;
 gap: 3rem 0;
}
.news_list ul li {
 width: 100%;
}
.news_list  li > span {
 width:21rem;
 position: absolute;
 top:  -2.5rem;
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: 5;
}
.news_list  li:nth-of-type(2) > span {
 width:14rem;
 top: -2.5rem;
}
.news_list  li:nth-of-type(3) > span {
 width: 14.5rem;
 top: -2.5rem;
}
.news_list  li:nth-of-type(4) > span {
 width:23rem;
 top: -3rem;
 left: 0;
}
.news_list  li button{
font-size: 1.1rem;
padding:  .6rem 0;
background: url(../images/news_list_bg_sp.svg) no-repeat;
background-size: cover;
border-radius: 0;
}
.news_list  li button span {
 left: auto;
 right: 1rem;
 bottom:50%;
 transform: translateY(50%);
 width:1.5rem;
 height:1.5rem;
 border: #00FFFF solid .1rem;
}
.news_list  li button span::before {
  width:.8rem;
 height:.1rem;
 background-color: #00FFFF;
}
.news_list  li button span::after {
  width:.8rem;
 height:.1rem;
 background-color: #00FFFF;
}




/*                    about                   */
.about_inner {
 padding-bottom: 12rem;
}
.about_ttl {
 font-size: 3.2rem;
 line-height: 1.39;
}
.about_sab_ttl {
 font-size: 1.5rem;
 gap: 0  1.2rem;
 margin-top: 2rem;
}
.about_sab_ttl::before,
.about_sab_ttl::after {
 width: 1.5rem;
 height:.1rem;
}
.about_txt {
 font-size: 1.1rem;
 line-height: 2;
 margin-top:  2.5rem;
}

.about_img {
 width: 100%;
}




/*                    garage                   */
.garage {
 background: url(../images/garage_bg_sp.webp) no-repeat;
 background-size: cover;
 padding: 2.5rem 0 20rem;
}

.garage_light {
 width:100%;

}
.garage_spotlight {
 width:55rem;
 top: 10rem;
}
.garage_spotlight_01 {
 left: -16rem;
}

.garage_spotlight_03 {
 width: 54rem;
  top: 10rem;
  left: auto;
  right: -15rem;
 }


.booth_ttl {
 width:17rem;
 margin: 0 auto 3.5rem ;
}
.booth_item {
 width:34.2rem ;
 padding: 3rem 0  ;
 border-radius: 1.5rem;
 margin-bottom: 7.5rem ;
  background-color: #251E1C99;
}
.booth_copy {
 width: 31rem;
 margin: 0 auto 1rem ;
}

.booth_txt {
 font-size: 1.3rem;
 line-height: 1.8;
}
.booth_map {
  margin: 2rem auto 0;
}

.booth_map_img {
  width: 100% ;
 }
 .booth_btn {
  width:4.7rem;
}
.booth_btn_01 {
 top:6rem;
 left:11rem ;
}
.booth_btn_02 {
 top: 9.7rem ;
 left:4.5rem ;
}
.booth_btn_03 {
 top: 12.8rem ;
 right: 12.5rem;
}
.booth_btn_04 {
 top: 21rem;
 right:7.2rem ;
}
.booth_map_txt {
 width: 25rem;
 font-size: 1.3rem;
 line-height: 1.8;
 gap: 0 .3rem;
 margin: 0 auto;
 text-align: left;
 letter-spacing: 0.05em;
 align-items: baseline;
 margin-top: 4rem;
}
.booth_map_txt span {
 width:1.2rem;
 height:1.2rem;
 border:  #000 solid .1rem;
}
.booth_map_txt span::before {
 width: .6rem;
 height: .1rem;
}
.booth_map_txt span::after {
 width: .6rem;
 height: .1rem;
}

.booth_menu {
 display: block;
  width: 26rem;
  position: static;
  margin: 0 auto 1.5rem;
}
.booth_menu_01 {
  width: 26rem;
}
.booth_menu_02 {
 width: 26rem;
   transition-delay: 0s;
}
.booth_menu_03 {
   transition-delay: 0s;
}
.booth_menu_04 {
   transition-delay: 0s;
}
.booth_menu p {
 margin: 0 auto;
 font-size: 1.3rem;
 padding-left: 3rem;
 margin-top: 0.5rem;
}



/*                    other                   */


.other_item {
  width: 33.5rem;
 }
 .other_item_flex {
 width: 26rem;
 flex-direction: column;
 position: relative;
}

.anniversary_content .other_item_flex {
 width: 24rem;
}
.other_item_detail {
 width: 100%;
 margin-top: 0;
}
.other_item_img {
 width:12.5rem;
 margin-top: 0;
 position: absolute;
 bottom: -3rem;
 right: 0;
}
.anniversary_content .other_item_detail {
 width: 100%;
}
.anniversary_content .other_item_img {
 width:19rem;
 margin: 0 auto 1.5rem;
 position: static;
}
.other_item_ttl {
  width:25.5rem;
  margin-bottom: 1rem;

}

.other_item_txt {
 font-size: 1.3rem;
 color: #FFFFFF;
 letter-spacing: 0.1em;
 line-height: 1.8;
}

.other_item_txt span{
 display: block;
 font-size: 1.1rem;
 line-height: 1.8;
 margin-top:.5rem;
}
.other_link {
 width: 30.8rem;
 margin: 8rem auto 6rem;
}
.anniversary_content .other_link {
 width: 100%;
 margin: 2rem auto 0;
}
.other_link ul {
 flex-direction: column;
 gap: 1.5rem 0;
}
.other_link li {
 width:100%;
}
.other_link li a{
 border: #fff solid .2rem;
 font-size: 1.4rem;
 padding: .9rem 0;
}
.other_link li a::before {
 width: 2.4rem;
 height:2.5rem;
 margin-right:  1.5rem;
}
.other_link li:nth-of-type(2) a::before {
 width: 3rem;
 height: 3rem;
 margin-right:  1.5rem;
}
.other_link li a span {
 font-size: 1.1rem;
}
.other_link li:nth-of-type(3) a span{
 width: 24.5rem;
}


footer{
 bottom:7rem;
}
.copy {
 font-size: 1rem;
}


.modal_wrap {
 width:31.5rem;
}
.modal_inner {
max-height:45rem;
 padding: 4rem 0  3.5rem;
}
.modal_item {
  width: 28.5rem;
}
.close_btn {
 width:2.8rem;
 height:2.8rem;
 top:  .5rem;
 right:  .8rem;
}
.close_btn::before {
 height: .1rem;

}
.close_btn::after {
 height: .1rem;
}
.modal_ttl {
 font-size: 1.9rem;
 line-height: 1.34;
}
.modal_item dl {
 flex-direction: column;
 text-align: center;
 border-bottom: #000 dashed  .1rem;
 padding:  .8rem 0;
}
.modal_item dl:first-of-type {
 margin-top: 1rem;
}
.modal_item dt {
  width:100%;
  font-size: 1.3rem;
  line-height: 1.5;
 }
 .modal_item dd {
  width:100%;
  font-size: 1.3rem;
  line-height: 1.5;
}

.modal_02 .modal_inner {
  padding: 4rem 0  2.5rem;
}
.modal_flex {
 flex-direction: column-reverse;
 margin-top:2rem;
}
.modal_flex .modal_img {
 width: 16rem;
 margin-top: 1rem;
}

.modal_flex .modal_txt {
 width:100%;
font-size: 1.3rem;
}
.modal_flex .modal_txt span{
font-size: 1rem;
line-height: 1.3;
display: block;
margin-top: 0.5rem;
}


.modal_03 .modal_inner {
  padding: 4rem 0  min(6rem,calc(60vw/15.36));
}
.modal_03  .modal_txt  {
 font-size: 1.3rem;
 line-height: 1.5;
 margin-top: 1.5rem;
}
.modal_03  .modal_txt:last-of-type  {
 margin-top:1rem;
}
.modal_03 .modal_img {
 width: 26rem;
 margin:5.5rem auto 0;
}


.modal_04 .modal_inner {
  padding: 4rem 0  3.5rem;
}
.modal_04  .modal_flex {
  margin-top:2rem;
}
.modal_04  .modal_flex > .modal_img {
  width: 25.7rem;
  margin: 0 auto;
}
.modal_04  .modal_detail {
  width: 100%;
}
.modal_04  .modal_txt {
  width: 100%
}
.modal_04  .modal_detail .modal_img {
  width: 100%;
  margin: 2.5rem 0 6rem;
}




.modal_slider .modal_inner {
 padding:  5rem 0  6rem;
}

.modal_splide {
 width:25.5rem;
}
.modal_slide_flex {
 flex-direction: column;
}
.modal_slide_img {
 width: 100%;
 margin-top: 0;
 position: relative;
}
.modal_slide_detail {
 width: 100%;
 margin-top: 3.5rem;
}
.modal_slide_ttl {
 display: flex;
 flex-direction: row;
 align-items: flex-end;
 gap: 0 1rem;
 font-size: 1.9rem;
 line-height: 1.5;
}
.modal_slide_01 .modal_slide_ttl {
 font-size: 1.6rem;
}
.modal_slide_ttl span{
 font-size: 4.3rem;
 margin-bottom: 0;
 line-height: 0.6;
}
.modal_slide_txt{
 font-size: 1.3rem;
 margin-top: 1.5rem;
}

.modal_slider .splide__pagination  {
 bottom: -3rem;
}
.modal_slider .splide__pagination button {
width:.7rem;
height:.7rem;
margin: 0 .5rem;
border:  #808080 solid .1rem;
}
.modal_slider .splide__arrow  {
 width:1rem;
 height:1rem;
 border-top: .1rem solid #808080;
 border-left: .1rem solid #808080;
 bottom: -3.2rem;
}
.modal_slider .splide__arrow--prev {
  left: -9rem;
}
.modal_slider .splide__arrow--next {
 right:  -9rem;
}

.modal_slider  .modal_slide_img span{
 position: absolute;
  font-size: 1rem;
  text-align: right;
  margin-top: .5rem;
  right: 0;
  bottom: -2rem;
}

}
