
a:hover{
	opacity: 0.7;
}

body {
    margin: 0;
    padding: 0;
	font-family: "Noto Sans JP", sans-serif;
}
body::before {
content: "";
background: url("../images/bk.jpg") no-repeat center center;
background-size: cover;
display: block;
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
z-index: -1;
}

.vertical-ticker {
position: fixed;
top: 0;
width: 60px;
height: 100vh;
overflow: hidden;
z-index: 999;
font-size: 23px;
letter-spacing: 0.07em;
font-weight: bold;
	font-style: italic;
color: white;
pointer-events: none; /* ←クリックやスクロール操作を邪魔しないように */
}

.left-ticker {
left: 0;
writing-mode: vertical-rl;
background: rgba(0, 0, 0, 0.9);
}

.right-ticker {
right: 0;
writing-mode: vertical-lr;
background: rgba(0, 0, 0, 0.9);
}

.scroll-text {
display: inline-block;
animation: scrollDown 15s linear infinite;
	
}
.scroll-text2 {
display: inline-block;
transform: translateY(-110%);
animation: scrollDown 15s linear infinite;
animation-delay: 3s; /* ← ページ読み込み後 2秒待ってから開始 */
}

@keyframes scrollDown {
0% {
transform: translateY(-100%);
}
100% {
transform: translateY(100%);
}
}

/* デモ用コンテンツ */
.content {
padding: 50px;
max-width: 800px;
margin: 0 auto;
}
/* テロップここまで */

.st_wrapper a { color: #000; }

.st_wrapper {
	text-align: center;
	width: 100%;
	margin: 0 auto;
    padding: 0;
	letter-spacing: 0.045em;
	font-family: 'Noto Sans JP', sans-serif;
}
.wrap_content_top {
	width: 100%;
	max-width: 650px;
	padding: 0;
	padding-top: 6%;
	padding-bottom: 0.01%;
	margin: 0% auto 0%;	
	text-align: center;
    position: relative;
	
}
.wrap_content {
	width: 100%;
	max-width: 900px;
	padding: 0;
	margin: 5% auto 2%;	
	text-align: center;
    position: relative;
	
}

.bk01 {
	width: 100%;
	max-width: 800px;
    margin: 0% auto;
    background-color: #f5e7d7;
}

.bk02 {
	width: 70%;
	margin: 3% auto 0;
    background-color: #fff;
    padding: 1% 3% 5%;
	border-radius: 60px;
}
.bk03 {
	width: 100%;
    margin: 0% auto;
	background-color: #ff4b21;
}
.bdr_pink {
	border-bottom: solid 2px #F95EA4;
}

.co01 {
    color: #0092ab;
}

.co02 {
    color: #17517e;
}

.red {
    color: red;
}

.Main {
	width: 100%;
	font-weight: bold;
	line-height: 1.5em;
	margin: 0% auto 5%;
	text-align: center;
}

.Main img {
    max-width: 500px;
    width: 100%;
    margin: 0 auto;
}
	.swp2{
 width:80%;
	margin:6% auto 5%;
}
.k_logo {
    width: 100%;
    max-width: 900px;
    margin: 6% auto 0;
}

.k_logo img {
    width: 100%;
}

.k_main{
	width:100%;
	max-width: 1000px;
	margin: 0 auto;
	position:relative;
}

.st_wrapper img {
	width: 100%;
	margin: 0 auto;
}

.st_wrapper h1 {
	font-size: 21px;
	font-weight: bold;
	line-height: 1.8em;
	margin: -1% auto 0%;
    padding: 2% 0;
	text-align: center;
	color: #000;
text-decoration: underline;	
text-underline-offset: 5px;	
}

.st_wrapper h2 {
    width: 80%;
	font-size: 35px;
	font-weight: bold;
	line-height: 1.5em;
	margin: 0 auto 0%;
    padding: 1% 0;
	text-align: center;
	color: #fff;
font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;			
}


.st_wrapper h3 {
    width: 75%;
	font-size: 23px;
	font-weight: bold;
	line-height: 1.5em;
	margin: 10% auto -1%;
    padding: 1% 0;
	text-align: center;
	color: #fff;
}
.st_wrapper h4 {
    width: 100%;
	font-size: 23px;
	font-weight: bold;
	line-height: 1.5em;
	margin: 0 auto 2%;
    padding: 1% 0 2%;
	text-align: center;
	color: white;
    background-color: #0070c0;
}
.st_wrapper h5 {
    width: 75%;
	font-size: 23px;
	font-weight: bold;
	line-height: 1.5em;
	margin: 8% auto 0%;
    padding: 1% 0 2%;
	text-align: center;
	color: white;
    background-color: #0070c0;
}
.st_wrapper p{
	font-size: 12px;
	font-weight: 400;
	line-height: 1.7em;
    margin: 1% auto 3%;
	text-align: left;
	margin-left: 10%;
}

.sub_ttl{
	margin: 5% auto;
	width: 60%;
}
.ttl_big{
	width: 80%;	
	font-size: 25px;
	font-weight: bold;
	line-height: 1.5em;
	margin: 6% auto 2%;
	text-align: left;
	color: #0070c0;	
      background: linear-gradient(transparent 60%, #c7e6fc 30%);
      display: inline-block;	
}
.ttl_big2{
	width: 80%;	
	font-size: 25px;
	font-weight: bold;
	line-height: 1.5em;
	margin: 6% auto 2%;
	text-align: left;
	color: #ea6144;	
      background: linear-gradient(transparent 60%, #fae3df 30%);
      display: inline-block;	
}
.ttl {
	width: 80%;
    font-size: 20px;
    font-weight: 500;
	line-height: 1.6;
    text-align: left;
    margin: 0% auto 0%;
	color: black;
}
strong {
    font-size: 130%;
    font-weight: 600;
}

strong {
    font-size: 130%;
    font-weight: 600;
}

.Lft {
    text-align: left;
}

.ttl {
    font-size: 22px;
    font-weight: 500;
	line-height: 1.6;
    text-align: left;
    margin: 0% auto 2%;
}

.kakoi{
	position: relative;	
	margin: 5% auto 5%;
	width: 70%;
	padding: 5%;
}
.lead {
	width: 95%;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.9em;
    margin: 2% auto 0%;
	text-align: center;
	color: #000;
}

.cara1{
	position: absolute;
	width: 19%;
	top:-45%;
	left:9%;
}

.cara2{
	position: absolute;
	width: 19%;
	top:-45%;
	right:10%;
}
.caratops_1{
	position: absolute;
	width: 8%;
	top:5%;
	left:-2%;
}
.caratops_2{
	position: absolute;
	width: 8%;
	top:45%;
	left:8%;
}
.caratops_3{
	position: absolute;
	width: 8%;
	top:70%;
	left:1%;
}
.caratops_4{
	position: absolute;
	width: 8%;
	top:0%;
	right:0%;
}
.caratops_5{
	position: absolute;
	width: 8%;
	top:52%;
	right:5%;
}
.caratops_6{
	position: absolute;
	width: 8%;
	top:80%;
	right:1%;
}
.carairoiro{
	margin: 15% auto 18%;
	width: 100%;
}

.obi{
	width: 100;
	max-width: 800px;
	margin: 5% auto;
}

.bder {
    background:linear-gradient(transparent 80%, #f8bc61 80%);
}

.box_info {
    width: 43%;
    margin: 2% 1%;
    text-align: center;
}

.FL {
    float: left;
}

.FR {
    float: right;
}
.w_20p{
	margin: 0 auto;
}
.w_20p img{
	width: 105%;
	margin-left: -4%	
}
.w_30p{
	margin: 8% auto 5%;
}
.w_30p img{
	width: 100%;
	margin-left: -2%;
}
.triangle01{ 
    position: absolute;
    top: 40%;
    left: 49%;
    border-top: solid 25px transparent;
    border-right: solid 25px transparent;
    border-bottom: solid 25px transparent;
    border-left: solid 35px #697b91;
}


.txt {
	font-size: 15px;
	font-weight: 400;
	line-height: 1.9em;
    margin: 3% auto 2%;
	text-align: left;
}
.txt_aten {
	font-size: 12px;
	font-weight: 500;
	line-height: 1.9em;
    margin: 3% auto 2%;
	text-align: center;
}

.marker_pink {
    background:linear-gradient(transparent 60%, #f7e3da 60%);
}

.marker_wht {
    background:linear-gradient(transparent 60%, #fff 60%);
}


.w_80 {
    width: 90%;
    max-width: 700px;
    margin: 5% auto;
}

.w_80 img {
    width: 100%;
}

.box_round {
    width: 70%;
    max-width: 650px;
    padding: 3%;
    margin: 6% auto 3%;
    color: #000;
    font-size: 24px;
    font-weight: 600;
    text-align: center;
    line-height: 1.9em;
    background-color: #eee;
    border-radius: 10px;
}

.mp_logo{
	margin: 2% auto 2%;
	width: 20%;
}
.countdown_ato{
	width: 25%;	
	margin: 0 auto 0;
	margin-left: 6%;
	margin-top: -30%;
}


.design01 {
 width: 100%;
margin: 3% auto 0%;
 text-align: left;
 border-collapse: collapse;
 border-spacing: 0;
	font-size: 12px;
	font-weight: 500;
	background-color: white;
}
.design01 th {
 padding: 8px;
	font-size: 12px;
	text-align: center;
	color: white;
 background: #801115;
 border: solid 1px #af1f24;
}
.design01 td {
 padding: 12px;
 border: solid 1px #af1f24;
}


/*thumb*/
	
.thum_box {
	width: 80%;
	margin: 5% auto;
    padding: 0;
    display: flex; 
	flex-wrap: wrap;
	justify-content: space-between;
}

.thumb {
	width: 45%;
	margin: 0 auto 4%;
	text-align:center;
    position: relative;
}
.thumb img {
	border-radius: 180px;
}

.thum_box2 {
	width: 80%;
	margin: 5% auto 2%;
    padding: 0;
    display: flex; 
	flex-wrap: wrap;
	justify-content: space-between;
}

.thumb2 {
	width: 43%;
	margin: 0 auto 6%;
	text-align:center;
    position: relative;
	background-color: #ea5c3a;
	padding: 0% 0% 3%;
	border-radius: 30px;
}

.thumb img {
    width: 100%;	
}
.thumb2 img {
    width: 100%;
border-radius: 30px 30px 0 0;
}

.thum_box3 {
	position: relative;
	width: 80%;
	margin: 4% auto 2%;
    padding: 0;
    display: flex; 
	flex-wrap: wrap;
	justify-content: space-between;
}

.thumb3 {
	width: 60%;
	margin: 0 auto 0%;
	text-align:center;
    position: relative;
	background-color: #ea5c3a;
	padding: 0% 0% 3%;
	border-radius: 30px;
}

.thumb3 img {
    width: 100%;
border-radius: 30px 30px 0 0;
}
.thumb4 {
	width: 80%;
	margin: 0 auto 0%;
	text-align:center;
    position: relative;
	background-color: #ea5c3a;
	padding: 0% 0% 3%;
	border-radius: 30px;
}

.thumb4 img {
    width: 100%;
border-radius: 30px 30px 0 0;
}
.cara_pre1{
	position: absolute;
	width: 10%;
	top:0%;
	left:-8%;
}
.cara_pre2{
	position: absolute;
	width: 10%;
	top:40%;
	left:-4%;
}
.cara_pre3{
	position: absolute;
	width: 10%;
	top:80%;
	left:-2%;
}
.cara_pre4{
	position: absolute;
	width: 10%;
	top:-10%;
	right:-5%;
}
.cara_pre5{
	position: absolute;
	width: 10%;
	top:45%;
	right:-3%;
}
.cara_pre6{
	position: absolute;
	width: 10%;
	top:90%;
	right:-4%;
}
.cara_pre7{
	position: absolute;
	width: 10%;
	top:3%;
	left:25%;
}
.cara_pre8{
	position: absolute;
	width: 10%;
	top:39%;
	left:31%;
}
.cara_pre9{
	position: absolute;
	width: 10%;
	top:80%;
	left:41%;
}
.cara_pre10{
	position: absolute;
	width: 10%;
	top:180%;
	right:-2%;
}
.cara_size{
	position: absolute;
	width: 40%;
	top:-3%;
	right:-15%;
}

/* スライダ―のCSS */
.slider {
    width: 100%;
	margin: 0 auto;
    display: flex;
    gap: 0;
    overflow-x: auto;
}
.slide {
  width: 263px;
	height: auto;
		margin-right:2%;
}
        
.slide img {
    width: 263px;
}	
.t_P_lineup {
	text-align:center;
	font-size:17px;
	font-weight: 600;
	margin:10px auto;
	line-height: 1.3;
	color: black;
}
.t_P {
	text-align:center;
	font-size:13px;
	font-weight: 600;
	margin:10px 0 2px;
	line-height: 1.7;
	color: white;
}

.t_T {
	width: 70%;
	text-align:center;
	font-size:13px;
	margin:5% auto 0%;
	line-height: 1.6em;
	color: black;
	font-weight: bold;
font-family: "HelveticaNeue-Roman", "Helvetica 55 Roman", Helvetica, Arial, sans-serif;	
}
.sub_ttl{
	width: 50%;
	margin: 5% auto 2%;
}
.sub_ttl2{
	width: 60%;
	margin: 5% auto 2%;
}
.t_swipe {
	width: 60%;
	text-align:left;
	font-size:13px;
	font-weight: bold;	
}
.t_swipe2 {
	width: 90%;
	text-align:right;
	font-size:13px;
	font-weight: bold;	
	color: black;
}
.t_come {
	width: 90%;
	text-align:center;
	font-size:11px;
	margin:2% auto 0%;
	line-height: 1.6em;
}
.price{
	font-weight:normal;
	font-size:100%;
	text-align: center;
	margin: 0 auto;
	width: 100%;
	font-weight: 600;
	color: white;
}
.tax{
	font-size:63%;
}

.sp {
	display: none;
}

.pc {
	text-align: center;
}


.Sml {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.6em;
    margin: 1% auto;
    text-align: center;
}
.Sml2 {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.6em;
    margin: 1% auto;
    text-align: center;
}
	.movie{
		width: 50%;
		margin: 0 auto 0%;
	}
	video{
		width: 100%;
	}

        /* tableのスタイル */
        .schedule-table-container {
            width: 100%;
            font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
            margin: 20px auto;
            box-sizing: border-box;
        }

        .schedule-table {
            width: 100%;
            border-collapse: collapse;
            font-size: 12px;
            color: #000;
			background-color: white;
            table-layout: fixed; /* 列幅を固定レイアウトモードにする */
        }

        .schedule-table th,
        .schedule-table td {
            border: 1px solid #720606;
            padding: 12px 10px;
            text-align: center;
            vertical-align: middle;
            line-height: 1.5;
            word-wrap: break-word; /* 長い単語も折り返す */
            overflow-wrap: break-word;
        }

        .schedule-table th {
            background-color: #cc0000;
            color: #ffffff;
            font-weight: bold;
        }

        /* PC等、画面が広い時の列幅設定（合計100%になるように配分） */
        .schedule-table col:nth-child(1) { width: 15%; } /* 店舗 */
        .schedule-table col:nth-child(2) { width: 10%; } /* 販売日 */
        .schedule-table col:nth-child(3) { width: 15%; } /* 展開アイテム */
        .schedule-table col:nth-child(4) { width: 60%; } /* 展開店舗 */

        .schedule-table td:nth-child(4) {
            text-align: left; /* 展開店舗は見やすいように左寄せ */
        }

/* General button style (reset) */
.btn {
	width: 35%;
    display: block;
	border: none;
	font-family: inherit;
	font-size: 20px;
	color: inherit;
	background: none;
	cursor: pointer;
	padding: 20px;
	margin: 3% auto 0;
	font-weight: 100;
	outline: none;
	position: relative;
	text-align: center;
	
}


/* Button 1 */
.btn-1 {
	width: 480px;
	margin: 4% auto 6%;
	background-color: #333e48;
	font-size: 20px;
	line-height: 1.5em;
	font-weight: 600;
    border-radius: 10px;
	color: #fff;
}

a.btn-1 {
    color: #fff;
    text-decoration: none;
}

.btn-2 {
	width: 480px;
	margin: 4% auto;
	background-color: #000;
	font-size: 20px;
	line-height: 1.5em;
	font-weight: 600;
    border-radius: 10px;
}

a.btn-2 {
    color: #fff;
    text-decoration: none;
}

.btn-3 {
	width: 70%;
    max-width: 250px;
	margin: 5% auto 10%;
    padding: 15px 40px 15px 40px;
	font-size: 25px;
	line-height: 1.0em;
	font-weight: 600;
	color: #000;
	border-radius: 80px;
	background-color: #f6c154;
	border: solid 3px #000;
    text-align: center;
    text-decoration: none;
}

a.btn-3 {
	color: #000;
}

a.btn-3:before {
	content: "";
	position: absolute;
	top: 30%;
	right: 5px;
	width: 0;
	height: 0;
	margin-top: 0;
	border: 15px solid transparent;        /*top right bottom を透明化 */ 
	border-left: 15px solid #000;
    transition: 0.3s;
}
a.btn-3:hover:before {
	right: 10px;        /*マウスオーバーで三角をずらす */ 
}
.btn_code {
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-align: center;
	margin: 15px auto;
	padding:1.5% 0 1%;
	border:3px solid #888;
	background-color: #888;
	width:50%;
}

.btn_code a{
	text-decoration: none;
	display: block;
	color:#fff;
	border:3px solid #888;	
}

 .ig_box{
    width: 100%;
    text-align: center;
    display: inline-block;
    position: relative;
    margin: 4% auto 5%;
}
.ig_box .ttl{
    width: 25%;
    text-align: center;margin: 0 auto;
}
.ig_box ul{
	width: 40%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto;
    column-gap: 15%;
    margin: 0% auto 1%;
	padding-left:0;
}
.ig_box ul li{
    position: relative;
	list-style:none;
}
.ig_box ul li p{
	font-size: 11px;
}
.ig_box img{
	border-radius: 50px;
}

.clear {
    clear: both;
}

.scroll_photo{
	position: absolute;
	width: 70%;
	top:-18%;
	left:15%;
}

/* キャラアニメここから */
.animation{
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 1.5s;
  width: 128px;
}

.keyframe1{
  animation-name: anim_v;
}

.keyframe3{
  animation-name: anim_s;
  transform: rotate(10deg);
  animation-duration: 3s;
}
.keyframe4{
  animation-name: anim_s;
  transform: rotate(10deg);
  animation-duration: 2s;
}
.keyframe5{
  animation-name: anim_sc;
  transform: scale(0.85,0.85);
}
@keyframes anim_s {
  50% {
    transform: rotate(-20deg);
  }
  100% {
    transform: rotate(20deg);
  }
	
}
@keyframes anim_v {
  0% {
    transform: translate(0, 0px);
  }
  100% {
    transform: translate(0, 20px);
  }
}
@keyframes anim_sc {
  100% {
    transform: scale(1,1);
  }
}

        /* 飛行機アニメーションコンテナ */
        .animation-container {
            position: relative;
            width: 100%;
            height: 200px;
            overflow: hidden;
            display: flex;
            align-items: center;
            margin: -10% 0;
        }
        .animation-container img{
			width: 20%;
        }

        /* 流れる・ふわふわ動く要素のスタイリング */
        .floating-object {
            position: absolute;
            left: -150px; /* 開始位置（画面外） */
            width: clamp(80px, 15vw, 120px);		
            height: auto;
            
            /* 複合アニメーションの適用 */
            animation: 
                flow-right 8s linear infinite,
                floating 3s ease-in-out infinite alternate;
        }

        /* 左から右へ流れるアニメーション */
        @keyframes flow-right {
            0% {
                left: -150px;
            }
            100% {
                left: 100%;
            }
        }

        /* 上下にふわふわ揺れるアニメーション */
        @keyframes floating {
            0% {
                transform: translateY(0px) rotate(0deg);
            }
            50% {
                transform: translateY(-20px) rotate(5deg);
            }
            100% {
                transform: translateY(0px) rotate(-5deg);
            }
        }

        /* 複数の要素に遅延をかける例 */
        .obj-2 { animation-delay: 2s, 0.5s; top: 20%; }
        .obj-3 { animation-delay: 5s, 1s; top: 60%; }



@media only screen and (max-width:750px){
	

/* テロップここから */
.vertical-ticker {
position: fixed;
top: 0;
width: 20px;
height: 100vh;
overflow: hidden;
z-index: 999;
	text-align: center;
font-size: 16px;
letter-spacing: 0.15em;	
font-weight: bold;
color: white;
pointer-events: none; /* ←クリックやスクロール操作を邪魔しないように */
}

.left-ticker {
left: 0;
writing-mode: vertical-rl;
background: rgba(0, 0, 0, 0.9);
}

.right-ticker {
right: 0;
writing-mode: vertical-lr;
background: rgba(0, 0, 0, 0.9);
}

.scroll-text {
display: inline-block;
animation: scrollDown 13s linear infinite;
}
.scroll-text2 {
display: inline-block;
transform: translateY(-160%);
animation: scrollDown 13s linear infinite;
animation-delay: 3s; /* ← ページ読み込み後 2秒待ってから開始 */
}
	
@keyframes scrollDown {
0% {
transform: translateY(-100%);
}
100% {
transform: translateY(100%);
}
}

/* デモ用コンテンツ */
.content {
padding: 50px;
max-width: 800px;
margin: 0 auto;
}
/* テロップここまで */	
	.st_wrapper {
		width: 100%;
	}
	
	.st_wrapper h1 {
	   margin: 0% auto 3%;		
		font-size: 14px;
		line-height: 1.7em;
	}
	
	.st_wrapper h2 {
		font-size: 20px;
		line-height: 1.6;
        margin: 0 auto 3%;
	}
    
    .st_wrapper h3 {
		width: 96%;
        font-size: 16px;
        margin: 16% auto 2%;
    }
    .st_wrapper h4 {
		width: 30%;
        font-size: 16px;
        margin: 0% auto 0%;
		margin-left: 5%;
    }    
    .st_wrapper p {
		width: 92%;
        font-size: 11px;
		line-height: 1.6;
        margin: 1.5% auto;
		margin-left: 5%;
    }

    
    .wrap_content {
        width: 90%;
        margin: 12% auto 8%;
    }
.w_20p{
	margin: 0 auto;
}
.w_20p img{
	width: 105%;
	margin-left: -3%;
}	
.w_30p{
	margin: 8% auto 0;
}
.w_30p img{
	width: 105%;
	margin-left: -3%;
}	
.bk01 {
	width: 88%;
    margin: 0% auto;
}	
.bk02 {
	width: 90%;
	margin: 3% auto 0;
    padding: 1% 1% 8%;
}	
	.swp2{
 width:95%;
	margin:6% auto 5%;
}		
	.Main {
		width: 85%;
		margin: 8% auto 10%;
	}
 .k_logo {
    width: 100%;
    margin: 5% auto 0%;
}   
	.lead {
		width: 98%;
    margin: 2% auto 0%;		
		font-size: 12px;
		line-height: 1.7em;	
	}
 .kakoi{
	margin: 3% auto 0%;
	width: 95%;
}   
.cara1{
	position: absolute;
	width: 16%;
	top:-31%;
	left:13%;
}
.cara2{
	position: absolute;
	width: 16%;
	top:-31%;
	right:14%;
}
.caratops_1{
	position: absolute;
	width: 9%;
	top:10%;
	left:1%;
}
.caratops_2{
	position: absolute;
	width: 9%;
	top:70%;
	left:8%;
}
.caratops_3{
	position: absolute;
	width: 9%;
	top:80%;
	left:5%;
}
.caratops_4{
	position: absolute;
	width: 9%;
	top:8%;
	right:2%;
}
.caratops_5{
	position: absolute;
	width: 9%;
	top:61%;
	right:8%;
}
.caratops_6{
	position: absolute;
	width: 9%;
	top:80%;
	right:10%;
}	
.carairoiro{
	margin: 19% auto 19%;
	width: 100%;
}	
.sub_ttl{
	width: 75%;
	margin: 8% auto 5%;
}
.sub_ttl2{
	width: 78%;
	margin: 8% auto 2%;
}	
    .ttl {
		width: 90%;
        font-size: 17px;
		line-height: 1.5;
		margin-bottom: 0%;
    }
    
    .txt {
        font-size: 12px;
    }
	.ttl_big{
	width: 90%;	
	font-size: 21px;
	font-weight: bold;
	line-height: 1.5em;
	margin: 5% auto 3%;
	text-align: left;
	color: #0070c0;	
      background: linear-gradient(transparent 60%, #c7e6fc 30%);
      display: inline-block;	
}
	.ttl_big2{
	width: 90%;	
	font-size: 21px;
	font-weight: bold;
	line-height: 1.5em;
	margin: 5% auto 3%;
	text-align: left;
     display: inline-block;	
}	
.design01 {
 width: 100%;
margin: 5% auto 3%;
 text-align: center;
 border-collapse: collapse;
 border-spacing: 0;
	font-size: 10px;	
}	
.design01 th {
 padding: 8px;
	font-size: 10px;
	text-align: center;
	color: white;
}
.design01 td {
 padding: 4px;
	 text-align: left;
}		
	
.countdown_ato{
	width: 35%;	
	margin: 0 auto 0;
}	
	
    .ttl {
        font-size: 17px;
		line-height: 1.5;
    margin: 0% auto 2%;
    }
    
    .txt {
        font-size: 12px;
    }
	
.k_main{
	width:98%;
	margin: 0 auto;
	position:relative;
}	

    .box_round {
        width: 90%;
        font-size: 12px;
        margin: 10% auto;
        border-radius: 10px;
    }
.t_P_lineup {
	font-size:12px;
	font-weight: 600;
	margin:5px auto 10px;
	line-height: 1.2;
}	
.t_P {
	text-align:center;
	font-size:11.5px;
	font-weight: 600;
	margin:7px 0 2px;
	line-height: 1.7;
}	
    .t_T {
	width: 90%;
	text-align:center;
	font-size:11px;
	margin:5% auto 2%;
	line-height: 1.6em;
}
.price{
	font-size: 12px;
	margin-bottom: 5%;
}	
    .w_80 {
        margin: 4% auto;
    }
    
    .box_info p {
        text-align: left;
    }
    
	
    .box_info p br {
        display: none;
    }
    
    .box_info .Sml {
        text-align: left;
    }
	
.txt_aten {
	font-size: 11px;
	font-weight: 500;
	line-height: 1.7em;
    margin: 5% auto 2%;
	text-align: center;
}	
	
	
 .mp_logo{
	margin: 0% auto 0%;
	width: 40%;
}   
    .triangle01 {
        top: 30%;
        left: 48%;
        border-top: solid 15px transparent;
        border-right: solid 15px transparent;
        border-bottom: solid 15px transparent;
        border-left: solid 22px #697b91;
    }
	
	.thum_box {
		width: 98%;
		margin: 2% auto 8%;
		flex-wrap: wrap;
		justify-content: center;
		gap: 3%;
	}

	.thumb {
		width: 45%;
		margin: 2% auto;		
	}	
	.thum_box2 {
		width: 98%;
		margin: 5% auto 8%;
		flex-wrap: wrap;
		justify-content: center;
		gap: 3%;
	}

	.thumb2 {
		width: 47%;
		margin: 2% auto 5%;		
	}
	
	.thumb3 {
		width: 90%;
		margin: 2% auto 0%;		
	}
	.thumb4 {
		width: 95%;
		margin: 2% auto 0%;		
	}	
.cara_pre1{
	position: absolute;
	width: 13%;
	top:0%;
	left:-11%;
}
.cara_pre2{
	position: absolute;
	width: 13%;
	top:40%;
	left:-8%;
}
.cara_pre3{
	position: absolute;
	width: 13%;
	top:80%;
	left:-10%;
}
.cara_pre4{
	position: absolute;
	width: 13%;
	top:-10%;
	right:-8%;
}
.cara_pre5{
	position: absolute;
	width: 13%;
	top:45%;
	right:-8%;
}
.cara_pre6{
	position: absolute;
	width: 13%;
	top:100%;
	right:-8%;
}		
.cara_pre7{
	position: absolute;
	width: 14%;
	top:3%;
	left:29%;
}
.cara_pre8{
	position: absolute;
	width: 14%;
	top:36%;
	left:38%;
}
.cara_pre9{
	position: absolute;
	width: 14%;
	top:79%;
	left:54%;
}
.cara_pre10{
	position: absolute;
	width: 13%;
	top:180%;
	right:-2%;
}
.cara_size{
	position: absolute;
	width: 45%;
	top:-5%;
	right:-11%;
}
	
/* スライダ―のCSS */
.slider {
    width: 100%;
	margin: 0 auto;
    display: flex;
    gap: 0;
    overflow-x: auto;
}
.slide {
  width: 170px;
	height: auto;
		margin-right:2%;
}
        
.slide img {
    width: 162px;
}	
	
.t_swipe {
	width: 60%;
	text-align:left;
	font-size:12px;
	font-weight: bold;	
	margin-bottom: -1.5%;	
	margin-left: -7%;
}
.t_swipe2 {
	width: 90%;
	text-align:right;
	font-size:12px;
	font-weight: bold;
	margin-bottom: -1.5%;
}	

	.pc {
		display: none;
	}
	
	.sp {
		display: block;
	}
	
    .Sml {
        font-size: 13px;
        margin: 2% auto;
    }
    .Sml2 {
        font-size: 9px;
        margin: 2% auto;
    }	
	
	.movie{
		width: 96%;
		margin: 0 auto 0%;
	}	
	
			  /* tableのスタイル */
            .schedule-table th, 
            .schedule-table td {
                font-size: 10px; /* 文字を小さくする */
                padding: 4px 4px; /* 余白を詰める */
            }

            /* スマホ時の列幅再設定 */
            .schedule-table col:nth-child(1) { width: 23%; }
            .schedule-table col:nth-child(2) { width: 17%; }
            .schedule-table col:nth-child(3) { width: 20%; }
            .schedule-table col:nth-child(4) { width: 40%; }

            /* 展開店舗の文字が多いため、少しでも読みやすく調整 */
            .schedule-table td:nth-child(4) {
                font-size: 9px;
                line-height: 1.4;
            }	
    
	/* Button 1 */
	
	.btn{
		width: 80%;
	}
	.btn-1 {
		width: 80%;
		padding: 3%;
        margin: 6% auto 10%;
		font-size: 14px;
        border-radius: 10px;
		position: relative;
	}
	
	.btn-2 {
		width: 80%;
		margin: 8% auto;
		padding: 3%;
		font-size: 12px;
		position: relative;
	}	
	
	.btn-3 {
        width: 63%;
		font-size: 18px;
        margin: 5% auto 14%;
        padding: 15px 20px 15px 20px;
	}
	
    a.btn-3:before {
	top: 37%;		
	right: 5px;
	border: 8px solid transparent;        /*top right bottom を透明化 */ 
	border-left: 8px solid #000;
    }
 .btn_code {
	font-size: 12px;
	text-align: center;
	margin: 10px auto;
	padding:3% 0;
	width:70%;
}   
	
 .ig_box{
    width: 100%;
    text-align: center;
    display: inline-block;
    position: relative;
    margin: 7% auto 8%;
}
.ig_box ul{
	width: 60%;
}	
	
.scroll-infinity__item {
  width: calc(100vw / 2);
}
.scroll-infinity__item2 {
  width: calc(100vw / 1);
}	
  /*ループここから */ 	
.scroll_photo{
	position: absolute;
	width: 80%;
	top:-19%;
	left:9.5%;
}	
.scroll-main{
	position: relative;
	margin: 10% auto 15%;
}	
  /*ループここまで */ 	
	
	
        /* 飛行機アニメーションコンテナ */
        .animation-container {
            position: relative;
            width: 100%;
            height: 200px;
            overflow: hidden;
            display: flex;
            align-items: center;
            margin: -20% 0 -25%;
        }
        .animation-container img{
			width: 30%;
        }	
           .animation-container {
                height: 200px;
            }	
}






