@font-face {
	font-family:'Gruppo Regular';
	src: url("../font/Gruppo-Regular.woff2")  format('woff2') ,url("../font/Gruppo-Regular.woff")  format('woff');
	font-display: swap;
	font-style: normal;
}

@charset "utf-8";
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td { margin: 0; padding: 0;}
body { overflow-x: hidden; color:#444444; font-size:16px;line-height: 160%;font-family:'Gruppo Regular',"Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;font-feature-settings:"palt";}
ul { list-style: none; }
fieldset,img { border: 0; vertical-align: top; overflow: hidden; }
a { color:inherit; text-decoration: underline; text-decoration-thickness: 1px;}
a:hover { color: #ed0047; transition:all 0.4s;}

.clearfix { *zoom:1;}
.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
.clear { clear: both; display: block; height: 0; overflow: hidden; }
img{ max-width:100%;}

.wf_GR{font-family: 'Gruppo Regular', serif;}
.font_feature{font-feature-settings:"palt";-moz-font-feature-settings:"palt";-webkit-font-feature-settings:"palt";}

.cl_yellow{ color: #fff000; }

.sp_none{ display: block; }
.pc_none{ display: none; }

.an_scl{ opacity: 0;}

.f14{ font-size:0.14rem; line-height:200%;}
.f16{ font-size:0.16rem; line-height:200%;}
.f18{ font-size:0.18rem; line-height:160%;}
.f20{ font-size:0.2rem;  line-height:160%;}
.f24{ font-size:0.24rem; line-height:150%;}

.w400{ font-weight: 400;}
.w800{ font-weight: 800;}

.large{ font-size: 1.35em;}

.align_left{text-align: left;}
.align_center{text-align: center;}
.align_right{text-align: right;}

.text-shadow{ text-shadow: 0 0px 0.7em #000, 0 0px 0.7em #000, 0 0px 0.8em #000, 0 0px 0.8em #000, 0 0px 0.8em #000;}
.text-shadow02{ text-shadow: 0 0px 0.3em #000, 0 0px 0.3em #000, 0 0px 0.3em #000, 0 0px 0.3em #000, 0 0px 0.3em #000;}

:root{--htmlfz:100px;--vh:100vh;}
html{font-size:var(--htmlfz);}
body{font-size:0.2rem;line-height:200%;position:relative;height:calc(var(--vh,1vh) * 100);background:#000;color:#fff;}
.wrap{position:relative;z-index:10;height:calc(var(--vh,1vh) * 100);}

/* .container{height:calc(var(--vh,1vh) * 100);overflow:auto;width:100%;} */

.container {
    height: calc(var(--vh, 1vh) * 100);
    overflow: auto;
    width: 100%;
    scroll-snap-type: y mandatory;
}
.innermob {
    scroll-snap-align: start;
}
.mobsin01,.mobsin03,.mobsin05{height:calc(var(--vh,1vh) * 100);}
.mobsin02,.mobsin04{height:auto;}
.conten_inners{ display: block; width: 100%; height: 100%;position: relative;overflow:hidden;}
.mobsin01{ background: url("../images/bg01_pc.jpg?01") center top no-repeat; background-size: cover; position: relative; display: flex; justify-content: center; align-items: center; }

.ban_lgpg{ position: fixed; top: 0.2rem; right: 0.2rem; z-index: 100; color: #ee0047; }
.pagelan-control{background: #fff;font-size: 1.2em;line-height: 100%;width:6.5em;height: 1.8em;border-radius: 0.4em;display: flex;align-items: center;position: relative; }
.banincontrol{width: 3.2em;height: 1.5em;display: flex;justify-content: center;align-items: center;cursor: pointer;color: var(--greyDark);transition: all 0.5s ease;}
.banincontrol a{ text-decoration: none;}

.pagelan-control input {display: none;}
.pagelan-control_color {position: absolute;height: 1.5em;width: 3em;margin-left: 0.2em;border-radius: 0.3em;box-shadow: inset 0.2em 0.2em 0.4em #c8d0e7, inset -0.2em -0.2em 0.4em #FFFFFF;pointer-events: none;transition: transform 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}
.pagelan-control > input:checked + label {transition: all 0.5s ease;}
#tab-1:checked ~ .pagelan-control_color,#tab-1:hover ~ .pagelan-control_color{transform: translateX(0);}
#tab-2:checked ~ .pagelan-control_color,#tab-2:hover ~ .pagelan-control_color{transform: translateX(3em);}
#tab-1:not(:checked):hover ~ .pagelan-control_color {transform: translateX(0);}
#tab-2:not(:checked):hover ~ .pagelan-control_color {transform: translateX(3em);}

.snsmob{ position: fixed; top: 0.2rem; left: 0.2rem; background: #fff; padding: 0.3em; display: flex; z-index: 100; }
.snsmob a{display: block; height: 1em; padding: 0.3em 0.5em;width: 1.5em; text-align: center; position: relative;}
.snsmob a img{max-width: 100%; max-height: 100%;}
.snssel_color{position: absolute;top: 0.3em;left: 0.3em; height:1.6em; width:2.5em; pointer-events: none;box-shadow: inset 0.2em 0.2em 0.4em #c8d0e7, inset -0.2em -0.2em 0.4em #FFFFFF; border-radius: 0.2em; opacity: 0;transition: opacity 0.2s ease,left 0.2s 0.2s ease; z-index:0;}
.snsmob a:hover ~ .snssel_color{opacity: 1;left:calc(2.5em * var(--ln) +  0.3em);transition: opacity 0.3s 0.3s ease,left 0.3s ease;}
.logotn{ width: 1200px; max-width: 70%; }

.downico{position:absolute;bottom:0.3rem;left:0;width:100%;text-align:center;cursor:pointer;}
.downico img{width:0.5rem;position:relative;animation:downico 1s linear infinite;pointer-events:none;}
.upico{display:inline-block;text-align:center;width:100%;}
.upico img{width:0.5rem;position:relative;animation:upico 1s linear infinite;pointer-events:none;}


@keyframes downico{
	0%{top:-0.2rem; opacity: 0;}
	10%{top:-0.15rem; opacity: 1;}
	60%{top:0.1rem; opacity: 1;}
	80%{top:0.2rem; opacity: 0;}
	100%{top:-0.2rem; opacity: 0;}
}
@keyframes upico{
	0%{top:0.2rem; opacity: 0;}
	10%{top:0.15rem; opacity: 1;}
	60%{top:-0.1rem; opacity: 1;}
	80%{top:-0.2rem; opacity: 0;}
	100%{top:0.2rem; opacity: 0;}
}

/* .mobsin02{background: url("../images/bg02_pc.jpg") center center no-repeat; background-size: cover; position: relative;color:#fff;display: flex; 
justify-content: center; align-items: center;} */

.mobsin02{position:relative;color:#fff;display:flex;justify-content:center;align-items:center;overflow:hidden;background-size:cover;background-position:center;}
.mobsin02 video{position:absolute;top:0;left:0;min-width:100%;min-height:100%;width:auto;height:auto;z-index:-2;object-fit:cover;}
.mobsin02::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.5);background-image:radial-gradient(circle,rgba(0,0,0,0.5) 25%,transparent 30%);background-size:5px 5px;z-index:-1;}
.con_text{position:relative;z-index:1;}


.con_text{position: relative; text-align: center;padding: 1rem 1rem; width: 100%; box-sizing: border-box;  overflow-y: auto; }
.tits_02{font-size: 1.8em; line-height: 140%;}
.mobsin02 .downico{ width: 100%; padding: 0.2rem 0 0 0; }
.mobsin03{ }
.per_bg{position:absolute;top:5vh;left:50%;transform:translateX(-75%);max-width:1500px;min-width:1000px;width:100%;opacity:0.3;}
.per_bg picture,.per_bg img{width:100%;height:auto;}
.per_img01{position:absolute;bottom:0;right:10%;max-height:90vh;width:auto;display:flex;justify-content:center;align-items:flex-end;}
.per_img01 img{height:90vh;width:auto;max-width:100%;object-fit:contain;}
.per_con{position: absolute; right: 0; bottom: 20%; background: rgba(237,0,71, 0.4); padding: 0.2rem; width: 6rem; max-width: 80%;}
.per_name{font-size: 2em; line-height: 140%; font-weight: bold;}
.per_sname{display: inline-block; font-size: 0.5em;font-weight: 400;}
.mobsin04{ }
.mobsin04 .conten_inners{text-align: center;  overflow-y: auto;}
.pvlistmob{ width: 90%; max-width: 100%; box-sizing: border-box; display: flex; flex-wrap: wrap; padding: 0.3rem 0;margin: 0 auto;justify-content:center;}
/* .pvins{ width: 46%;margin:2% ; line-height: 0;} */

.pvins{display:flex;flex-direction:column;align-items:center;gap:10px;margin:2%; }
.pvins .images-wrapper{display:flex;justify-content:space-between;gap:.5em;align-items:flex-end;width:100%;}
.pvins img{max-width:100%;height:auto;}

.pvtit{ font-size: 2em; line-height: 130%;padding-bottom: 0.5em; text-align: center; font-weight: 700; }
.mobsin04 .downico{ position: static; width: 100%; padding: 0.2rem 0 0 0; }
.mobsin05{ box-sizing: border-box; padding-bottom: 4em; position: relative; }
.mobsin05 .conten_inners{display:flex;justify-content:center;align-items:center;min-height:calc(var(--vh,1vh) * 100);transform:translateY(-5%);}
.onairlist{width:800px;max-width:96%;box-sizing:border-box;padding:0.3rem 0;margin:0 auto;line-height: 1.2em;}
.onairlist li{padding:.8em;display:flex;justify-content:center;}
.air_b01{width:48%;text-align:right;}
.air_b02{width:52%;box-sizing:border-box;padding-left:2em;position:relative;text-align:left;}
.air_b02::before{content:"";position:absolute;top:0.6em;left:0.3em;width:1.5em;height:2px;background:#ed0047;}
.footms{ position: absolute; bottom: 0.1rem; width: 100%; text-align: center;}

@media screen and (min-width:768px) {
	.conten_inners::-webkit-scrollbar,.con_text::-webkit-scrollbar {
	  width:0.3em; 
	}
	.conten_inners::-webkit-scrollbar-track,.con_text::-webkit-scrollbar-track {
	  background: rgba(0, 0, 0, 0.2); 
	}
	.conten_inners::-webkit-scrollbar-thumb,.con_text::-webkit-scrollbar-thumb {
	  background: rgba(0, 0, 0, 0.4); 
	  border-radius: 6px;
	}
	.conten_inners::-webkit-scrollbar-thumb:hover,.con_text::-webkit-scrollbar-thumb:hover {
	  background-color: #555; 
	}
}

@media screen and (max-width:768px) {
	:root{
		--htmlfz: 13.3vw;
	}

	html{ width: 100%; overflow-x: hidden; }
	body{ overflow-x: hidden; font-size: 0.24rem;line-height: 160%;}

	.sp_none{ display: none; }
	.pc_none{ display: block; }

	.snssel_color{display: none;}
	.mobsin01{background-image: url("../images/bg01_sp.jpg?01");}
	/* .mobsin02{background-image: url("../images/bg02_sp.jpg");} */

	.mobsin03{ }
	

	.per_bg {
		transform: translateX(-62.5%); 
	}

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

	.mobsin01,.mobsin02,.mobsin03,.mobsin05{height:calc(var(--vh,1vh) * 100);}
	.mobsin04{height:auto;}

	.per_img01{bottom:0;right:0;left:0;max-height:90vh;width:100%;justify-content:center;align-items:flex-end;}
	.per_img01 img{height:85vh;width:auto;max-width:100%;object-fit:contain;}

	}

	.per_con{ right: 10%; padding: 0.2rem;box-sizing: border-box; width: 80%; max-width: 80%;}
	.per_name{font-size: 2em; line-height: 140%; font-weight: bold;}
	.per_sname{display: inline-block; font-size: 0.5em;font-weight: 400;}

	.mobsin04{ }
	.pvlistmob{  max-width: 100%; box-sizing: border-box; display: flex; flex-wrap: wrap; padding: 1rem 0 0.3rem 0;margin: 0 auto;}
	.pvins{ width:90%;/*margin:2% 5%;*/line-height: 0;}
	.pvtit{ font-size: 1.7em; line-height: 130%;padding-bottom: 0.2em; text-align: left; }

	.air_b02::before{ top: 0.66em;}

}



