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

#wrapper {
 background-color: #061f64;
}
.overlay {
 position: relative;
 z-index: 1;
}
.overlay::after {
 content: "";
 width: 100%;
 height: 100%;
 background: url(../images/bg.webp);
 background-size: contain;
 position: absolute;
 top: 0;
 left: 0;
 z-index: 2;
 mix-blend-mode: overlay;
 pointer-events: none;
 opacity: 1;
}

/*                          header                    */
header {
 position: fixed;
 width: 100%;
 background-color: #ffffff99;
 top: 0;
 left: 0;
 z-index: 99;
}
.hd_inner {
 width: 100%;
 padding: min(1rem, calc(10vw / 12.8)) min(2rem, calc(20vw / 12.8));
 box-sizing: border-box;
}
.hd_flex {
 display: flex;
 justify-content: space-between;
 align-items: center;
}
.logo {
 width: min(7rem, calc(70vw / 12.8));
}
.hd_menu {
 width: min(90rem, calc(900vw / 12.8));
 display: flex;
 align-items: center;
 justify-content: space-between;
}
.hd_menu a {
 font-size: 1.6rem;
 font-weight: bold;
 color: #071d5c;
 display: block;
 width: 100%;
 position: relative;
}
.hd_menu a::before {
 content: '';
 width: 100%;
 border: #071d5c solid min(.1rem, calc(1vw / 12.8));
 border-radius: min(1rem, calc(10vw / 12.8));
 position: absolute;
 bottom: 0;
 left: 0;
 transform: scale(0,1);
 transition: .4s;
}


@media (hover: hover)  and (pointer: fine){
.logo a:where(:any-link, :enabled, summary):hover {
  opacity: .7;
 }
.hd_menu a:where(:any-link, :enabled, summary):hover::before {
  transform: scale(1);
 }

}

.nav {
 display: none;
}


/*                          mv                    */
.mv_inner {
 margin-top: min(7rem, calc(70vw / 12.8));
 position: relative;
}

.mv_img {
 width: 100%;
 position: relative;
}
.mv_img::after {
 content: "";
 width: 100%;
 height: min(0.5rem, calc(5vw / 12.8));
 background: url(../images/mv_border.svg) repeat-x;
 background-size: contain;
 position: absolute;
 left: 0;
 bottom: max(-0.2rem, calc(-2vw / 12.8));
}

.mv_txt {
 position: absolute;
 top: min(1.5rem, calc(15vw / 12.8));
 left: min(3.5rem, calc(35vw / 12.8));
 display: flex;
 flex-direction: column;
 align-items: flex-start;
}
.mv_txt p {
 color: #fff;
 position: relative;
 font-size: 3.2rem;
 font-weight: bold;
 letter-spacing: 0.1em;
 text-align: left;
 line-height: 1.43;
 z-index: 1;
 display: inline-block;
}
.mv_txt p::before {
 content: "";
 width: 100%;
 height: min(1.8rem, calc(18vw / 12.8));
 padding-left: min(1rem, calc(10vw / 12.8));
 background-color: #ea6136;
 position: absolute;
 z-index: -1;
 left: max(-0.5rem, calc(-5vw / 12.8));
 bottom: min(0.2rem, calc(2vw / 12.8));
}
.mv_txt span {
 font-size: 2.4rem;
}

.mv_ttl {
 padding: min(5rem, calc(50vw / 12.8)) 0;
 opacity: 1;
 position: relative;

}
.main_ttl {
  overflow: hidden;
  position: relative;
}
.mv_ttl_box {
 display: flex;
 justify-content: center;
 align-items: flex-start;
 gap:0 min(1.5rem, calc(15vw / 12.8));
}
.mv_ttl_box p {
 position: relative;
 transform: translateY(min(3rem, calc(30vw / 12.8)));
 opacity: 0;
}
.mv_ttl_box p:nth-of-type(1) {
 width: min(12rem, calc(120vw / 12.8));
 margin-right:  min(2.5rem, calc(25vw / 12.8));
}
.mv_ttl_box p:nth-of-type(2) {
 width: min(6.3rem, calc(63vw / 12.8));
 top:  min(2.5rem, calc(25vw / 12.8));
 animation-delay: .2s;
}
.mv_ttl_box p:nth-of-type(3) {
 width: min(5.4rem, calc(54vw / 12.8));
 top:  min(3.5rem, calc(35vw / 12.8));
  animation-delay: .3s;
}
.mv_ttl_box p:nth-of-type(4) {
 width: min(5.1rem, calc(51vw / 12.8));
 top:  min(2rem, calc(20vw / 12.8));
  animation-delay: .4s;
}
.mv_ttl_box p:nth-of-type(5) {
 width: min(4.2rem, calc(42vw / 12.8));
 top:  min(2.5rem, calc(25vw / 12.8));
  animation-delay: .5s;
}
.mv_ttl_box p:nth-of-type(6) {
 width: min(4.7rem, calc(47vw / 12.8));
 top:  min(4.5rem, calc(45vw / 12.8));
  animation-delay: .6s;
}
.mv_ttl_box p:nth-of-type(7) {
 width: min(6.2rem, calc(62vw / 12.8));
 top:  min(2.5rem, calc(25vw / 12.8));
  animation-delay: .7s;
}
.mv_ttl_box p:nth-of-type(8) {
 width: min(4.9rem, calc(49vw / 12.8));
 top:  min(4rem, calc(40vw / 12.8));
  animation-delay: .8s;
}
.mv_ttl_box p:nth-of-type(9) {
 width: min(2.3rem, calc(23vw / 12.8));
 top:  min(5.5rem, calc(55vw / 12.8));
  animation-delay: .9s;
}
.mv_ttl_box p:nth-of-type(10) {
 width: min(7.8rem, calc(78vw / 12.8));
 top:  min(2.5rem, calc(25vw / 12.8));
  animation-delay: 1s;
}
.mv_ttl_box p:nth-of-type(11) {
 width: min(5.6rem, calc(56vw / 12.8));
 top:  min(3.5rem, calc(35vw / 12.8));
  animation-delay: 1.1s;
}
.mv_ttl_box p:nth-of-type(12) {
 width: min(4.6rem, calc(46vw / 12.8));
 top:  min(4rem, calc(40vw / 12.8));
  animation-delay: 1.2s;
}
.mv_ttl_box p:nth-of-type(13) {
 width: min(4rem, calc(40vw / 12.8));
 top:  min(3rem, calc(30vw / 12.8));
  animation-delay: 1.3s;
}
.mv_ttl_box p:nth-of-type(14) {
 width: min(4.7rem, calc(47vw / 12.8));
 top:  min(3.5rem, calc(35vw / 12.8));
  animation-delay: 1.4s;
}
.mv_ttl_box p:nth-of-type(15) {
 width: min(3.9rem, calc(39vw / 12.8));
 top:  min(2.8rem, calc(28vw / 12.8));
  animation-delay: 1.5s;
}
.mv_ttl_box p:nth-of-type(16) {
 width: min(2.8rem, calc(28vw / 12.8));
 top:  min(6rem, calc(60vw / 12.8));
  animation-delay: 1.6s;
}
.main_ttl {
 background-color: #061f64;
}

.mv_ttl.scrollin .mv_ttl_box p {
 animation-name: popup;
 animation-duration: .4s;
 animation-timing-function: ease-in-out;
 animation-fill-mode: forwards;
}

@keyframes popup {
 0% {
  transform: translateY(min(3rem, calc(30vw / 12.8)));
  opacity: 0;
 }
 100%{
  transform: translateY(min(0rem, calc(00vw / 12.8)));
  opacity: 1;
 }
}

.main_ttl .main_ttl_star_01 {
 top: min(15rem, calc(150vw / 12.8));
 left: min(-120rem, calc(-1200vw / 12.8));
}
.main_ttl .main_ttl_star_02 {
 top: min(6rem, calc(60vw / 12.8));
 left: min(-113rem, calc(-1130vw / 12.8));
}
.main_ttl .main_ttl_star_03 {
 top: min(6rem, calc(60vw / 12.8));
 right: min(-115rem, calc(-1150vw / 12.8));
}
.main_ttl .main_ttl_shootingstar {
 width: min(9.5rem, calc(95vw / 12.8));
 top: min(2rem, calc(20vw / 12.8));
 left: max(-72rem, calc(-720vw / 12.8));

}


/*                       concept                    */
#concept {
 background-color: #061f64;
 padding-bottom: min(8rem, calc(80vw / 12.8));
 padding-top: 0;
 margin-top: 0;
}
.concept_inner {
 position: relative;
 margin: 0 auto ;
 z-index: 1;
}
.concept_detail {
  width: min(58rem, calc(580vw / 12.8));
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 5;
}
.concept_txt {
 width: min(50rem, calc(500vw / 12.8));
 margin: 0 auto;
 text-align: left;
}
.fadein.concept_detail  {
 opacity: 1;
}
.concept_txt p {
 transition: 1s;
 font-size: 2.4rem;
 font-weight: bold;
 color: #061f6a;
 opacity: 0;
}
.scrollin.concept_detail p {
 opacity: 1;
}
.scrollin.concept_detail p:nth-of-type(1) {
 transition-delay: .5s;
}
.scrollin.concept_detail p:nth-of-type(2) {
 transition-delay: 1s;
}
.scrollin.concept_detail p:nth-of-type(3) {
 transition-delay: 1.5s;
}
.scrollin.concept_detail p:nth-of-type(4) {
 transition-delay: 2s;
}
.scrollin.concept_detail p:nth-of-type(5) {
 transition-delay: 2.5s;
}
.scrollin.concept_detail p:nth-of-type(6) {
 transition-delay: 3s;
}
.scrollin.concept_detail p:nth-of-type(7) {
 transition-delay: 3.5s;
}

.concept_movie {
 position: relative;
}
.concept_movie::before {
 content: '';
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 background-color: #ffffffd9;
 z-index: 1;
}
.concept_movie video {
 width: 100%;
 object-fit: cover;
 vertical-align: bottom;
}
.concept_detail .btn {
 margin-top: min(5rem, calc(50vw / 12.8));
 opacity: 0;
 transition: 1s;
 transition-delay: 4s;
}
.concept_detail .btn a{
 color: #fff;
}
.concept_detail .btn a::before{
 border-color: #fff;
}
.scrollin.concept_detail .btn {
 opacity: 1;
}

.btn {
 width: min(58rem, calc(580vw / 12.8));
 margin: 0 auto;
}
.btn a {
 display: block;
 width: 100%;
 font-size: 2.2rem;
 font-weight: bold;
 color: #061f6a;
 padding: min(1.9rem, calc(19vw / 12.8)) 0;
 position: relative;
 z-index: 1;
}
.btn a::before {
 content: "";
 width: min(1rem, calc(10vw / 12.8));
 height: min(1rem, calc(10vw / 12.8));
 border-top: min(0.1rem, calc(1vw / 12.8)) solid #061f6a;
 border-right: min(0.1rem, calc(1vw / 12.8)) solid #061f6a;
 position: absolute;
 top: 50%;
 transform: translateY(-50%) rotate(45deg);
 right: min(4rem, calc(40vw / 12.8));
}
.btn a .btn_bg {
 display: block;
 width: min(58.2rem, calc(582vw / 12.8));
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: -1;

}


@media (hover: hover)  and (pointer: fine){
.btn a:where(:any-link, :enabled, summary):hover {
transform: scale(1.05);
 }

}

.section_item {
 padding-top: min(7rem, calc(70vw / 12.8));
 margin-top: max(-7rem, calc(-70vw / 12.8));
}

/*                       about                    */

.about_container {
 position: relative;
 background-color: #061f99;
 padding-top: min(15rem, calc(150vw / 12.8));
 overflow: hidden;
}
.about_inner {
 background: #061f99;
 background: linear-gradient(180deg, rgba(6, 31, 153, 1) 0%, rgba(6, 31, 153, 1) 7%, rgba(6, 31, 100, 1) 7%, rgba(6, 31, 100, 1) 100%);
 padding-bottom: min(12rem, calc(120vw / 12.8));
 position: relative;
 /* z-index: 1; */
}
.about_bg {
 position: absolute;
 top: max(-8.5rem, calc(-85vw / 12.8));
 z-index: 0;
 left: 50%;
 transform: translateX(-50%);
 width: min(138rem, calc(1380vw / 12.8));
}

.about_ttl {
 color: #efb339;
 font-size: 4.6rem;
 line-height: 1.56;
 font-weight: bold;
 position: relative;
}

.about_ttl span {
 font-size: 3.7rem;
}

.about_txt {
 font-size: 2rem;
 font-weight: 500;
 color: #fff;
 margin-top: min(2rem, calc(20vw / 12.8));
 position: relative;
}

.about_item {
 width: min(77.5rem, calc(775vw / 12.8));
 margin: min(5rem, calc(50vw / 12.8)) auto 0;
}
.about_item_top {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 0 min(4rem, calc(40vw / 12.8));
}
.about_item_top_txt {
 font-size: 2rem;
 font-weight: bold;
 color: #061f6a;
 line-height: 1.7;
 background: url(../images/about_txt_bg_01.svg) no-repeat;
 background-size: cover;
 position: relative;
 text-align: left;
 width: min(26rem, calc(260vw / 12.8));
 padding: min(2.2rem, calc(22vw / 12.8)) min(3.5rem, calc(35vw / 12.8));
 box-sizing: border-box;
}
.about_item_02 .about_item_top_txt {
 width: min(24.7rem, calc(247vw / 12.8));
 background: url(../images/about_txt_bg_02.svg) no-repeat;
 background-size: cover;
 padding: min(2.5rem, calc(25vw / 12.8)) min(3.5rem, calc(35vw / 12.8));
 text-align: center;
}
.about_item_top_txt::before {
 content: "";
 width: min(2.4rem, calc(24vw / 12.8));
 height: min(3rem, calc(30vw / 12.8));
 background: url(../images/arrow.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 right: max(-2rem, calc(-20vw / 12.8));
}
.about_item_02 .about_item_top_txt::before {
 transform: translateY(-50%) scale(-1, 1);
 right: auto;
 left: max(-2rem, calc(-20vw / 12.8));
}

.about_item_icon {
 width: min(14.7rem, calc(147vw / 12.8));
}
.about_item_flex {
 display: flex;
 justify-content: space-between;
}
.about_item_txt {
 font-size: 1.8rem;
 font-weight: 500;
 color: #fff;
 text-align: left;
}

.about_item_01 .about_item_img {
 width: min(51.5rem, calc(515vw / 12.8));
 margin-left: min(3rem, calc(30vw / 12.8));
 position: relative;
}
.about_item_01 .about_item_img span:first-of-type {
 display: block;
 width: min(15rem, calc(150vw / 12.8));
 position: absolute;
 top: min(1rem, calc(10vw / 12.8));
 left: min(1rem, calc(10vw / 12.8));
 clip-path: none;
 z-index: 10;
}
.about_item_01 .about_item_img span:last-of-type {
 display: block;
 width: min(16.1rem, calc(161vw / 12.8));
 position: absolute;
 bottom: 0;
 right: 0;
  clip-path: none;
  z-index: 10;
}
.about_item_01 .about_item_txt {
 margin-top: min(7rem, calc(70vw / 12.8));
 position: relative;
 right: min(4rem, calc(40vw / 12.8));
}
 .about_item_02 {
  margin-top: 0;
 }
 .about_item_02 .about_item_top{
  align-items: flex-end;
 }
 .about_item_02 .about_item_top_txt{
   margin-bottom: min(3rem, calc(30vw / 12.8));
 }
.about_item_02 .about_item_img {
 width: min(40.5rem, calc(405vw / 12.8));
 margin-right: min(5rem, calc(50vw / 12.8));
 margin-top: min(6rem, calc(60vw / 12.8));
 position: relative;
}
.about_item_02 .about_item_img span {
 display: block;
  width: min(30.6rem, calc(306vw / 12.8));
  position: absolute;
  top: max(-5.5rem, calc(-55vw / 12.8));
  left: max(-5.5rem, calc(-55vw / 12.8));
}
.about_item_02 .about_item_txt {
 margin-top: min(15rem, calc(150vw / 12.8));
 position: relative;
 left: min(5rem, calc(50vw / 12.8));
}

.about_item_img_03 {
 width: min(59.5rem, calc(595vw / 12.8));
 margin-left: auto;
 margin-right: min(8rem, calc(80vw / 12.8));
 margin-top: min(3rem, calc(30vw / 12.8));
 position: relative;
 z-index: 3;
}

.about_item_img_04 {
 width: min(40.6rem, calc(406vw / 12.8));
 margin: min(16rem, calc(160vw / 12.8)) auto 0;
 position: relative;
}
.about_item_img_04  span {
 display: block;
 width: min(33.4rem, calc(334vw / 12.8));
 position: absolute;
 top: max(-5.5rem, calc(-55vw / 12.8));
 left: max(-4.5rem, calc(-45vw / 12.8));
}

.about_item_03 .about_item_top {
 margin-top: min(4rem, calc(40vw / 12.8));
 flex-direction: row-reverse;
}
.about_item_03 .about_item_icon {
 width: min(16.3rem, calc(163vw / 12.8));
}
.about_item_03 .about_item_img {
 width: min(40.8rem, calc(408vw / 12.8));
 margin-top: min(7rem, calc(70vw / 12.8));
 position: relative;
}
.about_item_03 .about_item_img span {
 display: block;
 width: min(36.7rem, calc(367vw / 12.8));
 position: absolute;
 top: max(-5.5rem, calc(-55vw / 12.8));
 left: max(-4.5rem, calc(-45vw / 12.8));
}

.about_item_img,.about_item_img_04   {
 opacity: 1;
}
.about_item_img  span,.about_item_img_04 span {
 clip-path: inset(0 100% 0 0);
}
.about_item_img.scrollin  span ,
.about_item_img_04.scrollin  span {
  animation-name: about_img_txt;
 animation-fill-mode: forwards;
 animation-timing-function: linear;
 animation-duration: .7s;
}


@keyframes about_img_txt {
 0% {
  clip-path: inset(0 100% 0 0);
 }
 100% {
  clip-path: inset(0 0 0 0);
 }
}
.about_item_03 .about_item_txt {
 margin-top: min(8rem, calc(80vw / 12.8));
 position: relative;
}
.about_item_img_06 {
 display: block;
 width: min(32.3rem, calc(323vw / 12.8));
 margin-left: auto;
 margin-top: min(4.5rem, calc(45vw / 12.8));
}

.about_other {
 width: min(77.5rem, calc(775vw / 12.8));
 margin: 0 auto;
 margin-top: min(16.5rem, calc(165vw / 12.8));
}
.about_other_ttl {
 font-size: 3rem;
 font-weight: bold;
 color: #fff;
 display: inline-block;
 border-bottom: #fff solid min(0.1rem, calc(1vw / 12.8));
}
.about_other_ttl span {
 position: relative;
 transform: translateY(min(3rem, calc(30vw / 12.8)));
 opacity: 0;
 display: inline-block;
}
.about_other_ttl span:nth-of-type(2) {
 animation-delay: .1s;
}
.about_other_ttl span:nth-of-type(3) {
 animation-delay: .2s;
}
.about_other_ttl span:nth-of-type(4) {
 animation-delay: .3s;
}
.about_other_ttl span:nth-of-type(5) {
 animation-delay: .4s;
}
.about_other_ttl span:nth-of-type(6) {
 animation-delay: .5s;
}
.about_other_ttl span:nth-of-type(7) {
 animation-delay: .6s;
}
.about_other_ttl span:nth-of-type(8) {
 animation-delay: .7s;
}
.about_other_ttl span:nth-of-type(9) {
 animation-delay: .8s;
}
.about_other_ttl span:nth-of-type(10) {
 animation-delay: .9s;
}
.about_other_ttl span:nth-of-type(11) {
 animation-delay: 1s;
}
.about_other_ttl span:nth-of-type(12) {
 animation-delay: 1.1s;
}
.about_other_ttl span:nth-of-type(13) {
 animation-delay: 1.2s;
}
.about_other_ttl span:nth-of-type(14) {
 animation-delay: 1.3s;
}

.about_other_ttl.scrollin  span {
 animation-name: other_popup;
 animation-duration: .4s;
 animation-timing-function: ease-in-out;
 animation-fill-mode: forwards;
}

@keyframes other_popup {
 0% {
  transform: translateY(min(3rem, calc(30vw / 12.8)));
  opacity: 0;
 }
 100%{
  transform: translateY(min(0rem, calc(00vw / 12.8)));
  opacity: 1;
 }
}

.about_other_flex {
 display: flex;
 justify-content: space-between;
 margin-top: min(3.5rem, calc(35vw / 12.8));
}
.about_other_item {
 width: min(37rem, calc(370vw / 12.8));
 position: relative;
 z-index: 1;
}
.about_other_item:first-of-type::before {
 content: "";
 width: min(10.3rem, calc(103vw / 12.8));
 height: min(8rem, calc(80vw / 12.8));
 background: url(../images/about_other_icon_01.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: min(13rem, calc(130vw / 12.8));
 left: max(-8rem, calc(-80vw / 12.8));
 z-index: -1;
}
.about_other_item:last-of-type::before {
 content: "";
 width: min(5.8rem, calc(58vw / 12.8));
 height: min(5rem, calc(50vw / 12.8));
 background: url(../images/about_other_icon_02.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top: max(-3rem, calc(-30vw / 12.8));
 right: 0;
 z-index: -1;
}
.about_other_txt {
 font-size: 2rem;
 font-weight: 500;
 line-height: 1.7;
 color: #fff;
 margin-top: min(1.5rem, calc(15vw / 12.8));
 position: relative;
}
.about_other_txt::after {
 content: "";
 width: min(18.9rem, calc(189vw / 12.8));
 height: min(1.6rem, calc(16vw / 12.8));
 background: url(../images/border.svg) no-repeat;
 background-size: cover;
 position: absolute;
 bottom: max(-1.5rem, calc(-15vw / 12.8));
 left: 0;
 right: 0;
 margin: 0 auto;
}

.star {
 width: min(0.8rem, calc(8vw / 12.8));
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: 2;
 font-size: 0;
}
.about_star_01 {
 top: min(16.5rem, calc(165vw / 12.8));
 right: min(106rem, calc(1060vw / 12.8));
}
.about_star_02 {
 top: min(8rem, calc(80vw / 12.8));
 right: min(80rem, calc(800vw / 12.8));
}
.about_star_03 {
 top: min(11.5rem, calc(115vw / 12.8));
 right: min(60rem, calc(600vw / 12.8));
}
.about_star_04 {
 top: min(8.5rem, calc(85vw / 12.8));
 left: min(20rem, calc(200vw / 12.8));
}
.about_star_05 {
 width: min(1.2rem, calc(12vw / 12.8));
 top: min(6rem, calc(60vw / 12.8));
 left: min(37rem, calc(370vw / 12.8));
}
.about_star_06 {
 top: min(8rem, calc(80vw / 12.8));
 left: min(110rem, calc(1100vw / 12.8));
}
.about_star_07 {
 top: min(59rem, calc(590vw / 12.8));
 right: min(80rem, calc(800vw / 12.8));
}
.about_star_08 {
 top: min(53.5rem, calc(535vw / 12.8));
 right: min(93rem, calc(930vw / 12.8));
}
.about_star_09 {
 top: min(72.5rem, calc(725vw / 12.8));
 left: min(87rem, calc(870vw / 12.8));
}
.about_star_10 {
 top: min(131rem, calc(1310vw / 12.8));
 right: min(55rem, calc(550vw / 12.8));
}
.about_star_11 {
 top: min(170rem, calc(1700vw / 12.8));
 left: min(84rem, calc(840vw / 12.8));
}
.about_star_12 {
 top: min(197rem, calc(1970vw / 12.8));
 right: min(75rem, calc(750vw / 12.8));
}
.about_star_13 {
 top: min(252rem, calc(2520vw / 12.8));
 right: min(76rem, calc(760vw / 12.8));
}
.about_star_14 {
 top: min(256rem, calc(2560vw / 12.8));
 left: min(75rem, calc(750vw / 12.8));
}
.about_star_15 {
 top: min(320rem, calc(3200vw / 12.8));
}
.about_star_16 {
 top: min(382rem, calc(3820vw / 12.8));
 right: min(68rem, calc(680vw / 12.8));
}

.shootingstar {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 margin: 0 auto;
 z-index: 2;
 clip-path: inset(0 0 100% 0);
}

.shootingstar.show {
 animation-name: shootingstar;
 animation-fill-mode: forwards;
 animation-timing-function: linear;
 animation-duration: 5s;
 animation-iteration-count: infinite;
}
@keyframes shootingstar {
 0% {
  clip-path: inset(0 0 100% 0);

 }
 40% {
   clip-path: inset(0 0 0 0);
 }
 80% {
  clip-path: inset(0  100% 0 0);
 }
 100% {
  clip-path: inset(0  100% 0 0);
 }
}

.about_shootingstar_01 {
 width: min(12.6rem, calc(126vw / 12.8));
 top: min(6.5rem, calc(65vw / 12.8));
 left: min(72rem, calc(720vw / 12.8));
}
.about_shootingstar_02 {
 width: min(13.3rem, calc(133vw / 12.8));
 top: min(96.5rem, calc(965vw / 12.8));
 left: min(66rem, calc(660vw / 12.8));
}
.about_shootingstar_03 {
 width: min(11rem, calc(110vw / 12.8));
 top: min(118rem, calc(1180vw / 12.8));
 right: min(65rem, calc(650vw / 12.8));
}
.about_shootingstar_04 {
 width: min(11.3rem, calc(113vw / 12.8));
 top: min(205rem, calc(2050vw / 12.8));
 left: min(67rem, calc(670vw / 12.8));
}
.about_shootingstar_05 {
 width: min(8.2rem, calc(82vw / 12.8));
 top: min(245rem, calc(2450vw / 12.8));
 right: min(80rem, calc(800vw / 12.8));
}

.about_shootingstar_06 {
 width: min(8.2rem, calc(82vw / 12.8));
 top: min(294rem, calc(2940vw / 12.8));
 right: min(55rem, calc(550vw / 12.8));
}
.about_shootingstar_07 {
 width: min(9.3rem, calc(93vw / 12.8));
 top: min(320rem, calc(3200vw / 12.8));
 left: min(20rem, calc(200vw / 12.8));
}

/*                       recipe                    */
.recipe_inner {
 background-color: #061f64;
 padding-bottom: min(11rem, calc(110vw / 12.8));
 position: relative;
}
.recipe_ttl {
 font-size: 4.6rem;
 color: #efb339;
 font-weight: bold;
 letter-spacing: 0.02em;
}
.recipe_txt {
 font-size: 2rem;
 font-weight: 500;
 line-height: 2.1;
 color: #fff;
 margin-top: min(1.5rem, calc(15vw / 12.8));
}

.recipe_splide {
 z-index: 5;
 background-color: #fef9e6;
 padding: min(4rem, calc(40vw / 12.8)) 0 min(6rem, calc(60vw / 12.8));
 margin-top: min(4.5rem, calc(45vw / 12.8));
 margin-bottom: min(3.5rem, calc(35vw / 12.8));
}
.recipe_slide {
 cursor: pointer;
}
.recipe_slide_img {
 position: relative;
 overflow: hidden;
}
.recipe_slide_img img{
 position: relative;
transition: .4s;
z-index: 10;
}

.recipe_slide_img span {
 width: min(3.2rem, calc(32vw / 12.8));
 height: min(3.2rem, calc(32vw / 12.8));
 background-color: #fff;
 border-radius: 50%;
 position: absolute;
 bottom: min(0.5rem, calc(5vw / 12.8));
 right: min(1rem, calc(10vw / 12.8));
}
.recipe_slide_img span::before {
 content: "";
 width: min(1.5rem, calc(15vw / 12.8));
 border: min(0.1rem, calc(1vw / 12.8)) solid #061f6a;
 position: absolute;
 top: 50%;
 left: 0;
 right: 0;
 margin: 0 auto;
 transform: translateY(-50%);
 box-sizing: border-box;
}
.recipe_slide_img span::after {
 content: "";
 width: min(1.5rem, calc(15vw / 12.8));
 border: min(0.1rem, calc(1vw / 12.8)) solid #061f6a;
 position: absolute;
 top: 50%;
 left: 0;
 right: 0;
 margin: 0 auto;
 transform: translateY(-50%) rotate(90deg);
 box-sizing: border-box;
}
.recipe_slide_txt {
 min-width: min(21.5rem, calc(215vw / 12.8));
 font-size: 1.8rem;
 color: #061f6a;
 line-height: 1.2;
 display: inline-block;
 border-left: #061f6a solid min(0.3rem, calc(3vw / 12.8));
 border-right: #061f6a solid min(0.3rem, calc(3vw / 12.8));
 padding: 0 min(1rem, calc(10vw / 12.8));
 margin-top: min(2rem, calc(20vw / 12.8));
 font-weight: 600;
}
.recipe_splide .splide__arrow {
 width:  min(3.2rem, calc(32vw / 12.8));
 height:  min(3.2rem, calc(32vw / 12.8));
 opacity: 1;
 background-color: #061f6a;
 box-sizing: border-box;
 border: #061f6a solid  min(.1rem, calc(1vw / 12.8));
 top:  min(11rem, calc(110vw / 12.8));
 transform: none;
 transition: .4s;
 display: none;
}
.recipe_splide .splide__arrow svg {
 fill: #fff;
 width:  min(1rem, calc(10vw / 12.8));
 height:  min(1rem, calc(10vw / 12.8));
 transition: .4s;
}

.recipe_slide:hover .recipe_slide_img img{
  transform: scale(1.1);
 }


@media (hover: hover)  and (pointer: fine){

.recipe_splide .splide__arrow:where(:any-link, :enabled, summary):hover svg{
  fill: #061f6a;
 }
.recipe_splide .splide__arrow:where(:any-link, :enabled, summary):hover {
  background-color: #fff;
 }

}

.recipe_splide .splide__arrow--next {
 left:  min(33rem, calc(330vw / 12.8));
 right: 0;
 margin: 0 auto;
}
.recipe_splide .splide__arrow--prev {
 right:  min(33rem, calc(330vw / 12.8));
 left: 0;
 margin: 0 auto;
}
.recipe_splide .splide__pagination {
 bottom:  max(-3rem, calc(-30vw / 12.8));
 padding: 0;
}
.recipe_splide .splide__pagination__page {
 width:   min(1.2rem, calc(12vw / 12.8));
 height:   min(1.2rem, calc(12vw / 12.8));
 opacity: 1;
 margin: 0  calc(15vw / 12.8);
 background-color: #efb339;
}
.recipe_splide .splide__pagination__page.is-active {
 background-color: #061f6a;
}


.recipe_banner {
 width: min(75rem, calc(750vw / 12.8));
 margin:0 auto 0;
 padding-top: min(19.5rem, calc(195vw / 12.8));
 position: relative;
 z-index: 5;
}

.recipe_star_01 {
 top: min(73rem, calc(730vw / 12.8));
 right: min(96rem, calc(960vw / 12.8));
}
.recipe_star_02 {
 top: min(80rem, calc(800vw / 12.8));
 left: min(24rem, calc(240vw / 12.8));
}
.recipe_star_03 {
 top: min(125rem, calc(1250vw / 12.8));
 right: min(78rem, calc(780vw / 12.8));
}
.recipe_star_04 {
 top: min(130rem, calc(1300vw / 12.8));
 left: min(79rem, calc(790vw / 12.8));
}

.recipe_shootingstar_01 {
 width: min(9.3rem, calc(93vw / 12.8));
 top: min(1rem, calc(10vw / 12.8));
 left: min(74rem, calc(740vw / 12.8));
}
.recipe_shootingstar_02 {
 width: min(7.5rem, calc(75vw / 12.8));
 top: min(74rem, calc(740vw / 12.8));
 right: min(78rem, calc(780vw / 12.8));
}
.recipe_shootingstar_03 {
 width: min(9.3rem, calc(93vw / 12.8));
 top: min(125rem, calc(1250vw / 12.8));
 left: min(70rem, calc(700vw / 12.8));
}

/*                       special                    */
.special_inner {
 background-color: #061f64;
 position: relative;
 padding-bottom: min(17.5rem, calc(175vw / 12.8));
}
.special_ttl {
 font-weight: bold;
 font-size: 4.8rem;
 letter-spacing: 0.04em;
 color: #efb339;
 line-height: 1.8;
 margin-bottom: min(3rem, calc(30vw / 12.8));
}
.special_ttl span {
 display: block;
 color: #fff;
 font-size: 2.2rem;
 font-weight: 500;
}
.special_img {
 width: min(14rem, calc(140vw / 12.8));
 position: absolute;
 top: min(4rem, calc(40vw / 12.8));
 left: min(57rem, calc(570vw / 12.8));
 right: 0;
 margin: 0 auto;
}

.special_splide {
 position: relative;
 z-index: 5;
}

.special_splide .splide__track {
 width: min(89.6rem, calc(896vw / 12.8));
 margin: 0 auto;
}
.special_splide .special_slide {
 width: min(42.3rem, calc(423vw / 12.8));
 background: url(../images/special_bg.svg) no-repeat;
 background-size: cover;
 box-sizing: border-box;
 padding: min(3rem, calc(30vw / 12.8)) min(3rem, calc(30vw / 12.8)) min(4.5rem, calc(45vw / 12.8));
}
.special_splide .special_txt {
 font-size: 1.6rem;
 font-weight: 500;
 line-height: 1.75;
 color: #fff;
 text-align: justify;
 letter-spacing: 0.1em;
 margin: min(1.5rem, calc(15vw / 12.8)) 0 min(2.5rem, calc(25vw / 12.8));
}
.special_splide .btn {
 width: 100%;
}
.special_splide .btn a {
 width: 100%;
 font-size: 1.8rem;
 padding: min(1.1rem, calc(11vw / 12.8)) 0;
}
.special_splide .btn a .btn_bg {
 width: 100%;
}
.special_splide .splide__arrow {
 width: min(4.8rem, calc(48vw / 12.8));
 height: min(4.8rem, calc(48vw / 12.8));
 opacity: 1;
 background-color: transparent;
 top: 50%;
 transform: translateY(-50%);
 box-sizing: border-box;
 border: min(0.2rem, calc(2vw / 12.8)) solid #fff;
 transition: .4s;
}
.special_splide .splide__arrow svg {
 fill: #fff;
 width: min(1.5rem, calc(15vw / 12.8));
 height: min(1.5rem, calc(15vw / 12.8));
 transition: .4s;
}

@media (hover: hover)  and (pointer: fine){
.special_splide .splide__arrow:where(:any-link, :enabled, summary):hover svg{
  fill: #061f6a;
 }
.special_splide .splide__arrow:where(:any-link, :enabled, summary):hover {
  background-color: #fff;
 }

}

.special_splide .splide__arrow--next {
 left: min(98rem, calc(980vw / 12.8));
 right: 0;
 margin: 0 auto;
}
.special_splide .splide__arrow--prev {
 right: min(98rem, calc(980vw / 12.8));
 left: 0;
 margin: 0 auto;
}
.special_splide .splide__pagination {
 bottom: max(-4.5rem, calc(-45vw / 12.8));
 padding: 0;
}
.special_splide .splide__pagination__page {
 width: min(1.2rem, calc(12vw / 12.8));
 height: min(1.2rem, calc(12vw / 12.8));
 opacity: 1;
 margin: 0 min(1.5rem, calc(15vw / 12.8));
 background-color: #061f64;
 border: #efb339 solid min(0.1rem, calc(1vw / 12.8));
}
.special_splide .splide__pagination__page.is-active {
 background-color: #efb339;
}

/*                       lastly                    */
.lastly_inner {
 background-color: #061f64;
 padding-bottom: min(7rem, calc(70vw / 12.8));
 position: relative;
}

.lastly_item {
 width: min(78.3rem, calc(783vw / 12.8));
 margin: 0 auto;
 background: url(../images/lastly_bg.svg) no-repeat;
 background-size: cover;
 padding: min(4.8rem, calc(48vw / 12.8)) 0 0;
}
.lastly_logo {
 width: min(24rem, calc(240vw / 12.8));
 margin: 0 auto;
 position: relative;
 z-index: 5;
}
.lastly_ttl {
 font-size: 5rem;
 font-weight: bold;
 color: #061f6a;
 letter-spacing: 0.06em;
 line-height: 1.5;
 margin-top: min(1.5rem, calc(15vw / 12.8));
}
.lastly_ttl span {
 font-size: 3rem;
 display: block;
}
.lastly_txt {
 margin-top: min(1.5rem, calc(15vw / 12.8));
}
.lastly_txt p {
 font-size: 1.8rem;
 font-weight: 500;
 color: #061f6a;
 margin-top: min(1rem, calc(10vw / 12.8));
}
.lastly_img {
 width: min(45rem, calc(450vw / 12.8));
 margin: 0 auto;
}

.lastly_star_01 {
 top: max(-7.5rem, calc(-75vw / 12.8));
 left: min(24rem, calc(240vw / 12.8));
}
.lastly_star_02 {
 top: min(27rem, calc(270vw / 12.8));
 right: min(103rem, calc(1030vw / 12.8));
}
.lastly_star_03 {
 top: min(42rem, calc(420vw / 12.8));
 left: min(99rem, calc(990vw / 12.8));
}


.lastly_shootingstar_01 {
 width: min(10.4rem, calc(104vw / 12.8));
 top: max(-11rem, calc(-110vw / 12.8));
 left: min(49rem, calc(490vw / 12.8));
}
.lastly_shootingstar_02 {
 width: min(9.3rem, calc(93vw / 12.8));
 top: min(10.5rem, calc(105vw / 12.8));
 right: min(89rem, calc(890vw / 12.8));
}
.lastly_shootingstar_03 {
 width: min(9.3rem, calc(93vw / 12.8));
 top: min(52.5rem, calc(525vw / 12.8));
 left: min(103rem, calc(1030vw / 12.8));
}


/*                       sns                    */
.sns_inner {
 background-color: #060028;
 padding: min(5.5rem, calc(55vw / 12.8)) 0 min(4rem, calc(40vw / 12.8));
}
.sns_item {
 width: min(74.5rem, calc(745vw / 12.8));
 margin: 0 auto;
}
.sns_banner {
 display: flex;
 justify-content: space-between;
}
.sns_banner li {
 width: min(35.5rem, calc(355vw / 12.8));
}


.sns_menu {
 width: min(41.5rem, calc(415vw / 12.8));
 display: flex;
 justify-content: space-between;
 margin: min(4.5rem, calc(45vw / 12.8)) auto 0;
}
.sns_menu li {
 width: min(4.4rem, calc(44vw / 12.8));
}
.sns_menu li a {
 display: block;
 width: 100%;
}
.sns_menu li:nth-of-type(4) {
 width: min(6.4rem, calc(64vw / 12.8));
}

@media (hover: hover)  and (pointer: fine){
.sns_banner li a:where(:any-link, :enabled, summary):hover {
  opacity: .7;
 }
.sns_menu li a:where(:any-link, :enabled, summary):hover {
  transform: scale(1.05);
 }

}

footer {
 background-color: #061f64;
 padding: min(1.3rem, calc(13vw / 12.8)) 0;
}
.copy {
 font-size: 1.4rem;
 font-weight: 400;
 letter-spacing: 0.06em;
 color: #fff;
}


.modal {
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 height: 100vh;
 height: 100dvh;
 background-color: #000000b3;
 z-index: 100;
 display: none;
}
.modal::after {
 content: "";
 width: 100%;
 height: 100%;
 background: url(../images/bg.webp);
 background-size: contain;
 position: absolute;
 top: 0;
 left: 0;
 z-index: 2;
 mix-blend-mode: overlay;
 pointer-events: none;
 opacity: 0.5;
}
.modal_bg {
 position: fixed;
 width: 100%;
 height: 100%;
 top: 0;
 left: 0;
}
.modal_inner {
 width: min(90.2rem, calc(902vw / 12.8));
 margin: 0 auto;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 box-sizing: border-box;
}

.modal_item_bg {
 width: min(90.2rem, calc(902vw / 12.8));
}
.modal_item {
 width: min(80.5rem, calc(805vw / 12.8));
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
}
.modal_item_flex {
 display: flex;
 justify-content: space-between;
 align-items: flex-start;
}
.modal_img {
  width: min(45rem, calc(450vw / 12.8));
  position: relative;
 }
 .modal_img span {
  display: block;
 width: min(15rem, calc(150vw / 12.8));
 position: absolute;
 bottom: max(-3rem, calc(-30vw / 12.8));
 right: max(-5rem, calc(-50vw / 12.8));

}
.modal_detail {
  width: min(31.5rem, calc(350vw / 12.8));
  margin-top: min(1.5rem, calc(15vw / 12.8));
}
.modal_ttl {
 font-size: 2rem;
 font-weight: bold;
 color: #061F6A;
 line-height: 1.15;
 border-left: #061F6A solid min(.4rem, calc(4vw / 12.8));
 border-right: #061F6A solid min(.4rem, calc(4vw / 12.8));
 display: inline-block;
 padding: 0  min(2rem, calc(20vw / 12.8));
 min-width:  min(23.5rem, calc(235vw / 12.8));
 box-sizing: border-box;
}
.modal_txt {
 font-size: 1.6rem;
 font-weight: 500;
 color: #061F6A;
 text-align: justify;
 margin-top: min(2rem, calc(20vw / 12.8));
 letter-spacing: -0.01em;
}
.modal_inner .btn  {
width:min(44.5rem, calc(445vw / 12.8));
margin-top: min(2rem, calc(20vw / 12.8));
}
.modal_inner .btn a {
 font-size: 1.8rem;
 box-sizing: border-box;
}
.modal_inner .btn  a .btn_bg {
 width: 100%;
}
.modal_inner .close_btn {
 width:min(5rem, calc(50vw / 12.8));
 height:min(5rem, calc(50vw / 12.8));
 position: absolute;
 right: 0;
 top: max(-5rem, calc(-50vw / 12.8));
 transform: rotate(45deg);
}
.modal_inner .close_btn::before {
 content: '';
 width: 100%;
 border: min(.3rem, calc(3vw / 12.8)) solid #fff;
 border-radius: min(1rem, calc(10vw / 12.8));
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 left: 0;
 right: 0;
 margin: 0 auto;
 box-sizing: border-box;
}
.modal_inner .close_btn::after {
 content: '';
 width: 100%;
 border: min(.3rem, calc(3vw / 12.8)) solid #fff;
 border-radius: min(1rem, calc(10vw / 12.8));
 position: absolute;
 top: 50%;
 transform: translateY(-50%) rotate(90deg);
 left: 0;
 right: 0;
 margin: 0 auto;
 box-sizing: border-box;
}



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

/*                          header                    */
header {

 background-color: transparent;
}
.hd_inner {
 width: 100%;
 padding: 1rem 1.2rem;
 position: relative;
 z-index: 10;
}
.logo {
 width:5rem;
}
.hd_menu {
 display: none;
}

.nav_btn {
 width: 4rem;
 position: relative;
 padding: 1.5rem 0;
}
.nav_btn::before,
.nav_btn::after {
 content: '';
 width: 100%;
 border: .2rem solid #fff;
 border-radius: 1rem;
 position: absolute;
 left: 0;
 box-sizing: border-box;
 transition: .4s;
}
.nav_btn span {
 border: .2rem solid #fff;
 border-radius: 1rem;
 display: block;
 width: 100%;
 box-sizing: border-box;
 transition: .4s;
}
.nav_btn.open span {
 opacity: 0;
}
.nav_btn::before {
 top: 0;
}
.nav_btn::after {
 bottom: 0;
}
.nav_btn.open::before {
 top: 1.5rem;
 transform: rotate(145deg);
}
.nav_btn.open::after {
 bottom: 1.5rem;
 transform: rotate(-145deg);
}


.nav {
 position: fixed;
 top: 0;
 width: 100%;
 height: 100vh;
 height: 100dvh;
 background-color: #061F64;
 display: none;
  padding-top: 6rem;
  overflow-y: auto;
}
.nav_bg {
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}
.nav_inner {
 width: 32.5rem;
  margin: 3.2rem auto 0;
 /* ボタン分 */
 padding-bottom: 200px;
 position: relative;
 z-index: 5;
}
.nav_ttl {
 font-size: 2rem;
 font-weight: bold;
 letter-spacing: 0.04em;
 color: #EFB339;
 margin-bottom: 0.5rem;
}
.nav_menu a{
 font-size: 1.8rem;
 color: #FFFFFF;
 font-weight: bold;
 line-height: 2.1;
}
.nav_banner {
 margin: 3rem 0 3.5rem;
}
.nav_sns {
 width: 28.5rem;
 margin: 3.5rem auto;
 display: flex;
 justify-content: space-between;
}
.nav_sns li {
 width: 3rem;
}
.nav_sns li:nth-of-type(4){
 width: 4.3rem;
}


/*                          mv                    */
.mv_inner {
 margin-top: 0;
}
.mv_img::after {
 content: "";
 width: 100%;
 height:.3rem;
 background-size: cover;
 bottom:-.1rem;
}

.mv_txt {
 top: 35rem;
 left: 1.5rem;
}
.mv_txt p {
 font-size: 1.8rem;
}
.mv_txt p:first-of-type::after {
 content: '';
 width: 90%;
  height: 1rem;
 padding-left: .5rem;
 left: -.25rem;
 bottom: 2.7rem;
 background-color: #ea6136;
 position: absolute;
 z-index: -1;
}
.mv_txt p::before {
 height: 1rem;
 padding-left: .5rem;
 left: -.25rem;
 bottom: .2rem;
}
.mv_txt span {
 font-size: 1.4rem;
}

.mv_ttl {
 width:100%;
 padding:3rem 0;
}
.main_ttl {
 border-bottom:none;
}

.mv_ttl_box {
 gap: 1rem .7rem;
 position: relative;
 width: 24rem;
 flex-wrap: wrap;
 justify-content: flex-start;
 margin-left: auto;
 margin-right: 1.5rem;
}
.mv_ttl_box p {
 font-size: 0;
 transform: translateY(2rem);
}
.mv_ttl_box p:nth-of-type(1) {
 width: 7.7rem;
 position: absolute;
 top: -1rem;
 left: -10rem;
 margin-right: 0;
}
.mv_ttl_box p:nth-of-type(2) {
 width: 2.8rem;
 top: 0;
}
.mv_ttl_box p:nth-of-type(3) {
 width:2.2rem;
 top:  .5rem;
}
.mv_ttl_box p:nth-of-type(4) {
 width: 2.1rem;
 top: -.2rem;
}
.mv_ttl_box p:nth-of-type(5) {
 width: 1.6rem;
 top: 0;
}
.mv_ttl_box p:nth-of-type(6) {
 width:1.9rem;
 top:  .8rem;
}
.mv_ttl_box p:nth-of-type(7) {
 width:2.7rem;
 top: 0;
}
.mv_ttl_box p:nth-of-type(8) {
 width:2rem;
 top: .6rem;
}
.mv_ttl_box p:nth-of-type(9) {
 width:.6rem;
 top: 2rem;
}
.mv_ttl_box p:nth-of-type(10) {
 width:3.6rem;
 top: -.5rem;
}
.mv_ttl_box p:nth-of-type(11) {
 width: 2.4rem;
 top:0rem;
}
.mv_ttl_box p:nth-of-type(12) {
 width:1.8rem;
 top: .5rem;
}
.mv_ttl_box p:nth-of-type(13) {
 width:1.6rem;
 top: .3rem;
}
.mv_ttl_box p:nth-of-type(14) {
 width:1.9rem;
 top:  .4rem;
}
.mv_ttl_box p:nth-of-type(15) {
 width: 1.5rem;
 top: 0;
}
.mv_ttl_box p:nth-of-type(16) {
 width:.9rem;
 top:  2rem;
}


@keyframes popup {
 0% {
  transform: translateY(2rem);
  opacity: 0;
 }
 100%{
  transform: translateY(0);
  opacity: 1;
 }
}

.main_ttl .main_ttl_star_01 {
 top: 2rem;
 left:1rem;
 right: auto;
}
.main_ttl .main_ttl_star_02 {
 top: 10rem;
 left:8.5rem;
 right: auto;
}
.main_ttl .main_ttl_star_03 {
 top: 2rem;
 right: 1.5rem;
 left: auto;
}
.main_ttl .main_ttl_shootingstar {
 width:4.7rem;
 top:-1rem;
 left: 10rem;
 right: auto;

}

/*                       scrollbar                    */
.scrollbar {
 font-size: 1rem;
 padding:1rem 0 3rem;
 position: relative;
}
.scrollbar span {
 display: block;
 width: .3rem;
 position: absolute;
 bottom: -1rem;
 left: 0;
 right: 0;
 margin: 0 auto;
}

/*                       concept                    */
#concept {
 padding-bottom: 5rem;
}
.concept_inner {
 width: 100%;
 overflow: hidden;
}
.concept_detail {
  width:29rem;
}
.concept_txt {
 width:28.5rem;
}
.concept_txt p {
 font-size: 1.4rem;
 line-height: 2.1;
}

.concept_txt p:nth-last-of-type(1) {
 margin-bottom:  3.5rem;
}
.concept_movie video {
 width: 75rem;
 position: relative;
 left: 50%;
 transform: translateX(-50%);
 height: auto;
}
.btn {
 width:29rem;
}
.btn a {
 font-size: 1.2rem;
 padding:1.6rem 0;

}
.btn a::before {
 width: .8rem;
 height: .8rem;
 border-top: .1rem solid #061f6a;
 border-right: .1rem solid #061f6a;
 right:2rem;
}
.btn a .btn_bg {
 width: 29rem;

}



.section_item {
 padding-top: 5.5rem;
 margin-top:-5.5rem;
}

/*                       about                    */
.about_container {
 padding-top: 9rem;
}
.about_inner {
 background: #061f99;
 background: linear-gradient(180deg, rgba(6, 31, 153, 1) 0, rgba(6, 31, 153, 1) 8rem, rgba(6, 31, 100, 1) 8rem, rgba(6, 31, 100, 1) 100%);
 padding-bottom: 8rem;
}
.about_bg {
 position: absolute;
 top: -4.5rem;
 width: 100%;
}

.about_ttl {
 font-size: 2.5rem;
 line-height: 1.48;
}

.about_ttl span {
 font-size: 2rem;
}

.about_txt {
 font-size: 1.2rem;
 line-height: 2.1;
 margin-top: 1rem;
}

.about_item {
 width: 100%;
 margin:3rem auto 0;
}
.about_item_top {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 0 2.5rem;
}
.about_item_top_txt {
 font-size: 1.3rem;
 width: 15.5rem;
 padding: 1.2rem 2rem;
 box-sizing: border-box;
}
.about_item_02 .about_item_top_txt {
 width: 11rem;
 background: url(../images/about_txt_bg_02_sp.svg) no-repeat;
 background-size: cover;
 padding:1.08rem 1.7rem;
 text-align: left;
}
.about_item_top_txt::before {
 width: 1.3rem;
 height: 1.7rem;
 right: -1rem;
}
.about_item_02 .about_item_top_txt::before {
 left: -1rem;
}
.about_item_icon {
 width: 7.3rem;
}
.about_item_flex {
 flex-direction: column-reverse;
}
.about_item_txt {
 font-size: 1.2rem;
 line-height: 2.1;
}

.about_item_01 .about_item_img {
 width: 27.6rem;
 margin-left:4.2rem;
 margin-top: -7rem;
}
.about_item_01 .about_item_img span:first-of-type {
 width:8.7rem;
 top: .5rem;
 left: .5rem;
}
.about_item_01 .about_item_img span:last-of-type {
 width:9.2rem;
}
.about_item_01 .about_item_txt {
 margin-top:2rem;
 position: relative;
 right: 3.8rem;
 width: fit-content;
 margin-left: auto;
}


.about_item_02 .about_item_img {
 width:19.5rem;
 margin-left: auto;
 margin-right: 4.5rem;
 margin-top:5rem;
}
.about_item_02 .about_item_img span {
 width: 15.3rem;
 left: -2.5rem;
 top: -2.5rem;

}
.about_item_02 .about_item_txt {
 margin-top: 1.5rem;
 left:4.4rem;
}

.about_item_img_03 {
 width: 29.5rem;
 margin-left: auto;
 margin-right:0;
 margin-top: -8.5rem;
}

.about_item_img_04 {
 width: 19.5rem;
 margin:8rem auto 0;
}
.about_item_img_04  span {
 width: 16.5rem;
 left: -2.5rem;
 top: -2.5rem;

}


.about_item_03 .about_item_flex {
 flex-direction: column;
}
.about_item_03 .about_item_top {
 margin-top:3.5rem;
}
.about_item_03 .about_item_img {
 width:19.6rem;
 margin-top: 5.5rem;
 margin-left: 3.5rem;
}
.about_item_03 .about_item_img  span {
 width: 18.3rem;
 left: -2.5rem;
 top: -2.5rem;

}
.about_item_03 .about_item_txt {
 margin: 0 auto;
 margin-top:2rem;
 position: relative;
 display: flex;
 align-items: center;
 width: 32rem;
}
.about_item_img_06 {
 width: 16rem;
 margin-top: 0;
}

.about_other {
 width: 30rem;
 margin: 0 auto;
 margin-top: 13rem;
}
.about_other_ttl {
 font-size: 1.7rem;
 border-bottom: #fff solid .1rem;
}
.about_other_flex {
 flex-direction: column;
 margin-top: 2rem;
}
.about_other_item {
 width: 100%;
 position: relative;
 z-index: 1;
 display: flex;
 justify-content: space-between;
 align-items: center;
}
.about_other_item:last-of-type {
 flex-direction: row-reverse;
 margin-top: 2rem;
}
.about_other_item:first-of-type::before {
 width: 8.2rem;
 height: 6.3rem;
 top: -9rem;
 left: auto;
 right: -6rem;
}
.about_other_item:first-of-type::after {
 content: "";
 width: 2.8rem;
 height: 2.5rem;
 background: url(../images/about_other_icon_02.svg) no-repeat;
 background-size: cover;
 position: absolute;
 top:-.5rem;
 left: -1.2rem;
 z-index: -1;
 transform: scale(-1,1);
}
.about_other_item:last-of-type::before {
 width: 2.8rem;
 height: 2.5rem;
 top: -0.5rem;
 right: -1.2rem;
}
.about_other_img {
 width: 18rem;
}
.about_other_txt {
 font-size: 1.2rem;
 line-height: 2;
 margin-top:0;
 position: relative;
 text-align: left;
}
.about_other_txt::after {
 width: 9.3rem;
 height:.8rem;
 bottom: -1rem;
}

.star {
 width: .4rem;
 left: auto;
 right: auto;
}
.about_star_01 {
 top: 2.4rem;
 left: 6rem;

}
.about_star_02 {
 top: 5rem;

 left: 3rem;
}
.about_star_03 {
 top: 7rem;

 right:5rem;
}

.about_star_04 {
 top: 28.7rem;

right: 3.8rem;
}
.about_star_05 {
 top: 40rem;
 left: 5rem;
}
.about_star_06 {
 top: 63.7rem;
 right: 3.7rem;
}
.about_star_07 {
 top: 78rem;
 left:5rem;
}
.about_star_08 {
 top: 84.3rem;
 right:2.5rem;
}
.about_star_09 {
 top: 118.6rem;
 left: 3.8rem;
}
.about_star_10 {
 top:130.8rem;
 right:7.5rem;
}
.about_star_11 {
 top:155rem;
 right:4.1rem;
}
.about_star_12 {
 top:193.5rem;
 left:8rem;
}
.about_star_13 {
 top:234.3rem;
 right:13rem;
}
.about_star_14 {
 top:238.3rem;
 right:7rem;
}



.shootingstar.show {
 animation-name: shootingstar;
 animation-fill-mode: forwards;
 animation-timing-function: linear;
 animation-duration: 5s;
 animation-iteration-count: infinite;
}
@keyframes shootingstar {
 0% {
  clip-path: inset(0 0 100% 0);

 }
 40% {
   clip-path: inset(0 0 0 0);
 }
 80% {
  clip-path: inset(0  100% 0 0);
 }
 100% {
  clip-path: inset(0  100% 0 0);
 }
}

.about_shootingstar_01 {
 width:4.1rem;
 top: 147.6rem;
 left: 4rem;
 right: auto;
}
.about_shootingstar_02 {
 width: 4.4rem;
 top: 3rem;
 right: 6rem;
 left:auto;
}
.about_shootingstar_03 {
 width:3.8rem;
 top: 161.4rem;
 right:4.2rem;
 left: auto;
}
.about_shootingstar_04 {
 width:4.7rem;
 top: 196.9rem;
 left: auto;
 right: 10rem;
}
.about_shootingstar_05 {
 width:4.6rem;
 top: 87.1rem;
 right: auto;
 left: 2.5rem;
}

.about_shootingstar_06 {
 width: 6rem;
 top: 53.2rem;
 right:0;
 left: auto;
}
.about_shootingstar_07 {
 width: 4.7rem;
 top: 123.3rem;
 left: auto;
 right: 0;
}
.about_shootingstar_08 {
 width: 5rem;
 top: 236rem;
 left: 5.5rem;
 right: auto;
}

/*                       recipe                    */
.recipe_inner {
 padding-bottom: 11rem;
}
.recipe_ttl {
 font-size: 2.5rem;
}
.recipe_txt {
 font-size: 1.2rem;
 margin-top: 1rem;
}

.recipe_splide {
 padding: 1.8rem 0 4rem;
 margin-top: 3.5rem;
 margin-bottom:2.2rem;
}

.recipe_slide_img span {
 width: 2.5rem;
 height: 2.5rem;
 bottom: .7rem;
 right:.7rem;
}
.recipe_slide_img span::before {
 width: 1.2rem;
 border:.1rem solid #061f6a;

}
.recipe_slide_img span::after {
 width: 1.2rem;
 border:.1rem solid #061f6a;
}
.recipe_slide_txt {
 min-width: 17rem;
 font-size: 1.4rem;
 border-left: #061f6a solid .3rem;
 border-right: #061f6a solid .3rem;
 padding: 0 2.7rem;
 margin-top: 1rem;
 box-sizing: border-box;
}
.recipe_splide .splide__arrow {
 width:  2.3rem;
 height:  2.3rem;
 border: #061f6a solid  .1rem;
 top:  8rem;
 display: block;

}
.recipe_splide .splide__arrow svg {
 width:  .8rem;
 height:  .8rem;
}

.recipe_splide .splide__arrow--next {
 left: auto;
 right: 3rem;
}
.recipe_splide .splide__arrow--prev {
 right: auto;
 left: 3rem;
}
.recipe_splide .splide__pagination {
 bottom: -1.5rem;
}
.recipe_splide .splide__pagination__page {
 width:  .6rem;
 height:  .6rem;
 opacity: 1;
 margin: 0  .7rem;
}

.recipe_inner .btn a {
 padding: 1.6rem 0;
}

.recipe_banner {
 width: 32.5rem;
 padding-top: 13.5rem;
 margin-top: 0;
}
.recipe_star_01 {
 top: 54rem;
 left: 17.5rem;
}
.recipe_star_02 {
 top: 81rem;
 right: 10.5rem;
}
.recipe_star_03 {
 top: 84rem;
 right:6rem;
}

.recipe_shootingstar_01 {
 width: 5rem;
 top:51.8rem;
 left: auto;
 right: 6rem;
}

.recipe_shootingstar_03 {
 width:5.2rem;
 top: 81.8rem;
 left: 4.5rem;
 right: auto;
}

/*                       special                    */
.special_inner {
 padding-bottom: 15rem;
}
.special_ttl {
 font-size: 2.6rem;
 margin-bottom:3rem;
 line-height: 1.6;
}
.special_ttl span {
 font-size: 1.2rem;
}
.special_img {
 width:9.5rem;
 top:1.5rem;
 left: auto;
 right: .8rem;
}

.special_splide .splide__track {
 width: 100%;
}
.special_splide .special_slide {
 width:33rem;
 padding: 2.1rem 2rem 3rem;
 background: url(../images/special_bg_sp.svg) no-repeat;
 background-size: cover;
}
.special_splide .special_txt {
 font-size: 1.2rem;
 line-height: 2.1;
 width: 27rem;
 margin:1.5rem auto 2rem;
}

.special_splide .btn a {
 font-size: 1.2rem;
 padding:1.6rem 0;
}
.special_splide .splide__arrow {
 width:3rem;
 height:3rem;
 border: .1rem solid #fff;
 background-color: #061f64;
}
.special_splide .splide__arrow svg {
 width: .8rem;
 height: .8rem;
}


.special_splide .splide__arrow--next {
 left: auto;
 right: 1rem;
 margin: 0;
}
.special_splide .splide__arrow--prev {
 right: auto;
 left: 1rem;
 margin: 0 auto;
}
.special_splide .splide__pagination {
 bottom: -1.5rem;
 padding: 0;
}
.special_splide .splide__pagination__page {
 width: .6rem;
 height: .6rem;
 margin: 0 .7rem;
 border: #efb339 solid .1rem;
}


/*                       lastly                    */
.lastly_inner {
 padding-bottom:7.8rem;
}

.lastly_item {
 width: 32.5rem;
 background: url(../images/lastly_bg_sp.svg) no-repeat;
 background-size: cover;
 padding: 4rem 0 0;
}
.lastly_logo {
 width:17.6rem;
}
.lastly_ttl {
 font-size: 3.4rem;
 margin-top: 1rem;
}
.lastly_ttl span {
 font-size: 1.8rem;
}
.lastly_txt {
 margin-top: 1rem;
}
.lastly_txt p {
 font-size: 1.2rem;
 margin-top: 1rem;
}
.lastly_img {
 width: 27.5rem;
}
.lastly_star_01 {
 top: -7.5rem;
 left: 7.3rem;
}



.lastly_shootingstar_01 {
 width:5.2rem;
 top: -5.8rem;
 left: auto;
 right: 11.5rem;
}
.lastly_shootingstar_02 {
 width: 5.2rem;
 top: -6.5rem;
 right: 7.5rem;
 left: auto;
}
.lastly_shootingstar_03 {
 width:5.2rem;
 top: 58.2rem;
 left: 5.7rem;
 right: auto;
}


/*                       sns                    */
.sns_inner {
 padding: 5rem 0 4rem;
}
.sns_item {
 width: 28.4rem;
}
.sns_banner {
 flex-direction: column;
 gap: 3rem 0;
}
.sns_banner li {
 width: 100%;
}


.sns_menu {
 width:100%;
 margin:3.5rem auto 0;
}
.sns_menu li {
 width: 3rem;
}
.sns_menu li:nth-of-type(4) {
 width:4.3rem;
}


footer {
 padding: 2rem 0;
}
.copy {
 font-size: 1rem;
}



.modal_inner {
 width:32.6rem;
}
.modal_item_bg {
  width:32.6rem;
}
.modal_item {
 width:29rem;
}
.modal_item_flex {
 flex-direction: column;
}
.modal_img {
  width: 28.5rem;
  margin: 0 auto 1rem;
 }
 .modal_img span {
 width: 10rem;
 bottom: -2rem;
 right:-2rem;

}
.modal_detail {
  width: 100%;
}
.modal_ttl {
 font-size: 1.5rem;
 border-left: #061F6A solid .3rem;
 border-right: #061F6A solid .3rem;
 padding: 0  2rem;
 min-width:  17rem;
 line-height: 1;
}
.modal_txt {
 width: 26.3rem;
 margin: 0 auto;
 font-size: 1.2rem;
 font-weight: 500;
 color: #061F6A;
 text-align: justify;
 margin-top:0.3rem;
}
.modal_inner .btn  {
width:29rem;
margin-top: 1.5rem;
}
.modal_inner .btn a {
 font-size: 1.2rem;
 padding: 1.6rem 0;
}
.modal_inner .close_btn {
 width:3.5rem;
 height:3.5rem;
 top:-4rem;
 right: 0.5rem;
}
.modal_inner .close_btn::before {
 border:.2rem solid #fff;
 border-radius: 1rem;
}
.modal_inner .close_btn::after {
 border:.2rem solid #fff;
 border-radius: 1rem;
}

}
