@charset "UTF-8";

.container{
	width:690rem;
	position:relative;
	margin:0 auto;
}

/* --------------------------------------------------
menu
-------------------------------------------------- */
#nav_toggle {
	position: fixed;
	z-index: 7000;
	width:48rem;
	height:37rem;
	right:30rem;
	top:30rem;
}

#nav_toggle span {
	position: absolute;
	left: 0;
	right:0;
	margin:auto;
	width:40rem;
	height: 2px;
	background-color: #fff;
	transition: all 0.6s;
}

#nav_toggle span:nth-of-type(1) {
  top: 0;
}

#nav_toggle span:nth-of-type(2) {
  top: 18rem;
}

#nav_toggle span:nth-of-type(3) {
  bottom: 0;
}

.open #nav_toggle span:nth-of-type(1) {
	width:48rem;
  transform: translateY(17rem) rotate(-43deg);
}

.open #nav_toggle span:nth-of-type(2) {
  opacity: 0;
}

.open #nav_toggle span:nth-of-type(3) {
	width:48rem;
  transform: translateY(-17rem) rotate(43deg);
}

@media print{
	#sidebar{
		display: none;
	}
}

#sidebar {
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 5000;
  background: rgba(0, 0, 0, 0.95);
	right:-110%;
	transition: all 0.6s;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
}

#global-nav{
	width: 100%;
	height:100%;
	position:relative;
	transition: all 0.6s;
	z-index:10;
}

.open #sidebar{
	right: 0;
}

#global-nav p{
	width:490rem;
	margin:0 auto;
	padding-top:150rem;
}

#global-nav ul.navi_list{
	width:500rem;
	margin:0 auto 50rem;
  justify-content: start;
  align-items: start;
	display: flex;
	flex-wrap: wrap;
	padding:70rem 0 30rem;
	border-bottom:2px solid #4c4c4c;
}

#global-nav ul.navi_list li{
	width:100%;
	margin-bottom:40rem;
}

#global-nav ul.navi_list li a,
#global-nav ul.navi_list li span{
	display:block;
}

#global-nav ul.navi_list li:nth-child(1) a{
	width:90rem;
	margin:0 auto;
}

#global-nav ul.navi_list li:nth-child(2) span{
	width:130rem;
	margin:0 auto;
}

#global-nav ul.navi_list li:nth-child(3) a{
	width:225rem;
	margin:0 auto;
}

#global-nav ul.navi_list li:nth-child(4) a{
	width:100rem;
	margin:0 auto;
}

#global-nav ul.navi_list li:nth-child(5) a{
	width:284rem;
	margin:0 auto;
}

#global-nav ul.navi_list li:nth-child(6) a{
	width:93rem;
	margin:0 auto;
}

#global-nav ul.navi_list li:nth-child(7) a{
	width:100rem;
	margin:0 auto;
}

#global-nav ul.navi_list li:nth-child(8) a{
	width:134rem;
	margin:0 auto;
}

#global-nav #navi_sns {
	width:100%;
	position:relative;
	text-align:center;
	padding-bottom:300rem;
	z-index:10;
}

#global-nav ul.navi_sns_inner {
  display: inline-flex;
  align-items: center;
  gap: 50rem;
  position: relative;
	margin:0 auto;
}

#global-nav ul.navi_sns_inner li:nth-child(1){
	width:210rem;
}

#global-nav ul.navi_sns_inner li:nth-child(2),
#global-nav ul.navi_sns_inner li:nth-child(3){
	width:60rem;
}

#global-nav ul.navi_sns_inner li:nth-child(2) a,
#global-nav ul.navi_sns_inner li:nth-child(3) a{
	display:block;
}

#sidebar .tape{
	overflow:hidden;
	z-index:1;
	position:fixed;
	right:-110%;
	bottom:0;
	transition: right 0.6s ease;
}

.open #sidebar .tape {
	right: 0;
}










#bg{
	width:100%;
	height:100vh;
	position:fixed;
	background: url(../img/comment_bg.jpg) no-repeat center top #000000;
	background-size: 100% auto;
	z-index:0;
}

/* --------------------------------------------------
p-top
-------------------------------------------------- */
.p-top {
  position: relative;
	z-index:10;
}

h1.logo{
	width:400rem;
	margin:0 auto;
	position:relative;
	padding-top:100rem;
}

h2.title{
	width:400rem;
	margin:20rem auto 0;
	position:relative;
}

ul.global_navi {
	width:580rem;
  display: flex;
  gap: 15rem;
  position: absolute;
	right: 210rem;;
  top: 25rem;
	z-index:100;
}

ul.global_navi li a,
ul.global_navi li span{
	display: block;
	height:20rem;
}

ul.global_navi li:nth-child(1) a,
ul.global_navi li:nth-child(1) span{
	width:42rem;
}

ul.global_navi li:nth-child(2) a,
ul.global_navi li:nth-child(2) span{
	width:63rem;
}

ul.global_navi li:nth-child(3) a,
ul.global_navi li:nth-child(3) span{
	width:112rem;
}

ul.global_navi li:nth-child(4) a,
ul.global_navi li:nth-child(4) span{
	width:50rem;
}

ul.global_navi li:nth-child(5) a,
ul.global_navi li:nth-child(5) span{
	width:142rem;
}

ul.global_navi li:nth-child(6) a,
ul.global_navi li:nth-child(6) span{
	width:46.5rem;
}

ul.global_navi li:nth-child(7) a,
ul.global_navi li:nth-child(7) span{
	width:50rem;
}

ul.global_navi li:nth-child(8) a,
ul.global_navi li:nth-child(8) span{
	width:67rem;
}

ul.sns {
	width:60rem;
	display:flex;
  gap: 15rem;
  position: absolute;
  top: 25rem;
	right:30rem;
	z-index:100;
}

ul.sns li{
  width:20rem;
}

ul.sns li a{
	display:block;
}


/* --------------------------------------------------
comment_block
-------------------------------------------------- */
#comment_block{
	width:650rem;
	margin:0 auto;
	position:relative;
	color:#fff;
}

#comment_block p.omit{
	font-size:16rem;
	text-align:right;
	padding:30rem 0 50rem;
}

#comment_block ul{
	width:650rem;
	margin:0 auto;
	display: flex;
  justify-content: start;
  align-items: stretch;
	flex-wrap: wrap;
	position:relative;
}

#comment_block ul li{
	width:650rem;
	margin-bottom:90rem;
	position:relative;
}

#comment_block ul li h3{
	font-size:40rem;
	font-weight:600;
	line-height:1.7;
}

#comment_block ul li h4{
	font-size:25rem;
	font-weight:400;
	line-height:1.7;
}

#comment_block ul li p{
	border-top:2px solid #c9151e;
	font-size:26rem;
	font-weight:400;
	line-height:1.8;
	margin-top:15rem;
	padding-top:15rem;
}

#comment_block p.copyright{
	font-size:16rem;
	text-align:center;
	padding:30rem 0 90rem;
}


/*--------------------------------------
gototop
----------------------------------------*/
#gototop,
#gototop p{
	width:50rem;
	height:50rem;
}

#gototop{
	position:fixed;
	z-index:1000;
	right:0;
	bottom:70rem;
}

#gototop a{
	display:block;
}

#gototop p{
	position:absolute;
	right:-150rem;
	top:0;
	transition:0.6s;
}

#gototop p:hover{
	opacity:0.6;
	cursor:pointer;
}

#gototop.open p{
	right:20rem;
}


/* --------------------------------------------------
animation
-------------------------------------------------- */

.c-loader {
  opacity: 1;
}

.is-loaded .c-loader {
  pointer-events: none;
  opacity: 0;
  transition: opacity 1s 1s;
}

@keyframes main_blur {
  0% {
	  opacity: 0;
    filter: blur(80rem);
  }
  100% {
	  opacity: 1;
    filter: blur(0);
  }
}

@keyframes blur {
  0% {
	  opacity: 0;
    filter: blur(40rem);
  }
  100% {
	  opacity: 1;
    filter: blur(0);
  }
}

@keyframes  scale_img {
	0% {
		opacity:0;
		transform: scale(1.4);
	}
	100% {
		opacity:1;
		transform: scale(1);
	}
}

@keyframes  scale_img2 {
	0% {
		opacity:0;
		transform: scale(0.6);
	}
	100% {
		opacity:1;
		transform: scale(1);
	}
}

@keyframes  scaleX {
	0% {
		opacity:0;
		transform: scale(1.4 , 1);
	}
	100% {
		opacity:1;
		transform: scale(1, 1);
	}
}

@keyframes  scaleY {
	0% {
		opacity:0;
		transform: scale(1 , 1.4);
	}
	100% {
		opacity:1;
		transform: scale(1, 1);
	}
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translateY(-60rem);
    transform: translateY(-60rem);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes maskIn {
  0% {
    clip-path: inset(0 100% 0 0);
  }
  100% {
    clip-path: inset(-10px);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translateY(30rem);
    transform: translateY(30rem);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

h1,
h2,
#comment_block{
	opacity:0;
}


.is-loaded h1{
  animation: scale_img 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.0s forwards;
}

.is-loaded h2{
  animation: scale_img 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.4s forwards;
}

.is-loaded #comment_block{
  animation: fadeInUp 1.6s cubic-bezier(0.19, 1, 0.22, 1) 2.0s forwards;
}
