@charset "utf-8";
/***************************************************************************************************
 default.css
 ***************************************************************************************************/
/*
font-family: 'Noto Sans JP', sans-serif;
*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap');
/*
font-family: 'Roboto Mono', monospace;
*/
@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@700&display=swap');
/*
font-family: 'Hind Guntur', sans-serif;
*/
@import url('https://fonts.googleapis.com/css2?family=Hind+Guntur:wght@500&display=swap');
/*
*/
*, *::before, *::after {
	position:relative;

	margin: 0;
	padding: 0;
	box-sizing: border-box;

	border: 0;
	border-style: none;
	outline: 0;

	background: none;
	background-color: transparent;
	background-repeat: no-repeat;

	text-decoration: none;
	font-size: 14px;
	line-height: 1.75;
	letter-spacing: .04em;
	font-weight:400;
	color: #010101;
	font-family: 'Noto Sans JP', sans-serif;

	/* text-align: left; */
	/* word-break: break-all; */

	/* -webkit-font-smoothing: antialiased; */
	/* text-rendering: optimizeSpeed; */

  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
/* table {
	border-collapse: collapse;
	border-spacing: 0;
	border: none;
} */
input::-ms-clear {
	visibility: hidden
}
/*
*/
:root {
	--tgt_wid_1: 84%;
	--tgt_wid_2: 86%;

	--max_wid_1: 1300px;
	--max_wid_2: 600px;
}
/*
*/
html {
	width: 100%;
	height: 100%;
}
body {
	width: 100%;
	height: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	text-align: left;
}
#pagetop {
	width: 100%;
	height: 100%;
}
#pagetop.disable {
	pointer-events: none;
}
.pagebody {
	width:100%;
	height: auto;
	overflow:hidden;
	text-align: left;
}
/*
*/
#header {
	position:fixed;
	width:100%;
	height:100px;
	left:0;
	top:0;
	z-index: 1000000;
}
#header #header_input {
	display: none;
}
#header::before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	left:0;
	top:0;
	pointer-events: none;
	/* transform:translateY(-100%); */

	opacity:0;
}
#header.bk_show::before {
	opacity:1;
	transform:translateY(0);
	transition:
	opacity .3s ease-out 0s,
	transform .2s ease-out 0s,
	background-color .2s ease-out 0s;
}
#header.bk_hide::before {
	opacity:0;
	transform:translateY(-100%);
	transition:
	opacity .2s ease-out 0s,
	transform .3s ease-out 0s,
	background-color .2s ease-out 0s;
}
/*  */
#header .hd_blk_1 {
	width: 94%;
	max-width: calc(1300px * (94 / 88));
	height:100%;
	margin: auto;
}
/*  */
#header .hd_blk_1_1 {
	width:100%;
	height:100%;
	z-index: 2;
}
#header .hd_blk_1_1 h1 {
	height:100%;
}
#header .hd_blk_1_1 h1 a {
	display: flex;
	width:220px;
	height:100%;
}
#header .hd_blk_1_1 h1 a span:nth-of-type(1) {
	display: block;
}
#header .hd_blk_1_1 h1 a span:nth-of-type(1) img {
	display: block;
	left:0;
	top:50%;
	width:55px;
	transform:translateY(-50%);
}
#header .hd_blk_1_1 h1 a span:nth-of-type(2) {
	display: block;
	padding: 0 0 0 25px;
}
#header .hd_blk_1_1 h1 a span:nth-of-type(2) span {
	display: block;
	left:0;
	top:50%;
	transform:translateY(-50%);
	font-size: 15px;
	line-height: 1.25;
	font-family: 'Roboto Mono', monospace;
	white-space: nowrap;
}
/*  */
#header .hd_blk_1_2 { 
	position: absolute;
	left:100%;
	top:0;
	z-index: 3;
}
#header .hd_blk_1_2 .btn_menu {
	position:absolute;
	left:-100px;
	top:30px;
	display: block;
	border-radius: 18px;
	width:100px;
	height: 35px;
	background-color: #0c0c0c;
	transition:background-color .2s ease-out 0s;
	z-index: 3;
}
#header #header_input:checked ~ .hd_blk_1_2 .btn_menu {
	background-color: #ffffff;
}
#header .hd_blk_1_2 .btn_menu label {
	display: block;
	width:100%;
	height:100%;
	cursor: pointer;
}
#header .hd_blk_1_2 .btn_menu label span {
	display: block;
	font-size: 19px;
	line-height:41px;
	color:#ffffff;
	font-family: 'Hind Guntur', sans-serif;
	text-align: center;
	width:100%;
	height:100%;
}
#header #header_input:checked ~ .hd_blk_1_2 .btn_menu label span {
	color: #0c0c0c;
}
#header .hd_blk_1_2 .blk_menu {
	position: absolute;
	/* left:max(-300px , calc(-215px - 2vw)); */
	/* left:-257.5px; */
	left:min(-257.5px , calc(-300px + 2.5vw));
	top:10px;
	/* width:min(400px, calc(215px + 4vw)); */
	width:300px;
	opacity: 0;
	z-index: 2;
	padding:0 0 10px 0;
	height: 0;
	overflow-y: hidden;
	transition:opacity 0s .4s, height 0s .4s;
	pointer-events: none;

}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu {
	opacity: 1;
	transition:none;
	height: calc(100vh - 10px);
	overflow-y: auto;
	pointer-events: auto;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1 {
	padding:60px 0 0 0;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1 {
	pointer-events: auto;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1::before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	left:0;
	top:0;
	background-color: #0c0c0c;
	border-radius: 20px;
	transform: scale(.8);
	opacity:0;
	transition:
	opacity .3s cubic-bezier(0.215, 0.610, 0.355, 1.000) 0s, 
	transform .3s cubic-bezier(0.215, 0.610, 0.355, 1.000) 0s;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1::before {
	transform: scale(1);
	opacity:1;
	pointer-events: auto;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 {
	padding:min(30px, 4vh) 12% 0 12%;
	opacity: 0;
	transition: opacity .2s ease-out 0s;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1_1 {
	opacity:1;
	transition: opacity .2s ease-out .2s;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul {
	width:100%;
	list-style: none;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li {
	width:100%;
	display: block;
	padding:0 0 max(min(30px, 1.5vh), 10px) 0;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li a {
	display:block;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li a br {
	display:none;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li a span:nth-of-type(1) {
	display:block;
	color:#ffffff;
	font-size: 13px;
	line-height: 1;
	font-weight: 300;
	white-space: nowrap;
	width: auto;
	height:20px;
	overflow: hidden;
	padding:10px 0 0 0;
	transition: padding 0s .2s;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li a span:nth-of-type(1) {
	padding:0 0 0 0;
	transition: padding .2s ease-out .2s;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li a span:nth-of-type(2) {
	display:block;
	color:#ffffff;
	font-size: 18px;
	line-height: 1;
	font-weight: 700;
	white-space: nowrap;
	width:auto;
	height: 30px;
	padding:20px 0 0 0;
	overflow: hidden;
	transition: padding 0s .2s;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li a span:nth-of-type(2) {
	padding:0 0 0 0;
	transition: padding .4s ease-out .2s;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li a span:nth-of-type(2)::after {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 1px;
	left:0;
	top:calc(100% - 3px);
	background-color: #ffffff;
	transform-origin: 0 0;
	transform: scaleX(0);
	transition: transform .2s ease-out 0s;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li.active a span:nth-of-type(2)::after {
	transform: scaleX(1);
	transition: transform .2s ease-out .3s;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li a.nm_hover span:nth-of-type(2)::after {
	transform: scaleX(1);
	transition: transform .3s ease-out 0s;
}
/*  */
#header .hd_blk_1_2 .blk_menu .blk_mm_1_2 {
	padding:20px 0 40px 0;
	opacity: 0;
	transition: opacity .2s ease-out 0s;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1_2 {
	opacity:1;
	transition: opacity .2s ease-out .2s;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_2.disable {
	opacity: 0 !important;
	pointer-events: none !important;
	padding:20px 0 0 0 !important;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_2 ul {
	display: flex;
	width:55%;
	justify-content: space-between;
	margin: auto;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_2 ul li {
	display: block;
	width:22%;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_2 ul li::after {
	display: block;
	content: '';
	left:0;
	top:0;
	padding:100% 0 0 0;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_2 ul li a {
	position: absolute;
	display: block;
	left:0;
	top:0;
	width:100%;
	border-radius: 50%;
	background-color: #ffffff;
	transform:translateY(20px);
	transition: transform 0s  .2s;
	opacity: 0;
	pointer-events: auto;
	z-index: 3;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1_2 ul li a {
	transform:translateY(0);
	opacity:1;
	transition: transform .4s ease-out .2s, opacity .4s ease-out .2s;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1_2 ul li:nth-of-type(1) a {
	transition-delay: .2s, .2s;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1_2 ul li:nth-of-type(2) a {
	transition-delay: .3s, .3s;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu .blk_mm_1_2 ul li:nth-of-type(3) a {
	transition-delay: .4s, .4s;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_2 ul li a img {
	display: block;
	width:100%;
	height:auto;
	left:0;
	top:0;
}
#header .hd_blk_1_2 .blk_mm_bk {
	display: none;
	z-index: 1;
}
/*  */
#header .hd_blk_1_3 {
	position:absolute;
	left:calc(100% - 215px);
	top:30px;
	z-index: 4;
}
#header .hd_blk_1_3 a {
	display: block;
	border-radius: 18px;
	width:100px;
	height: 35px;
	font-size: 20px;
	line-height:41px;
	color:#ffffff;
	font-family: 'Hind Guntur', sans-serif;
	background-image:linear-gradient(90deg, #e9f584 0%, #56f291 23%, #38baf6 100%);
	
	text-align: center;
}
/*
*/
#footer {
	width:100%;
	background-color: #000000;
	height:960px;
	overflow: hidden;
	z-index: 10000;
}
/*  */
#footer .ft_blk_1 {
	width: var(--tgt_wid_1);
	max-width: var(--max_wid_1);
	margin: auto;
	height:100%;
}
/*  */
#footer h4 {
	position: absolute;
	left:0;
	top:435px;
}
#footer h4 span:nth-of-type(1) {
	position:absolute;
	display:block;
	width:130px;
	left:0;
	top:0;
}
#footer h4 span:nth-of-type(1) img {
	display:block;
	width:100%;
	height:auto;
}
#footer h4 span:nth-of-type(2) {
	position:absolute;
	display:block;
	left:160px;
	top:0;
	color:#ffffff;
	font-size:18px;
	line-height: 1.75;
	letter-spacing: .1em;
	font-weight: 500;
	white-space: nowrap;
	transform-origin: 0 100%;
	transform: translateY(-100%) rotate(90deg);
}
/*  */
#footer .ft_blk_1_1 {
	position:absolute;
	left:0;
	top:665px;
}
#footer .ft_blk_1_1 ul li {
	padding:0 0 10px 0;
}
#footer .ft_blk_1_1 ul li a {
	display: block;
	color:#ffffff;
	font-size: 18px;
	line-height: 1;
	white-space: nowrap;
	padding:10px 10px 10px 35px;
}
#footer .ft_blk_1_1 ul li a::before {
	position: absolute;
	display: block;
	content: '';
	left:0;
	top:50%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 9px 0 9px 16px;
	border-color: transparent transparent transparent #ffffff;
}
/*  */
#footer .ft_blk_1_2 {
	position:absolute;
	left:100%;
	top:435px;
}
#footer .ft_blk_1_2.disable {
	display:none !important;
}
#footer .ft_blk_1_2 ul {
	transform: translateX(-100%);
}
#footer .ft_blk_1_2 ul li {
	display: block;
	width:46px;
	padding:0 0 20px 0;
}
#footer .ft_blk_1_2 ul li a {
	display: block;
	width:100%;
	border-radius: 50%;
	background-color: #ffffff;
}
#footer .ft_blk_1_2 ul li a img {
	display: block;
	width:100%;
	height: auto;
}
/*  */
#footer .ft_blk_1_3 {
	position: absolute;
	left:50%;
	top:235px;
	width:100vw;
	height:85px;
	border-top:1px solid #ffffff;
	/* background-image: linear-gradient(90deg, #22dcfd, #5865b9); */
	background-image:linear-gradient(90deg, #e9f584 0%, #56f291 23%, #38baf6 100%);
	transform: translateX(-50%);
}
#footer .ft_blk_1_3 span:nth-of-type(1) {
	position:absolute;
	display:block;
	color:#ffffff;
	line-height: 1;
	font-size:30px;
	font-weight: 500;
	left:calc(50% - 15px);
	top:25px;
	transform:translateX(-100%);
}
#footer .ft_blk_1_3 span:nth-of-type(2) {
	position:absolute;
	display:block;
	width:160px;
	left:calc(50% + 15px);
	top:22px;
}
#footer .ft_blk_1_3 span:nth-of-type(2) img {
	display:block;
	width:100%;
	height:auto;
}
/*  */
#footer .ft_blk_1_4 {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:235px;

}
#footer .ft_blk_1_4::before {
	position: absolute;
	display: block;
	content: '';
	width: 100vw;
	height: 100%;
	left:50%;
	top:0;
  background-image: linear-gradient(90deg, #facc22, #f83600);
	transform: translateX(-50%);
}

#footer .ft_blk_1_4 > section {
	width:100%;
}
#footer .ft_blk_1_4 .gsty_tit_1 span:nth-of-type(1) {
  width:120px;
}
#footer .ft_blk_1_4 .gsty_tit_1 span:nth-of-type(2) {
  color:#ffffff;
}
#footer .ft_blk_1_4 > section > div {
  display:table;
  width:100%;
}
#footer .ft_blk_1_4 > section > div > h3 {
  display:table-cell;
  width:270px;
  padding:80px 0 80px 60px;
  text-align: left;
  vertical-align: middle;
}
#footer .ft_blk_1_4 > section > div > h3.gsty_tit_1 span:nth-of-type(1)::after {
  background-image: url('../images/top_ico_1_2.svg');
}
#footer .ft_blk_1_4 > section > div > p:nth-of-type(1) {
  display:table-cell;
  text-align: center;
  vertical-align: middle;
}
#footer .ft_blk_1_4 > section > div > p:nth-of-type(1) span {
  display: inline-block;
  font-size: 20px;
  line-height: 1.75;
  color:#ffffff;
  text-align: left;
}
#footer .ft_blk_1_4 > section > div > p:nth-of-type(2) {
  display:table-cell;
  width:270px;
}
#footer .ft_blk_1_4 > section > div > p:nth-of-type(2) .gsty_btn_1 {
  left:50%;
  top:50%;
	width:140px;
  height:140px;
  transform:translate(-50%, -50%);
}
#footer .ft_blk_1_4 > section > div > p:nth-of-type(2) .gsty_btn_1::before {
  background-image: none;
  border:2px solid #ffffff;
}
#footer .ft_blk_1_4 > section > div > p:nth-of-type(2) .gsty_btn_1 > span::after {
	background-color: #f83600;
}
/*  */
#footer .ft_blk_1_5 {
	position:absolute;
	top:820px;
	left:100%;
}
#footer .ft_blk_1_5 .gsty_btn_1::before {
  background-image: none;
	border:1px solid #ffffff;
}
#footer .ft_blk_1_5 .gsty_btn_1 > span {
  background-image: url('../images/footer_btn_text_1.svg');
	background-position: 50% 34%;
	background-size: 40px auto;
}
/*  */
#footer .ft_blk_1_6 {
	position: absolute;
	left:0;
	top:855px;
	font-size: 15px;
	line-height: 1;
	white-space: nowrap;
	font-weight: 500;
	color:#ffffff;
	letter-spacing: .1em;
}
/*
*/
#blk_loading {
	position: fixed;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	z-index: 1000010;
	pointer-events: none;	
}
#blk_loading::before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	left:0;
	top:0;
	background-color: #ffffff;
	transform:scaleY(1);
}
#blk_loading.hide::before {
	transform-origin: 0 0;
	transform:scaleY(0);
	transition:
	transform 1s cubic-bezier(0.770, 0.000, 0.175, 1.000) .4s;
}
#blk_loading .blk_loading_1 {
	position: absolute;
	display: block;
	left:50%;
	top:50%;
	transform: translate(-50%, -50%);
}
#blk_loading.hide .blk_loading_1 {
	opacity:0;
	transform:scale(.8);
	transition:
	opacity .4s cubic-bezier(0.215, 0.610, 0.355, 1.000) 0s, 
	transform .4s cubic-bezier(0.215, 0.610, 0.355, 1.000) 0s;
}
/*  */
#blk_loading .blk_logo {
	position: absolute;
	display: block;
	width: 120px;
	height: 120px;
	left:0;
	top:0;
	background-image: url('../images/logo_img_2_1.png');
	background-position: 0 0;
	background-size: 100% auto;
	transform: translate(-50%, -50%) scale(.8);
	transform-origin: 50% 50%;
	opacity:0;
	/* animation:
	kf_loading_1_1 .6s cubic-bezier(0.215, 0.610, 0.355, 1.000) 1s 1 normal forwards,
	kf_loading_1_2 .8s cubic-bezier(0.215, 0.610, 0.355, 1.000) 1.4s 1 normal forwards; */

	animation:
	kf_loading_1_1 .6s cubic-bezier(0.215, 0.610, 0.355, 1.000) 1s 1 normal forwards;
}
/*  */
@keyframes kf_loading_1_1 {
	0% {
		opacity: 0;
		/* transform: translate(-50%, -50%) scale(1.4); */
		transform: translate(-50%, -50%) scale(1.5);
	}
	100% {
		opacity: 1;
		/* transform: translate(-50%, -50%) scale(1.1); */
		transform: translate(-50%, -50%) scale(1);
	}
}
@keyframes kf_loading_1_2 {
	0% {
		transform: translate(-50%, -50%) scale(1.1);
	}
	100% {
		/* transform:translate(calc(-100% - 10px), -50%) scale(1); */
		transform: translate(-50%, -50%) scale(1);
	}
}
#blk_loading .blk_logo .bar {
	position: absolute;
	display: block;
	width:100%;
	height:100%;
	left:100%;
	top:0;
	overflow: hidden;
	transition:width 1s ease-out 0s;
	transform: translateX(-100%);
}
#blk_loading .blk_logo .bar::after {
	position: absolute;
	display: block;
	content: '';
	width:100%;
	height:100%;
	left:0;
	top:0;
	background-image: url('../images/logo_img_2_2.png');
	background-position: 100% 0;
	background-size: auto 100% ;
}
/*  */
/* #blk_loading .blk_text {
	position: absolute;
	left:5px;
	top:0;
	width:180px;
	height:70px;
	transform-origin: 0 50%;
	transform: translate(-20px, -50%) scale(.5);
	opacity: 0;
	animation:	kf_loading_2_1 .6s cubic-bezier(0.215, 0.610, 0.355, 1.000) 1.6s 1 normal forwards;

} */
/*  */
@keyframes kf_loading_2_1 {
	0% {
		opacity: 0;
		transform: translate(-20px, -50%) scale(.5);
	}
	100% {
		opacity: 1;
		transform: translate(0, -50%) scale(1);
	}
}
/* #blk_loading .blk_text::before {
	position: absolute;
	display: block;
	content:'';
	width:calc(100% - 2px);
	height:calc(100% - 2px);
	left:1px;
	top:1px;
	background-color:#cccccc;
	transform-origin: 0 0;
	animation:	kf_loading_3_1 .4s cubic-bezier(0.215, 0.610, 0.355, 1.000) 1.6s 1 normal forwards;

} */
/*  */
@keyframes kf_loading_3_1 {
	0% {
		transform: scaleX(0);
	}
	100% {
		transform: scaleX(1);
	}
}
/* #blk_loading .blk_text .t {
	position: absolute;
	display: block;
	width:100%;
	height: 100%;
	left:0;
	top:0;
	background-image: url('../images/loading_txt_1.svg');
	background-position: 50% 50%;
	background-size: 184px auto;

} */
/* #blk_loading .blk_text .bar {
	position: absolute;
	display: block;
	width:calc(100% - 2px);
	height:calc(100% - 2px);
	left:1px;
	top:1px;
	transform-origin:0 0;
	transform:scaleX(0);
	transition:transform .4s ease-out 0s;
	background-color: #000000;
} */
/*
*/
#scroll_ind {
	position: fixed;
	left:0;
	top:0;
	width:6px;
	height: 100vh;
	background-color: #878787;
	z-index: 1000001000;
	pointer-events: none;
	transition:opacity .6s ease-out 2s;
}
#scroll_ind.disable {
	opacity: 0;
	transition:none;
}
#scroll_ind::after {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100px;
	left:0;
	top:0;
	background-color: #fff100;
}
#scroll_ind > div {
	position: absolute;
	left:0;
	top:100px;
	width:100%;
	height: calc(100% - 100px);
	background-color: #fff100;
	transform-origin: 0 0;
	transform:scaleY(0);
	transition:transform .1s ease-out 0s;
}
/*
*/
.gsty_btn_1 {
  position: absolute;
  /* left:-61px;
  top:-61px; */
  left:-100px;
  top:-50px;
  width:122px;
  height:122px;
  /* border-radius: 50%;
  background-image: linear-gradient(90deg, #414141, #010101); */
}
.gsty_btn_1::before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	left:0;
	top:0;
  border-radius: 50%;
  background-image: linear-gradient(90deg, #414141, #010101);
}
.gsty_btn_1 > span {
  display: block;
  position:absolute;
  left:50%;
  top:0;
  width:64px;
  height:100%;
  background-image: url('../images/top_btn_text_1.svg');
	background-position: 50% 36%;
	background-size: 58px auto;
  transform:translateX(-50%);
}
.gsty_btn_1 > span::before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 1px;
	left:0;
	top:52%;
	background-color: #ffffff;
}
.gsty_btn_1 > span::after {
	position: absolute;
	display: block;
	content: '';
	width: 30px;
	height: 1px;
	left:0;
	top:52%;
	background-color: #333333;
  transform-origin: 0 0;
  transform:scaleX(0);
  animation:kf_gsty_btn_1_aim_1 1.5s ease-out 0s infinite normal both;
}
@keyframes kf_gsty_btn_1_aim_1 {
0% {
  transform:scaleX(0);
  left:0;
}
20% {
  transform:scaleX(1);
  left:5%;
}
97% {
  transform:scaleX(0);
  left:100%;
}
}
.gsty_btn_1 > span > span {
  position: absolute;
  display: block;
  left:50%;
  top:calc(50% + 13px);
  transform:translateX(-50%);
  overflow: hidden;
  padding:0 0 3px 0;
}
.gsty_btn_1 > span > span::after {
  position: absolute;
  display: block;
  content:attr(title);
  left:0;
  top:0;
  color:#ffffff;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
  opacity:0;
	transform:translateY(100%);
	
}
.gsty_btn_1.nm_hover > span > span::after {
  transition: transform .3s ease-out 0s, opacity .3s ease-out 0s;
  opacity:1;
	transform:translateY(0);
}
.gsty_btn_1 > span > span > span {
  display: block;
  color:#ffffff;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
  left:0;
  top:0;
  opacity:1;
}
.gsty_btn_1.nm_hover > span > span > span {
  transition: transform .3s ease-out 0s, opacity .3s ease-out 0s;
  opacity:0;
  transform:translateY(-100%);
	animation: none;
}
/*  */
.nm_tgt_psa .gsty_btn_1::before {
  transform:scale(.8);
  opacity:0;
}
.nm_tgt_psa.psa_show .gsty_btn_1::before {
  animation:kf_psa_1 .4s 0s 1 normal both;
}
.nm_tgt_psa p:nth-of-type(2) .gsty_btn_1 span {
  opacity:0;
}
.nm_tgt_psa.psa_show p:nth-of-type(2) .gsty_btn_1 span {
  animation:kf_psa_4 .4s 0s 1 normal both;
}
.nm_tgt_psa .gsty_btn_1 > span {
  opacity:0;
}
.nm_tgt_psa.psa_show .gsty_btn_1 > span {
  animation:kf_psa_4 .4s 0s 1 normal both;
}
/*
*/
.gsty_tit_1 {
  display: inline-block;
}
.gsty_tit_1 br {
  display: none;
}
.gsty_tit_1 > span:nth-of-type(1) {
  display: block;
}
.gsty_tit_1 > span:nth-of-type(1) > img {
  display: block;
  width:100%;
	height: auto;
}
.gsty_tit_1 > span:nth-of-type(2) {
  display: block;
  font-size: 20px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: .2em;
  color:#32baf8;
  padding:20px 0 0 0;
}
/*  */
.nm_tgt_psa .gsty_tit_1 > span:nth-of-type(1)::after {
	opacity:0;
  transform: translateY(10px);
}
.nm_tgt_psa.psa_show .gsty_tit_1 > span:nth-of-type(1)::after {
  animation:kf_psa_1 .4s .4s 1 normal both;
}
.nm_tgt_psa .gsty_tit_1 > span:nth-of-type(1) img {
	opacity: 0;
  transform: translateY(40px);
}
.nm_tgt_psa.psa_show .gsty_tit_1 > span:nth-of-type(1) img {
  animation:kf_psa_1 .8s 0s 1 normal both;
}
.nm_tgt_psa .gsty_tit_1 > span:nth-of-type(2) {
	opacity: 0;
  transform: translateY(60px);
}
.nm_tgt_psa.psa_show .gsty_tit_1 > span:nth-of-type(2) {
  animation:kf_psa_1 .8s 0s 1 normal both;
}
/*  */
.gsty_tit_1 > span:nth-of-type(1) .ico {
	position: absolute;
	display: block;
	width: 35px;
	height: 43px;
	left:calc(100% + 20px);
	top:-10px;
	overflow: hidden;
}
.gsty_tit_1 > span:nth-of-type(1) .ico span::before {
	position: absolute;
	display: block;
	content:'';
	width: 100%;
	height:100%;
	left:0;
	top:0;
}
.gsty_tit_1 > span:nth-of-type(1) .ico span::after {
	display: block;
	content:'';
	width: 100%;
}
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(1) {
	position: absolute;
	display: block;
	width: 100%;
	height:auto;
	left:0;
	top:calc(100% - 2px);
	transform:translateY(-100%);
}
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(1)::after {
	padding:35% 0 0 0;
}
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(1)::before {
  background-image: url('../images/ico_bud_1.svg');
	background-position: 50% 100%;
	background-size: 100% auto;
}
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(2) {
	position: absolute;
	display: block;
	width: 43%;
	height:auto;
	left:0;
	top:15%;
}
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(2)::after {
	padding:78% 0 0 0;
}
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(2)::before {
  background-image: url('../images/ico_bud_2.svg');
	background-position: 100% 100%;
	background-size: 100% auto;
	transform-origin: 100% 100%;
}
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(3) {
	position: absolute;
	display: block;
	width: 57%;
	height:auto;
	left:43%;
	top:0;
}
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(3)::after {
	padding:71% 0 0 0;
}
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(3)::before {
  background-image: url('../images/ico_bud_3.svg');
	background-position: 0 100%;
	background-size: 100% auto;
	transform-origin: 0 100%;
}
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(4) {
	position: absolute;
	display: block;
	width: 8%;
	height:calc(45% - 2px);
	left:43%;
	top:calc(76% - 2px);
	transform:translateY(-100%);
}
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(4)::after {
	padding:100% 0 0 0;
}
/*  */
.gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(4)::before {
	background-color: #58595b;
	transform-origin: 50% 100%;
}
.nm_tgt_psa .gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(1)::before {
	opacity:0;
	transform:translateY(100%);
}
.nm_tgt_psa.psa_show .gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(1)::before {
  animation:kf_psa_1 .4s .6s 1 normal both;
}
.nm_tgt_psa .gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(2)::before {
	opacity:0;
	transform:translateY(100%) scale(.1) rotate(90deg);
}
.nm_tgt_psa.psa_show .gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(2)::before {
  animation:kf_gsty_tit_1_a1 .6s 1.2s 1 normal both;
}
.nm_tgt_psa .gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(3)::before {
	opacity:0;
	transform:translateY(100%) scale(.1) rotate(-90deg);
}
.nm_tgt_psa.psa_show .gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(3)::before {
  animation:kf_gsty_tit_1_a1 .8s 1s 1 normal both;
}
.nm_tgt_psa .gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(4)::before {
	opacity:0;
	transform:scaleY(0);
}
.nm_tgt_psa.psa_show .gsty_tit_1 > span:nth-of-type(1) .ico span:nth-of-type(4)::before {
  animation:kf_psa_1 .4s 1s 1 normal both;
}
@keyframes kf_gsty_tit_1_a1 {20% {opacity: 1;} 100% {transform: none; opacity:1;}}
/*
*/
.nm_tgt_psa {
	animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
}

/*
*/
.gsty_blk_scroll {
  position:absolute;
}
.gsty_blk_scroll > div {
  position:absolute;
  left:0;
  top:0;
  width:65px;
  height:115px;
  transform:translateX(-100%);
}
.gsty_blk_scroll > div::after {
	position: absolute;
	display: block;
	content: 'Scroll down';
	left:33px;
	top:calc(100% - 3px);
  font-size: 15px;
  line-height:1;
  font-weight: 500;
  white-space: nowrap;
  font-family: 'Hind Guntur', sans-serif;
  transform-origin:0 0;
  transform:rotate(90deg) translateX(-100%) ;
}
.gsty_blk_scroll > div > div {
  position:absolute;
  left:45px;
  top:0;
  width:1px;
  height:100%;
  background-color: #000000;
}
.gsty_blk_scroll > div > div::before {
  position:absolute;
  display:block;
  content:'';
  left:0;
  top:0;
  width:1px;
  height:20px;
  background-color: #ffffff;
  animation:kf_scroll_1 2s ease-out 0s infinite normal both;
  transform-origin: 0 0;
  transform:scaleY(0);
}
@keyframes kf_scroll_1 {
  0% {
    transform:scaleY(0);
    top:0;
  }
  10% {
    transform:scaleY(1);
    top:0;
  }
  95% {
    transform:scaleY(0);
    top:100%;
  }
}
.gsty_blk_scroll > div > div::after {
	position: absolute;
	display: block;
	content: '';
  left:0;
  top:calc(100% - 17px);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 17px 11px 0 0;
	border-color: #000000 transparent transparent transparent;
}
/*
*/
@keyframes kf_psa_1 {
  100% {transform: none; opacity: 1;}
}
@keyframes kf_psa_2 {
  100% { transform: scaleX(0); }
}
@keyframes kf_psa_3_1 {
	0% {
		transform-origin: 0 0;
    transform: scaleX(0);
  }
  100% {
		transform-origin: 0 0;
    transform: scaleX(1);
  }
}
@keyframes kf_psa_3_2 {
	0% {
		transform-origin: 100% 0;
    transform: scaleX(1);
  }
  100% {
		transform-origin: 100% 0;
    transform: scaleX(0);
  }
}
@keyframes kf_psa_4 {
  100% {opacity: 1; }
}

/***************************************************************************************************
 responsive
***************************************************************************************************/
@media screen and (max-width:1000px) {
/*
*/
#header {
	height:60px;
}
/*  */
#header .hd_blk_1 {
	width: 90%;
	max-width: none;
	height:100%;
	margin: auto;
}
/*  */
#header .hd_blk_1_1 h1 a {
	width:130px;
}
#header .hd_blk_1_1 h1 a span:nth-of-type(1) img {
	width:30px;
}
#header .hd_blk_1_1 h1 a span:nth-of-type(2) {
	padding: 0 0 0 13px;
}
#header .hd_blk_1_1 h1 a span:nth-of-type(2) span {
	font-size: 10px;
	line-height: 1.25;
}
/*  */
#header .hd_blk_1_2 .btn_menu {
	left:-70px;
	top:17px;
	border-radius: 15px;
	width:70px;
	height: 26px;
}
#header .hd_blk_1_2 .btn_menu label span {
	font-size: 13px;
	line-height:30px;
	pointer-events: none;
}
#header .hd_blk_1_2 .blk_menu {
	left:calc(-260px + 4vw);
	top:5px;
	width:260px;

	padding:0 0 5px 0;
	-webkit-overflow-scrolling: touch;
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_menu {
	height: calc(100vh - 5px);
	max-height: 560px;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1 {
	padding:45px 0 0 0;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 {
	padding:25px 10% 0 10%;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li {
	padding:0 0 10px 0;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li a span:nth-of-type(1) {
	font-size: 11px;
	height:18px;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li a span:nth-of-type(2) {
	font-size: 16px;
	height: 28px;
	padding:20px 0 0 0;
}
#header .hd_blk_1_2 .blk_menu .blk_mm_1_1 ul li a span:nth-of-type(2)::after {
	top:calc(100% - 4px);
}
/*  */
#header .hd_blk_1_2 .blk_menu .blk_mm_1_2 {
	padding:10px 0 35px 0;
}

/*  */
#header .hd_blk_1_2 .blk_mm_bk {
	position:absolute;
	left:-50vw;
	top:0;
	width:120vw;
	height:100vh;
	z-index: 1;
	display: none;
	transform: translateX(-50%);
}
#header #header_input:checked ~ .hd_blk_1_2 .blk_mm_bk {
	display: block;
}
/*  */
#header .hd_blk_1_3 {
	left:calc(100% - 150px);
	top:17px;
}
#header .hd_blk_1_3 a {
	border-radius: 15px;
	width:70px;
	height: 26px;
	font-size: 13px;
	line-height:30px;
}

/*
*/
#footer {
	height:600px;
}


/*  */
#footer .ft_blk_1 {
	width: var(--tgt_wid_2);
	max-width: none;
}
/*  */
#footer h4 {
	left:5%;
	top:260px;
}
#footer h4 span:nth-of-type(1) {
	position:absolute;
	display:block;
	width:80px;
	left:0;
	top:0;
}
#footer h4 span:nth-of-type(2) {
	left:calc(5% + 90px);
	font-size: 12px;
}
/*  */
#footer .ft_blk_1_1 {
	top:400px;
}
#footer .ft_blk_1_1 ul li {
	padding:0 0 10px 0;
}
#footer .ft_blk_1_1 ul li a {
	font-size: 14px;
	padding:6px 8px 8px 24px;
}
#footer .ft_blk_1_1 ul li a::before {
	border-width: 6px 0 6px 12px;
}
/*  */
#footer .ft_blk_1_2 {
	top:260px;
}
#footer .ft_blk_1_2 ul li {
	width:30px;
	padding:0 0 15px 0;
}
/*  */
#footer .ft_blk_1_3 { 
	position: absolute;
	left:50%;
	top:150px;
	height:60px;
	border-top:1px solid #ffffff;
}
#footer .ft_blk_1_3 span:nth-of-type(1) {
	line-height: 1;
	font-size:20px;
	left:calc(50% - 10px);
	top:18px;
}
#footer .ft_blk_1_3 span:nth-of-type(2) {
	width:110px;
	left:calc(50% + 10px);
	top:18px;
}
#footer .ft_blk_1_3 span:nth-of-type(2) img {
	display:block;
	width:100%;
	height:auto;
}
/*  */
#footer .ft_blk_1_4 {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:150px;
}
#footer .ft_blk_1_4 .gsty_tit_1 span:nth-of-type(1) {
  width:72px;
}
#footer .ft_blk_1_4 > section > div {
  display:block;
}
#footer .ft_blk_1_4 > section > div > h3 {
  display:block;
  width:100%;
  padding:25px 110px 0 0;
  text-align: left;
}
#footer .ft_blk_1_4 > section > div > h3.gsty_tit_1 span:nth-of-type(1)::after {
  background-image: url('../images/top_ico_1_2.svg');
}
#footer .ft_blk_1_4 > section > div > p:nth-of-type(1) {
  display:block;
  width:100%;
  padding:20px 110px 0 0;
  text-align: left;
}
#footer .ft_blk_1_4 > section > div > p:nth-of-type(1) span {
  display: block;
  font-size: min(3.8vw, 14px);
  line-height: 1.5;
}
#footer .ft_blk_1_4 > section > div > p:nth-of-type(2) {
	display: block;
	position: absolute;
	left:calc(100% - 110px);
	width:110px;
	height: 150px;
	top:0;
}
#footer .ft_blk_1_4 > section > div > p:nth-of-type(2) .gsty_btn_1 {
	left:100%;
	top:50%;
	transform: translate(-100%, -50%);
  width:84px;
  height:84px;
	border-width: 1px;
}
/*  */
#footer .ft_blk_1_5 {
	position:absolute;
	top:510px;
	left:100%;
}
#footer .ft_blk_1_5 .gsty_btn_1 > span {
	background-size: 30px auto;
}
/*  */
#footer .ft_blk_1_6 {
	top:560px;
	font-size: 11px;
}

/*  */
#blk_loading .blk_loading_1 {
	transform: scale(.7) translate(-50%, -50%);
}
/*
*/
#scroll_ind {
	width:4px;
}
#scroll_ind::after {
	height: 60px;
}
#scroll_ind > div {
	top:60px;
	height: calc(100% - 60px);
}
/*
*/
.gsty_btn_1 {
  left:-70px;
  top:-43px;
  width:80px;
  height:80px;
}
.gsty_btn_1 > span {
  width:49px;
	background-position: 50% 33%;
	background-size: 43px auto;
}
.gsty_btn_1 > span::before {
	top:50%;
}
.gsty_btn_1 > span::after {
	width: 15px;
	top:50%;
}
.gsty_btn_1 > span > span {
  top:calc(50% + 8px);
  padding:0 0 3px 0;
}
.gsty_btn_1 > span > span::after {
  font-size: 10px;
	letter-spacing: 0;
}

.gsty_btn_1 > span > span > span {
  font-size: 10px;
	letter-spacing: 0;
}
/*
*/
.gsty_tit_1 > span:nth-of-type(2) {
  font-size: 13px;
  padding:10px 0 0 0;
}
/*  */
.gsty_tit_1 > span:nth-of-type(1) .ico {
	/* width: 22px;
	height: 28px; */
	left:calc(100% + 12px);
	top:-8px;
	transform-origin: 0 0;
	transform: scale(.7);
}




/*  */
.gsty_blk_scroll > div {
  height:80px;
}
.gsty_blk_scroll > div::after {
	left:40px;
  top:calc(100% - 3px);
  font-size: 11px;
}
.gsty_blk_scroll > div > div {
  left:50px;
}
.gsty_blk_scroll > div > div::before {
  height:15px;
}
.gsty_blk_scroll > div > div::after {
  top:calc(100% - 14px);
	border-width: 14px 8px 0 0;
}




}
