html { 
	font-size: 62.5%; /* 10px */
	user-select: none;
	-webkit-text-size-adjust: 100%;
}
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
-------------------------------------------------------------- */
.pc {
	display:none;
}
.pctablet {
	display:none;
}
.tablet {
	display:none;
}

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

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

/* =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:84px;
	text-align: center;
	margin:0 auto;
	padding:15px 0;
}
header .menubtn {
	position: fixed;
	z-index:500;
	top:15px;
	left:15px;
	width:60px;
	height:32px;
	cursor: pointer;
}
header .menubtn .line1 {
	position: absolute;
	top:50%;
	left:50%;
	width:32px;
	height:1px;
	margin:-5px 0 0 -16px;
	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:32px;
	height:1px;
	margin:3px 0 0 -16px;
	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 -16px;
	-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 -16px;
	-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:12px;
	left:20px;
	font-size:32px;
	color:#000;
}
header .headbtn .h_insta {
	display: block;
	position: absolute;
	top:12px;
	left:60px;
	font-size:32px;
	color:#000;
}
header .headbtn .h_ec {
	display:none;
}

.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 {
	overflow:auto;
	-webkit-overflow-scrolling:touch;
}
.menulist .flex {
	width:320%;
	padding:30px 0;
	-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 10px;
}
.menulist .thumb {
	height:84vw;
}
.menulist .thumb img {
	width:auto;
	height:84vw;
	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:1.6rem;
	color:#FFF;
	text-align: center;
	padding:18px 0;
}
.menu_txt {
	font-size:1.2rem;
	color:#FFF;
	text-align: center;
}
.menusns {
	width:100%;
	position: relative;
	padding:40px 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:300px;
	left:50%;
	width:200%;
	height:500px;
	background:#79B9C4;
	-webkit-transform: translateX(-50%) rotate(-12deg);
	   -moz-transform: translateX(-50%) rotate(-12deg);
	    -ms-transform: translateX(-50%) rotate(-12deg);
	     -o-transform: translateX(-50%) rotate(-12deg);
	        transform: translateX(-50%) rotate(-12deg);
}
.kv .contents {
	position: relative;
	z-index:5;
}
.kv .left {
	width:90%;
	margin:0 auto;
	text-align: center;
}
.kv .tossy {
	width:90%;
	padding:20px 0 0 0;
	margin:0 auto;
	position: relative;
}
.kv h2 {
	display: block;
	font-size:3.6rem;
	line-height:1.4em;
	font-weight:900;
	padding:80px 0 0 0;
}
.kv .desc {
	font-size:2rem;
	line-height:1.5em;
	padding:10px 0 0 0;
}
.kv .monitor {
	width:90%;
	margin:30px auto 0;
}
.kv .label1 {
	width:48%;
}
.kv .label2 {
	width:48%;
}
.kv .offer {
	width:80%;
	margin:0 auto;
	line-height:1;
	text-align: center;
	padding:20px 0 0 0;
}
.kv .offer .offer1 {
	font-size:3.4rem;
	font-weight:900;
	color:#FFF;
	text-align: center;
}
.kv .offer .offer2 {
	font-size:2rem;
	font-weight:700;
	text-align: center;
	color:#FFF;
	padding:14px 0;
}
.kv .offer .offer3 {
	font-size:7rem;
	font-weight:900;
	color:#FFF;
	padding:0 0 30px 0;
	text-align: center;
}
.kv .offer .offer3 span {
	font-size:2.5rem;
}
.kv .offer .offer4 {
	font-size:1.7rem;
	font-weight:500;
	color:#FFC900;
	padding:16px 0;
	text-align: center;
}
.btn {
	display: block;
	width:90%;
	background:#FFC900;
	color:#000;
	text-align: center;
	padding:18px 0;
	font-size:2.6rem;
	font-weight:bold;
	margin:10px 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:100px 0 0 0;
}
.hash {
	font-size:3.8rem;
	font-weight:900;
	text-align: center;
	display: block;
	padding:20px 0;
}
.nayami h3 {
	font-size:2rem;
	font-weight:700;
	color:#79B9C4;
	text-align: center;
}
.nayami .flex {
	width:100%;
	margin:0 auto;
	padding:40px 0 0;
}
.nayami .left {
	order:1;
	width:90%;
	margin:0 auto;
}
.nayami .right {
	order:0;
	width:45%;
	margin:0 auto;
}
.nayami ul {
	padding:20px 0 0 0;
}
.nayami li {
	font-size:1.7rem;
	padding:10px 0;
	margin:0 0 0 25px;
	list-style:square;
}
.nayami .solution {
	font-size:2.2rem;
	font-weight:900;
	text-align: center;
	padding:20px 0 50px;
}

/* yellow */
.yellow {
	background:#FFC900;
	padding:40px 7.5%;
}
.yellow .prof1 {
	font-size:2rem;
	font-weight:900;
}
.yellow h2 {
	display: block;
	font-size:3.6rem;
	font-weight:900;
}
.yellow .prof2 {
	font-size:1.6rem;
	line-height:1.5em;
	padding:20px 0;
}
.yellow .comment {
	padding:20px 0 0 0;
}
.yellow h3 {
	display: block;
	text-align: center;
	font-size:2.2rem;
	font-weight:700;
	padding:60px 0 30px;
}
.voice {
	width:100%;
	overflow:auto;
	-webkit-overflow-scrolling:touch;
}
.voice ul {
	width:260%;
}
.voice li {
	width:32%;
}

/* keni */
.keni {
	display: block;
	text-align: center;
	font-size:2.4rem;
	font-weight:700;
	color:#79B9C4;
	padding:50px 0 0 0;
}
.manzokudo {
	display: block;
	text-align: center;
	font-weight:900;
}
.manzokudo .js-num {
	font-size:14.3rem;
	line-height:1.2em;
}
.manzokudo.kensu .js-num {
	font-size:10rem;
}
.manzokudo .par {
	font-size:8rem;
	font-weight:900;
}
.manzokudo.kensu .par {
	font-size:4rem;
}
.note {
	text-align: center;
	font-size:1.4rem;
}
.keni_txt {
	padding:20px 0 0 0;
	font-size:2.4rem;
	font-weight:700;
	text-align: center;
}


/*鑑定の流れ*/
.flow h3 {
	display: block;
	text-align: center;
	font-size:2.2rem;
	font-weight:700;
	padding:60px 0 30px;
}
.flowbox {
	width:90%;
	margin:0 auto 20px;
}
.flowbox dt {
	width:40%;
	padding:10px 0;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align: center;
	font-size:2.2rem;
	font-weight:700;
	font-style:italic;
}
.flowbox dd {
	width:100%;
	background:#f2f2f2;
	padding:18px 25px;
	font-size:1.6rem;
	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:40px 7.5%;
}
.blue h2 {
	display: block;
	font-size:2.2rem;
	font-weight:900;
	color:#FFF;
	text-align: center;
}

.faq {
	width:100%;
	margin:0 auto 20px;
}
.faq dt {
	width:100%;
	font-size:1.6rem;
	font-weight:bold;
	padding:18px 0 18px 34px;
	position: relative;
	color:#FFF;
	border-bottom:1px solid #FFF;
}
.faq dt::before {
	content:'\f059';
	font-family:"font Awesome 5 free";
	position: absolute;
	top:0.75em;
	left:0;
	font-size:24px;
	color:#FFF;
}
.faq dd {
	width:100%;
	font-size:1.6rem;
	line-height:1.8em;
	padding:18px 0 18px 34px;
	position: relative;
	color:#FFF;
}
.faq dd::before {
	content:'A';
	position: absolute;
	top:0.75em;
	left:7px;
	font-size:24px;
	color:#FFF;
}

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



.ticket_grid {
	width:85%;
	display:grid;
	grid-template-columns:repeat(1, 1fr);
	gap:0;
	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.5rem;
	height:36px;
	padding:5px 15px;
	background:rgba(255,200,0,1);
}
.ticket_box.recommend::after {
	position: absolute;
	top:-55px;
	left:95px;
	content:'おすすめ';
	font-size:1.5rem;
	height:36px;
	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;
}



/* =footer
-------------------------------------------------------------- */
footer {
	padding:0 0 50px 0;
}
footer .social {
	padding:40px 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 40px;
	text-align: center;
}
.copyright a {
	color:#000;
}
.foot_logo {
	width:60%;
	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:block;
	position: fixed;
	z-index:100;
	bottom:0;
	left:0;
	width:100%;
}