html { 
	font-size: 62.5%; /* 10px */
	user-select: none;
}
body, body *, body *::before, body *::after {
	outline:none;
}
body {
	background:#FFF;
	color:#333;
	font-family: 'Open Sans', 'Noto Sans JP', "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	position: relative;
}
#container *, #container *::after, #container *::before {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
a {
	-webkit-transition: all .4s cubic-bezier(.5, 0, .5, 1);
	-moz-transition: all .4s cubic-bezier(.5, 0, .5, 1);
	-ms-transition: all .4s cubic-bezier(.5, 0, .5, 1);
	-o-transition: all .4s cubic-bezier(.5, 0, .5, 1);
	transition: all .4s cubic-bezier(.5, 0, .5, 1);
}
img {
	display: block;
	width:100%;
	height:auto;
}


/* =responsive
-------------------------------------------------------------- */
.tabletsp {
	display:none !important;
}
.tablet {
	display:none !important;
}
.sp {
	display:none !important;
}

/* =animation
-------------------------------------------------------------- */
@-webkit-keyframes fadeshow {
	0% {
	    opacity: 0;
	}
	100% {
	    opacity:1;
	}
}
@keyframes fadeshow {
	0% {
	    opacity: 0;
	}
	100% {
	    opacity:1;
	}
}

/* =padding
-------------------------------------------------------------- */
.padd30 {
	padding-top:30px;
}
.padd50 {
	padding-top:50px;
}
.padd80 {
	padding-top:80px;
}
.padd100 {
	padding-top:100px;
}
.padd150 {
	padding-top:150px;
}
.paddb30 {
	padding-bottom:30px;
}
.paddb50 {
	padding-bottom:50px;
}
.paddb80 {
	padding-bottom:80px;
}
.paddb100 {
	padding-bottom:100px;
}
.paddb150 {
	padding-bottom:150px;
}

/* =structure
-------------------------------------------------------------- */
#container {
	overflow: hidden;
	width:100%;
	position: relative;
}
.contents {
	width:100%;
	max-width:1100px;
	margin:0 auto;
}
.flex {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: space-between;
	-webkit-align-items: ﬂex-start;
	-moz-align-items: ﬂex-start;
	-ms-align-items: ﬂex-start;
	align-items: ﬂex-start;
}

/* =ヘッダー
-------------------------------------------------------------- */
header {
	position: absolute;
	z-index: 500;
	top:0;
	left:0;
	width:100%;
}
header h1 {
	display: block;
	width:130px;
	text-align: center;
	margin:0 auto;
	padding:15px 0;
}
header .menubtn {
	position: fixed;
	z-index:500;
	top:25px;
	left:15px;
	width:90px;
	height:40px;
	cursor: pointer;
}
header .menubtn .line1 {
	position: absolute;
	top:50%;
	left:50%;
	width:46px;
	height:2px;
	margin:-6px 0 0 -23px;
	background:#000;
	-webkit-transition: all .25s ease;
	   -moz-transition: all .25s ease;
	    -ms-transition: all .25s ease;
	     -o-transition: all .25s ease;
	        transition: all .25s ease;
}
header .menubtn .line2 {
	position: absolute;
	top:50%;
	left:50%;
	width:46px;
	height:2px;
	margin:4px 0 0 -23px;
	background:#000;
	-webkit-transition: all .25s ease;
	   -moz-transition: all .25s ease;
	    -ms-transition: all .25s ease;
	     -o-transition: all .25s ease;
	        transition: all .25s ease;
}
header .menubtn.active .line1 {
	display: block;
	background:#FFF;
	margin:1px 0 0 -23px;
	-webkit-transform: rotate(20deg);
	   -moz-transform: rotate(20deg);
	    -ms-transform: rotate(20deg);
	     -o-transform: rotate(20deg);
	        transform: rotate(20deg);
}
header .menubtn.active .line2 {
	display: block;
	background:#FFF;
	margin:1px 0 0 -23px;
	-webkit-transform: rotate(-20deg);
	   -moz-transform: rotate(-20deg);
	    -ms-transform: rotate(-20deg);
	     -o-transform: rotate(-20deg);
	        transform: rotate(-20deg);
}

header .headbtn .h_tiktok {
	display: block;
	position: absolute;
	top:25px;
	left:115px;
	font-size:32px;
	color:#000;
}
header .headbtn .h_insta {
	display: block;
	position: absolute;
	top:25px;
	left:170px;
	font-size:32px;
	color:#000;
}
header .headbtn .h_ec {
	display:block;
	position: absolute;
	top:25px;
	right:35px;
	width:260px;
	font-size:17px;
	padding:15px 0;
	color:#FFF;
	background:#FF8500;
	border:1px solid #FFF;
	border-radius: 6px;
	text-align: center;
}
.ico_ec {
	position: absolute;
	top:10px;
	left:14px;
	display:block;
	width:32px;
	height:32px;
	background:url(../img/ec.svg) no-repeat center center;
	background-size:32px auto;
}
header .headbtn .h_ec:hover {
	background:#FF5500;
}

.glitchbtn {
	position: relative;
}
.h_tiktok.glitchbtn:before,
.h_tiktok.glitchbtn:after {
	content: "\e07b";
	font-family: "Font Awesome 5 Brands";
	font-weight: 400;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	height: 100%;
	width: 100%;
	opacity: .8;
	font-size:32px;
	margin:-17px 0 0 0;
}
.h_twitter.glitchbtn:before,
.h_twitter.glitchbtn:after {
	content: "\f099";
	font-family: "Font Awesome 5 Brands";
	font-weight: 400;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	height: 100%;
	width: 100%;
	opacity: .8;
	font-size:32px;
	margin:-17px 0 0 0;
}
.h_line.glitchbtn:before,
.h_line.glitchbtn:after {
	content: "\f3c0";
	font-family: "Font Awesome 5 Brands";
	font-weight: 400;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	height: 100%;
	width: 100%;
	opacity: .8;
	font-size:32px;
	margin:-17px 0 0 0;
}
.h_insta.glitchbtn:before,
.h_insta.glitchbtn:after {
	content: "\f16d";
	font-family: "Font Awesome 5 Brands";
	font-weight: 400;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	height: 100%;
	width: 100%;
	opacity: .8;
	font-size:32px;
	margin:-17px 0 0 0;
}
.glitchbtn:hover:before {
	animation: glitchbtn .3s cubic-bezier(.25, .46, .45, .94) both 5
}
.glitchbtn:hover:after {
	animation: glitchbtn .3s cubic-bezier(.25, .46, .45, .94) reverse both 5
}
.glitchbtn:after {
	color: #f0f;
	z-index: -2;
}
.glitchbtn:before {
	color: #0ff;
	z-index: -1;
}
@keyframes glitchbtn {
	0% {
		transform: translate(0)
	}
	20% {
		transform: translate(-2px, 2px)
	}
	40% {
		transform: translate(-2px, -2px)
	}
	60% {
		transform: translate(2px, 2px)
	}
	80% {
		transform: translate(2px, -2px)
	}
	to {
		transform: translate(0)
	}
}

#mainmenu {
	position: fixed;
	z-index:200;
	top:0;
	left:0;
	opacity:0;
	visibility:hidden;
	width:100%;
	height:100vh;
	background:rgba(0,0,0,0.9);
	-webkit-transition: all .25s ease;
	   -moz-transition: all .25s ease;
	    -ms-transition: all .25s ease;
	     -o-transition: all .25s ease;
	        transition: all .25s ease;
}
#mainmenu.active {
	opacity:1;
	visibility:visible;
}
#mainmenu nav {
	position: absolute;
	top:50%;
	left:50%;
	width:90%;
	-webkit-transform: translate(-50%,-50%);
	   -moz-transform: translate(-50%,-50%);
	    -ms-transform: translate(-50%,-50%);
	     -o-transform: translate(-50%,-50%);
	        transform: translate(-50%,-50%);
}
.menulist .flex {
	-webkit-justify-content:center;
	-moz-justify-content:center;
	-ms-justify-content:center;
	justify-content:center;
}
.menulist .list1,
.menulist .list2,
.menulist .list3,
.menulist .list4 {
	padding:0 15px;
}
.menulist .thumb {
	height:24vw;
	perspective: 1000px;
}
.menulist .thumb img {
	width:auto;
	height:24vw;
	margin:0 auto;
	-webkit-transition: all .4s ease;
	   -moz-transition: all .4s ease;
	    -ms-transition: all .4s ease;
	     -o-transition: all .4s ease;
	        transition: all .4s ease;
}
.menulist .list1 .thumb {
	position: relative;
}
.menu_ti {
	font-size:2rem;
	color:#FFF;
	text-align: center;
	padding:18px 0;
}
.menu_txt {
	font-size:1.3rem;
	color:#FFF;
	text-align: center;
}
.menulist .list1:hover .thumb img,
.menulist .list2:hover .thumb img,
.menulist .list3:hover .thumb img,
.menulist .list4:hover .thumb img {
	-webkit-transform: rotateX(-6deg) rotateY(-10deg);
	   -moz-transform: rotateX(-6deg) rotateY(-10deg);
	    -ms-transform: rotateX(-6deg) rotateY(-10deg);
	     -o-transform: rotateX(-6deg) rotateY(-10deg);
	        transform: rotateX(-6deg) rotateY(-10deg);
}
.menusns {
	width:100%;
	position: relative;
	padding:60px 0 0 0;
}
.menusns.flex {
	-webkit-justify-content:center;
	-moz-justify-content:center;
	-ms-justify-content:center;
	justify-content:center;
}
.menusns li {
	padding:0 15px;
}
.menusns a {
	color:#FFF;
	position: relative;
	font-size:32px;
}


/* =トップ
-------------------------------------------------------------- */
.kv {
	width:100%;
	background:#FFC900;
	position: relative;
}
.kv::after {
	content:'';
	position: absolute;
	top:420px;
	left:50%;
	width:200%;
	height:800px;
	background:#79B9C4;
	-webkit-transform: translateX(-50%) rotate(-8deg);
	   -moz-transform: translateX(-50%) rotate(-8deg);
	    -ms-transform: translateX(-50%) rotate(-8deg);
	     -o-transform: translateX(-50%) rotate(-8deg);
	        transform: translateX(-50%) rotate(-8deg);
}
.kv .contents {
	position: relative;
	z-index:5;
}
.kv .left {
	width:100%;
	text-align: center;
	padding:0 0 50px 0;
}
.kv .tossy {
	width:55%;
	position: relative;
	margin:0 auto;
}
.kv h2 {
	display: block;
	font-size:9.2rem;
	line-height:1.4em;
	font-weight:900;
	padding:120px 0 0 0;
}
.kv .desc {
	font-size:2.8rem;
	line-height:1.5em;
	font-weight:600;
	padding:30px 0 0 0;
}
.kv .monitor {
	width:310px;
	margin:50px 0 0 0;
}
.kv .label1 {
	width:286px;
}
.kv .label2 {
	width:286px;
}
.kv .offer {
	width:60%;
	padding:40px 0 0 0;
	text-align: center;
	line-height:1;
	margin:0 auto;
}
.kv .offer .offer1 {
	font-size:9rem;
	font-weight:900;
	color:#FFF;
}
.kv .offer .offer2 {
	font-size:5.2rem;
	font-weight:700;
	color:#FFF;
	padding:20px 0;
}
.kv .offer .offer3 {
	font-size:13rem;
	font-weight:900;
	color:#FFF;
}
.kv .offer .offer3 span {
	font-size:4.8rem;
}
.kv .offer .offer4 {
	font-size:3rem;
	font-weight:500;
	color:#FFC900;
	padding:16px 0;
}
.btn {
	display: block;
	width:48%;
	background:#FFC900;
	color:#000;
	text-align: center;
	padding:18px 0;
	font-size:2.6rem;
	font-weight:bold;
	margin:40px auto 0;
	border-radius:20px;
	position: relative;
}
.btn span {
	display: block;
	font-size:1.4rem;
	font-weight:normal;
	padding:12px 0 0 0;
}
.btn:hover {
	background:#FF8500;
}


/* nayami */
.nayami {
	padding:200px 0 0 0;
}
.hash {
	font-size:4.6rem;
	font-weight:900;
	text-align: center;
	display: block;
	padding:60px 0;
}
.nayami h3 {
	font-size:3.8rem;
	font-weight:700;
	color:#79B9C4;
	text-align: center;
}
.nayami .flex {
	width:100%;
	max-width:660px;
	margin:0 auto;
	padding:60px 0 0;
}
.nayami ul {
	padding:40px 0;
}
.nayami li {
	font-size:2.2rem;
	padding:10px 0;
	list-style:square;
}
.nayami .solution {
	font-size:4rem;
	font-weight:900;
	text-align: center;
	padding:40px 0;
}

/* yellow */
.yellow {
	background:#FFC900;
	padding:100px 0;
}
.yellow .left {
	width:38%;
}
.yellow .right {
	width:60%;
}
.yellow .right .prof1 {
	font-size:2.6rem;
	font-weight:900;
}
.yellow .right h2 {
	display: block;
	font-size:5.4rem;
	font-weight:900;
}
.yellow .right .prof2 {
	font-size:1.8rem;
	line-height:1.5em;
	padding:30px 0;
}
.comment {
	width:60%;
}
.yellow h3 {
	display: block;
	text-align: center;
	font-size:3.8rem;
	font-weight:700;
	padding:60px 0 30px;
}
.voice li {
	width:31%;
}

/* keni */
.keni {
	display: block;
	text-align: center;
	font-size:3.8rem;
	font-weight:700;
	color:#79B9C4;
	padding:100px 0 0 0;
}
.manzokudo {
	display: block;
	text-align: center;
	font-weight:900;
}
.manzokudo .js-num {
	font-size:28.5rem;
	line-height:1.2em;
}
.manzokudo .par {
	font-size:14rem;
	font-weight:900;
}
.note {
	text-align: center;
	font-size:1.4rem;
}
.keni_txt {
	font-size:4rem;
	font-weight:700;
	text-align: center;
}

/*鑑定の流れ*/
.flow h3 {
	display: block;
	text-align: center;
	font-size:3.8rem;
	font-weight:700;
	padding:60px 0 30px;
}
.flowbox {
	width:80%;
	margin:0 auto 20px;
}
.flowbox dt {
	width:25%;
	text-align: center;
	font-size:2.6rem;
	font-weight:700;
	font-style:italic;
	padding:23px 0 0 0;
}
.flowbox dd {
	width:75%;
	background:#f2f2f2;
	padding:18px 25px;
	font-size:1.8rem;
	line-height:1.5em;
}
.flowbox:nth-of-type(1) dt {
	background:rgba(255,201,0,0.2);
}
.flowbox:nth-of-type(2) dt {
	background:rgba(255,201,0,0.4);
}
.flowbox:nth-of-type(3) dt {
	background:rgba(255,201,0,0.6);
}
.flowbox:nth-of-type(4) dt {
	background:rgba(255,201,0,0.8);
}
.flowbox:nth-of-type(5) dt {
	background:rgba(255,201,0,1);
}



/* blue */
.blue {
	background:#79B9C4;
	padding:100px 0;
}
.blue h2 {
	display: block;
	font-size:4.8rem;
	font-weight:900;
	color:#FFF;
	text-align: center;
	padding:0 0 30px 0;
}
.faq {
	width:80%;
	margin:0 auto 20px;
}
.faq dt {
	width:100%;
	font-size:2rem;
	font-weight:bold;
	padding:18px 0 18px 42px;
	position: relative;
	color:#FFF;
	border-bottom:1px solid #FFF;
}
.faq dt::before {
	content:'\f059';
	font-family:"font Awesome 5 free";
	position: absolute;
	top:50%;
	left:0;
	font-size:32px;
	color:#FFF;
	margin:-0.5em 0 0 0;
}
.faq dd {
	width:100%;
	font-size:1.8rem;
	line-height:1.8em;
	padding:18px 0 18px 42px;
	position: relative;
	color:#FFF;
}
.faq dd::before {
	content:'A';
	position: absolute;
	top:0.5em;
	left:7px;
	font-size:32px;
	color:#FFF;
}

.mainbtn {
	display: block;
	width:600px;
	margin:50px auto;
	text-align: center;
	padding:25px 0;
	background:#FFC900;
	font-size:3rem;
	color:#000;
	font-weight:900;
	border-radius:4px;
}
.mainbtn:hover {
	background:#FF8500;
}



.ticket_grid {
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:20px;
	margin:100px auto 0;
}
.ticket_box {
	padding:20px;
	position: relative;
}
.ticket_box.recommend {
	border:4px solid rgba(255,200,0,1);
}
.ticket_box.recommend::before {
	position: absolute;
	top:-55px;
	left:-4px;
	content:'初回限定';
	font-size:1.8rem;
	height:40px;
	padding:5px 15px;
	background:rgba(255,200,0,1);
}
.ticket_box.recommend::after {
	position: absolute;
	top:-55px;
	left:110px;
	content:'おすすめ';
	font-size:1.8rem;
	height:40px;
	padding:5px 15px;
	background: rgba(255,200,0,1);
}
.ticket_box .thumb {
	perspective: 1000px;
}
.ticket_box .thumb img {
	-webkit-transition: all .4s ease;
	   -moz-transition: all .4s ease;
	    -ms-transition: all .4s ease;
	     -o-transition: all .4s ease;
	        transition: all .4s ease;
}
.ticket_box.recommend .thumb {
	position: relative;
}
.ticket_box p {
	color:#FFF;
	font-size:1.4rem;
	line-height:1.5em;
	padding:20px 0;
	text-align: center;
	-webkit-transition: all .4s ease;
	   -moz-transition: all .4s ease;
	    -ms-transition: all .4s ease;
	     -o-transition: all .4s ease;
	        transition: all .4s ease;
}
.ticket_box p span {
	font-size:2rem;
}
.ticket_box:hover p {
	letter-spacing:0.1em;
}
.ticket_box:hover .thumb img {
	-webkit-transform: rotateX(-6deg) rotateY(-10deg);
	   -moz-transform: rotateX(-6deg) rotateY(-10deg);
	    -ms-transform: rotateX(-6deg) rotateY(-10deg);
	     -o-transform: rotateX(-6deg) rotateY(-10deg);
	        transform: rotateX(-6deg) rotateY(-10deg);
}

/* =footer
-------------------------------------------------------------- */
footer .social {
	padding:100px 0 0 0;
	-webkit-justify-content:center;
	-moz-justify-content:center;
	-ms-justify-content:center;
	justify-content:center;
}
footer .social li {
	padding:0 15px;
}
footer .social a {
	display: block;
	font-size:32px;
	color:#000;
}
.copyright {
	font-size:12px;
	color:#000;
	padding:50px 0 100px;
	text-align: center;
}
.copyright a {
	color:#000;
}
.foot_logo {
	width:40%;
	margin:0 auto;
}
.foot_logo svg {
	fill:#000;
}
#pagetop {
	position: fixed;
	z-index:6000;
	bottom:10px;
	right:8px;
	width:48px;
	height:48px;
	padding:17px 0 0 0;
	color:#333;
	text-align: center;
	border-radius:50%;
	background:#eee;
	font-size:14px;
}
.grecaptcha-badge { visibility: hidden; }
.bnr_foot {
	display:none;
}